executing-plans
executing-plans
Use when executing an implementation plan in the current session as the implementer yourself — your human partner chose inline execution, or no subagent tool is available
youtube-downloaderDownload YouTube videos and extract audio using yt-dlp. Supports various quality options and formats.
Independent GitHub snapshot · Automated classification · Original documentation governs
This skill downloads YouTube videos and extracts audio for further processing.
Download video from: https://www.youtube.com/watch?v=VIDEO_ID
Extract audio from: https://www.youtube.com/watch?v=VIDEO_ID
Download video in 1080p from: [URL]
When a user provides a YouTube URL:
# Check if yt-dlp is available
which yt-dlp || echo "yt-dlp not installed"
# Get video info without downloading
yt-dlp --dump-json "[URL]" | head -c 2000
mkdir -p ./output/downloads
mkdir -p ./output/transcripts
mkdir -p ./temp
For Video + Audio:
yt-dlp -f "bestvideo[height<=1080]+bestaudio/best[height<=1080]" \
-o "./output/downloads/%(id)s.%(ext)s" \
--merge-output-format mp4 \
"[URL]"
For Audio Only:
yt-dlp -x --audio-format mp3 --audio-quality 0 \
-o "./output/downloads/%(id)s.%(ext)s" \
"[URL]"
# List downloaded files
ls -la ./output/downloads/
# Get file info
ffprobe -v quiet -print_format json -show_format -show_streams "./output/downloads/VIDEO_ID.mp4"
Present the download results:
## ✅ Download Complete
**Video**: [Title]
**Duration**: X minutes X seconds
**File**: ./output/downloads/VIDEO_ID.mp4
**Size**: XX MB
Next steps:
1. Use `speech-transcriber` to transcribe the audio
2. Use `highlight-finder` to identify engaging segments
3. Or tell me which part of the video you want to extract
./output/downloads/{video_id}.mp4./output/downloads/{video_id}.mp3./output/downloads/{video_id}_info.jsonbrew install yt-dlp (macOS) or pip install yt-dlpIf you encounter "Sign in to confirm you're not a bot" or HTTP 403 errors, YouTube's anti-bot protection is blocking the download. Try these solutions in order:
Solution 1: Use PO Token (Recommended)
# Follow guide: https://github.com/yt-dlp/yt-dlp/wiki/PO-Token-Guide
yt-dlp --extractor-args "youtube:po_token=web+XXX" "[URL]"
Solution 2: Browser Cookies
# Export cookies from a logged-in browser session
yt-dlp --cookies-from-browser firefox "[URL]"
# Or use exported cookies file
yt-dlp --cookies ./cookies.txt "[URL]"
Solution 3: Offer Alternatives to User If automated download fails after multiple attempts, provide the user with options:
## ⚠️ YouTube Access Restricted
The video cannot be downloaded automatically due to YouTube's bot protection.
**Your options**:
1. **Manual download**: Download the video from a browser and place it in `./output/downloads/`
2. **Different video**: Try a different YouTube URL
3. **Local file**: Provide a video file you already have
4. **Wait and retry**: YouTube's restrictions are sometimes temporary
Once you have the video file, I can proceed with transcription and short video creation.