download-video

Installation
SKILL.md

Download Video

Download videos from YouTube, Bilibili, Twitter/X, TikTok, and 1000+ other sites using yt-dlp.

Step 1: Check prerequisites

which yt-dlp && yt-dlp --version
which ffmpeg

If yt-dlp is missing, install it:

# macOS
brew install yt-dlp ffmpeg

# Cross-platform
pip install yt-dlp

Step 2: Download

Use the bundled script — it wraps yt-dlp with sensible defaults and clear error messages.

python3 scripts/download.py "VIDEO_URL"

Default output: ~/Downloads/Videos/

Common options

python3 scripts/download.py "URL" -f 1080            # Max 1080p
python3 scripts/download.py "URL" -a                  # Audio only (MP3)
python3 scripts/download.py "URL" -F                  # List formats
python3 scripts/download.py "URL" --subs              # With subtitles
python3 scripts/download.py "URL" -o ~/Desktop        # Custom output dir
python3 scripts/download.py "URL" --cookies chrome    # Use browser cookies

Direct yt-dlp commands

For cases the script doesn't cover, use yt-dlp directly:

# Download playlist
yt-dlp -P ~/Downloads/Videos "PLAYLIST_URL"

# Custom filename template
yt-dlp -o "%(uploader)s - %(title)s.%(ext)s" "VIDEO_URL"

# Download with subtitles in specific languages
yt-dlp --write-subs --sub-lang zh,en -P ~/Downloads/Videos "VIDEO_URL"

Troubleshooting

Most download failures fall into these categories:

Symptom Fix
"Sign in required" or age-restricted Add --cookies chrome to use browser session
Only low quality available Update yt-dlp (brew upgrade yt-dlp), then try with --cookies chrome
Slow downloads Try --concurrent-fragments 3 or --downloader aria2c
Network errors (behind firewall) Use --proxy socks5://127.0.0.1:1080 or set ALL_PROXY env var

For platform-specific details (YouTube PO tokens, Bilibili series, TikTok watermark removal, etc.), see references/platform-tips.md.

Related skills
Installs
31
GitHub Stars
9
First Seen
Apr 18, 2026