.wrangler/memory/knowledge-base/reference-prompts/skills/youtube-transcription/SKILL.md
Download YouTube video transcripts when user provides a YouTube URL or asks to download/get/fetch a transcript from YouTube. Also use when user wants to transcribe or get captions/subtitles from a YouTube video.
npx skillsauth add bacchus-labs/wrangler youtube-transcriptInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
This skill helps download transcripts (subtitles/captions) from YouTube videos using yt-dlp.
Activate this skill when the user:
This skill includes modular scripts in the scripts/ directory:
| Script | Purpose |
|--------|---------|
| check-ytdlp.sh | Check if yt-dlp is installed, attempt installation if not |
| download-transcript.sh | Main workflow: download subtitles with automatic fallback |
| whisper-transcribe.sh | Last resort: download audio and transcribe with Whisper |
| vtt-to-text.py | Convert VTT subtitle files to plain text with deduplication |
# Scripts are located at:
SKILL_DIR="$(dirname "$0")" # When running from skill directory
# Or use absolute path from wrangler installation
# Download transcript (tries manual subs, then auto-generated)
./scripts/download-transcript.sh "https://www.youtube.com/watch?v=VIDEO_ID"
# Specify output directory
./scripts/download-transcript.sh "https://www.youtube.com/watch?v=VIDEO_ID" ./transcripts
# 1. Check/install yt-dlp
./scripts/check-ytdlp.sh --install
# 2. Download transcript
./scripts/download-transcript.sh "YOUTUBE_URL"
# 3. If no subtitles available, use Whisper
./scripts/whisper-transcribe.sh "YOUTUBE_URL"
--write-sub) - highest quality--write-auto-sub) - usually availableCheck if yt-dlp is installed and optionally install it.
# Just check
./scripts/check-ytdlp.sh
# Check and install if missing
./scripts/check-ytdlp.sh --install
Exit codes:
0 - yt-dlp is available1 - yt-dlp not found and installation not attempted2 - Installation failedMain workflow script that handles the complete download process.
./scripts/download-transcript.sh <youtube_url> [output_dir]
What it does:
Exit codes:
0 - Success1 - Invalid arguments2 - yt-dlp not found3 - No subtitles available4 - Download failedFor videos without any subtitles, download audio and transcribe locally.
./scripts/whisper-transcribe.sh <youtube_url> [output_dir] [--auto-confirm]
What it does:
Options:
--auto-confirm - Skip confirmation prompts (for automation)Exit codes:
0 - Success1 - Invalid arguments2 - yt-dlp not found3 - Whisper not found and user declined installation4 - Download failed5 - Transcription failed6 - User cancelledConvert VTT subtitle files to plain text with deduplication.
# Output to file
python3 ./scripts/vtt-to-text.py input.vtt output.txt
# Output to stdout
python3 ./scripts/vtt-to-text.py input.vtt
Features:
If you prefer to run commands manually instead of using the scripts:
which yt-dlp || command -v yt-dlp
# macOS (Homebrew)
brew install yt-dlp
# Linux (apt)
sudo apt update && sudo apt install -y yt-dlp
# Any system (pip)
pip3 install yt-dlp
yt-dlp --list-subs "YOUTUBE_URL"
yt-dlp --write-sub --sub-langs "en.*" --skip-download --output "transcript" "YOUTUBE_URL"
yt-dlp --write-auto-sub --sub-langs "en.*" --skip-download --output "transcript" "YOUTUBE_URL"
yt-dlp --print "%(title)s" "YOUTUBE_URL"
yt-dlp -x --audio-format mp3 --output "audio_%(id)s.%(ext)s" "YOUTUBE_URL"
whisper audio.mp3 --model base --output_format vtt
.vtt): Includes timestamps and formatting, good for video players.txt): Just the text content, good for reading or analysisThe scripts automatically convert VTT to plain text and clean up the VTT file.
1. yt-dlp not installed
./scripts/check-ytdlp.sh --install
2. No subtitles available
3. Whisper installation fails
pip3 install openai-whisper4. Download interrupted
--no-check-certificate if SSL issues5. Multiple subtitle languages
en.*)--sub-langs parameter for other languages--list-subs)tools
Use when creating technical specifications for features, systems, or architectural designs. Creates comprehensive specification documents using the Wrangler MCP issue management system with proper structure and completeness checks.
testing
Creates and refines agent skills using TDD methodology with pressure testing and rationalization detection. Use when creating new skills, editing existing skills, testing skills with pressure scenarios, or verifying skills work before deployment.
tools
Use when design is complete and you need detailed implementation tasks - creates tracked MCP issues with exact file paths, complete code examples, and verification steps. Optional reference plan file for architecture overview.
development
Validates governance file completeness, format compliance, and metric accuracy. Use when auditing governance health, after bulk changes, or ensuring documentation integrity.