video-downloader
SKILL.md
Video Downloader
Overview
Download videos from YouTube, Bilibili, Twitter/X, TikTok, and 1000+ other websites using yt-dlp. Supports multiple quality options, audio extraction, and automatic format selection.
When to Use This Skill
Invoke this skill when users:
- Provide a video URL and want to download it
- Ask to download videos from any website
- Want to extract audio from online videos
- Need to download videos in specific quality (1080p, 4K, etc.)
- Request help with video download issues
Quick Start
When a user provides a video URL:
# Run the bundled download script
python3 scripts/download.py "VIDEO_URL"
Default output: ~/Downloads/Videos/
Prerequisites
Install yt-dlp
# macOS
brew install yt-dlp
# Cross-platform (pip)
pip install yt-dlp
# Update to latest version
brew upgrade yt-dlp # or: pip install --upgrade yt-dlp
Verify Installation
which yt-dlp && yt-dlp --version
Common Download Commands
Basic Download (Best Quality)
yt-dlp -P ~/Downloads/Videos "VIDEO_URL"
Specific Quality
# Best quality up to 1080p
yt-dlp -f "bestvideo[height<=1080]+bestaudio/best" -P ~/Downloads/Videos "VIDEO_URL"
# Best quality up to 720p
yt-dlp -f "bestvideo[height<=720]+bestaudio/best" -P ~/Downloads/Videos "VIDEO_URL"
# Best available (including 4K)
yt-dlp -f "bestvideo+bestaudio/best" -P ~/Downloads/Videos "VIDEO_URL"
Audio Only (MP3)
yt-dlp -x --audio-format mp3 -P ~/Downloads/Videos "VIDEO_URL"
List Available Formats
yt-dlp -F "VIDEO_URL"
Download with Subtitles
yt-dlp --write-subs --sub-lang zh,en -P ~/Downloads/Videos "VIDEO_URL"
Playlist Download
yt-dlp -P ~/Downloads/Videos "PLAYLIST_URL"
Bundled Script Reference
scripts/download.py
Convenience wrapper with sensible defaults:
# Basic usage
python3 scripts/download.py "VIDEO_URL"
# Options
python3 scripts/download.py "VIDEO_URL" -o ~/Desktop # Custom output
python3 scripts/download.py "VIDEO_URL" -f 1080 # Max 1080p
python3 scripts/download.py "VIDEO_URL" -a # Audio only (MP3)
python3 scripts/download.py "VIDEO_URL" -F # List formats
python3 scripts/download.py "VIDEO_URL" --subs # With subtitles
Supported Websites (Examples)
| Platform | Example URL Pattern |
|---|---|
| YouTube | youtube.com/watch?v=, youtu.be/ |
| Bilibili | bilibili.com/video/ |
| Twitter/X | twitter.com/*/status/, x.com/*/status/ |
| TikTok | tiktok.com/@*/video/ |
| Vimeo | vimeo.com/ |
| Twitch | twitch.tv/videos/ |
instagram.com/p/, instagram.com/reel/ |
|
facebook.com/watch/ |
Full list: https://github.com/yt-dlp/yt-dlp/blob/master/supportedsites.md
Platform-Specific Notes
YouTube
For high-quality (1080p+) YouTube downloads, you may need:
- Browser cookies (recommended):
yt-dlp --cookies-from-browser chrome "VIDEO_URL"
- PO token provider (for persistent access):
See
references/platform-tips.mdfor setup instructions.
Bilibili
# Download with best quality
yt-dlp --cookies-from-browser chrome "https://www.bilibili.com/video/BV..."
Twitter/X
# Usually works without authentication
yt-dlp "https://twitter.com/user/status/123456789"
Troubleshooting
"Video unavailable" or "Sign in required"
Use browser cookies:
yt-dlp --cookies-from-browser chrome "VIDEO_URL"
Only Low Quality Available
- Update yt-dlp:
brew upgrade yt-dlp - Use browser cookies for authentication
- Check available formats:
yt-dlp -F "VIDEO_URL"
Download Speed Issues
# Limit concurrent fragments
yt-dlp --concurrent-fragments 3 "VIDEO_URL"
# Use specific format to avoid merging
yt-dlp -f best "VIDEO_URL"
Network Errors (China/Proxy)
# Use proxy
yt-dlp --proxy socks5://127.0.0.1:1080 "VIDEO_URL"
# Or set environment variable
export ALL_PROXY=socks5://127.0.0.1:1080
yt-dlp "VIDEO_URL"
Output Format
Default filename template: %(title)s [%(id)s].%(ext)s
Custom template:
yt-dlp -o "%(uploader)s - %(title)s.%(ext)s" "VIDEO_URL"
Further Reading
- Platform Tips: See
references/platform-tips.mdfor site-specific guidance - yt-dlp Documentation: https://github.com/yt-dlp/yt-dlp
- Supported Sites: https://github.com/yt-dlp/yt-dlp/blob/master/supportedsites.md
Weekly Installs
6
Repository
isjiamu/jiamu-skillsGitHub Stars
67
First Seen
Jan 27, 2026
Security Audits
Installed on
claude-code5
opencode5
trae3
gemini-cli3
antigravity3
github-copilot3