
Youtube Transcript
- 71 installs
- 15 repo stars
- Updated August 1, 2026
- connorads/dotfiles
This is a copy of youtube-transcript by intellectronica - installs and ranking accrue to the original listing.
Helps with ai & agent building tasks.
About
youtube-transcript is a Claude Code skill for ai & agent building. It helps solo builders move faster with AI-assisted development.
- youtube-transcript
- AI & Agent Building
- AI-coding skill
Youtube Transcript by the numbers
- 71 all-time installs (skills.sh)
- Data as of Aug 2, 2026 (Skillselion catalog sync)
npx skills add https://github.com/connorads/dotfiles --skill youtube-transcriptAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 71 |
|---|---|
| repo stars | ★ 15 |
| Last updated | August 1, 2026 |
| Repository | connorads/dotfiles ↗ |
What it does
Helps with ai & agent building tasks.
Files
YouTube Transcript
Extract transcripts from YouTube videos using the youtube-transcript-api.
Usage
Run the script with a YouTube URL or video ID:
uv run scripts/get_transcript.py "VIDEO_URL_OR_ID"With timestamps:
uv run scripts/get_transcript.py "VIDEO_URL_OR_ID" --timestampsDefaults
- Without timestamps (default): Plain text, one line per caption segment
- With timestamps:
[MM:SS] textformat (or[HH:MM:SS]for longer videos)
Supported URL Formats
https://www.youtube.com/watch?v=VIDEO_IDhttps://youtu.be/VIDEO_IDhttps://youtube.com/embed/VIDEO_ID- Raw video ID (11 characters)
Output
- CRITICAL: YOU MUST NEVER MODIFY THE RETURNED TRANSCRIPT
- If the transcript is without timestamps, you SHOULD clean it up so that it is arranged by complete paragraphs and the lines don't cut in the middle of sentences.
- If you were asked to save the transcript to a specific file, save it to the requested file.
- If no output file was specified, use the YouTube video ID with a
-transcript.txtsuffix.
Notes
- Fetches auto-generated or manually added captions (whichever is available)
- Requires the video to have captions enabled
- Falls back to auto-generated captions if manual ones aren't available
#!/usr/bin/env -S uv run --script
# /// script
# requires-python = ">=3.10"
# dependencies = ["youtube-transcript-api>=1.0.0"]
# ///
"""
Extract transcript from a YouTube video.
Usage:
uv run scripts/get_transcript.py <video_id_or_url> [--timestamps]
"""
import sys
import re
import argparse
from youtube_transcript_api import YouTubeTranscriptApi
def extract_video_id(url_or_id: str) -> str:
"""Extract video ID from various YouTube URL formats or return as-is if already an ID."""
patterns = [
r'(?:youtube\.com/watch\?v=|youtu\.be/|youtube\.com/embed/|youtube\.com/v/)([a-zA-Z0-9_-]{11})',
r'^([a-zA-Z0-9_-]{11})$'
]
for pattern in patterns:
match = re.search(pattern, url_or_id)
if match:
return match.group(1)
raise ValueError(f"Could not extract video ID from: {url_or_id}")
def format_timestamp(seconds: float) -> str:
"""Convert seconds to HH:MM:SS or MM:SS format."""
hours = int(seconds // 3600)
minutes = int((seconds % 3600) // 60)
secs = int(seconds % 60)
if hours > 0:
return f"{hours:02d}:{minutes:02d}:{secs:02d}"
return f"{minutes:02d}:{secs:02d}"
def get_transcript(video_id: str, with_timestamps: bool = False) -> str:
"""Fetch and format transcript for a YouTube video."""
api = YouTubeTranscriptApi()
transcript = api.fetch(video_id)
if with_timestamps:
lines = [f"[{format_timestamp(snippet.start)}] {snippet.text}" for snippet in transcript.snippets]
else:
lines = [snippet.text for snippet in transcript.snippets]
return '\n'.join(lines)
def main():
parser = argparse.ArgumentParser(description='Get YouTube video transcript')
parser.add_argument('video', help='YouTube video URL or video ID')
parser.add_argument('--timestamps', '-t', action='store_true',
help='Include timestamps in output')
args = parser.parse_args()
try:
video_id = extract_video_id(args.video)
transcript = get_transcript(video_id, with_timestamps=args.timestamps)
print(transcript)
except Exception as e:
print(f"Error: {e}", file=sys.stderr)
sys.exit(1)
if __name__ == '__main__':
main()
Related skills
AI & Agent Buildingagents