YouTube Transcript Extractor logo

YouTube Transcript Extractor

Visit

Tapestry skill that downloads YouTube subtitles with yt-dlp, falls back to local Whisper when none exist, and outputs deduplicated plain text.

Share:
View alternatives

YouTube Transcript Extractor

The youtube-transcript skill is part of Tapestry Skills for AI Agents (MIT, "Tapestry Skills Contributors"), a small collection of learning and productivity skills for Claude Code. It does one job: given a YouTube URL, it gets the transcript as a .vtt file or clean plain text. Summaries and action plans come from sibling skills in the same repo, not from this one. The repo's latest commit was dated 2026-03-11 when we checked on 2026-09-23.

Key Features

  • Ordered fallbacks: check that yt-dlp is installed (and try Homebrew, apt, or pip if not), list available subtitles with yt-dlp --list-subs, try human-made subtitles (--write-sub), then auto-generated ones (--write-auto-sub).
  • Whisper as last resort: if no subtitles exist, the skill shows the estimated audio size and asks before downloading. It asks again before installing openai-whisper, then transcribes locally with the base model and offers to delete the audio afterwards.
  • Deduplication: YouTube auto-captions repeat lines because captions appear progressively. A short Python step strips timestamps and tags, decodes HTML entities, and removes repeated lines while keeping speaking order.
  • Readable filenames: output files are named from the video title, with characters like / and : replaced.

Use Cases

  • Pulling a talk or tutorial into text so Claude can quote or summarize it.
  • Archiving interviews you want to search later.
  • Feeding the repo's learn-this or ship-learn-next skills, which turn content into an action plan.

Pricing and Access

Free under MIT. yt-dlp and Whisper are free open-source tools; Whisper runs on your machine, so there is no API cost, but models need disk space (the skill cites about 1 GB for base).

Getting Started

  1. Clone https://github.com/michalparkola/tapestry-skills-for-claude-code and run ./install.sh, or copy the youtube-transcript folder into ~/.claude/skills/.
  2. Open Claude Code and say: "Download the transcript for https://www.youtube.com/watch?v=VIDEO_ID".
  3. Confirm the Whisper prompt only if the video has no subtitles.

Limitation: private, age-restricted, or geo-blocked videos fail with yt-dlp errors. Auto-generated subtitles and the small Whisper model can mis-hear names and technical terms. The skill's deduplication also drops any line that legitimately repeats. Respect the video owner's rights when reusing text.

Frequently Asked Questions

Does it summarize the video?

No. It saves the transcript; ask Claude to summarize the text afterwards, or use the repo's learn-this skill.

Which language do I get?

Whatever subtitle tracks the video has. --list-subs shows them, and Whisper can auto-detect language or take --language.

Alternatives

  • Whisper V3: the open-weight speech model behind larger, more accurate local transcription.
  • MarkItDown Skill: its youtube-transcription extra converts YouTube URLs to Markdown.
  • NotebookLM: add videos as sources and ask questions without handling transcripts yourself.

Conclusion

YouTube Transcript Extractor is a practical, local-first way to turn videos into text inside Claude Code, with sensible fallbacks and confirmations before heavy downloads. It does not analyze content by itself. More content tools are in the skills hub.

Comments

No comments yet. Be the first to comment!