
Yt Dlp Downloader
- 689 installs
- 196 repo stars
- Updated January 24, 2026
- mapleshaw/yt-dlp-downloader-skill
yt-dlp-downloader is an agent skill that downloads videos, extracts MP3 audio, and fetches subtitles from YouTube, Bilibili, Twitter, Douyin, and thousands of other sites using yt-dlp and ffmpeg.
About
yt-dlp-downloader is a mapleshaw agent skill that wraps yt-dlp for downloading videos from thousands of websites including YouTube, Bilibili, Twitter, and Douyin. It verifies yt-dlp and ffmpeg dependencies before running, supports quality selection, audio extraction to MP3, and subtitle downloads when a user supplies a video URL. Triggers include phrases like download video, yt-dlp, extract audio, and Chinese terms such as 下载视频 and 提取音频. Developers and content engineers reach for yt-dlp-downloader when they need local media files, podcast audio rips, or caption tracks without writing custom scrapers per platform.
- Downloads videos in highest available quality by default
- Extracts audio as MP3 using ffmpeg
- Downloads subtitles and metadata automatically
- Bypasses YouTube blocks with --cookies-from-browser (supports chrome, firefox, safari, edge, brave, opera)
- Triggers on natural language like "download video", "提取音频", "yt-dlp", "B站", "抖音"
Yt Dlp Downloader by the numbers
- 689 all-time installs (skills.sh)
- +18 installs in the week ending Aug 2, 2026 (Skillselion tracking)
- Ranked #358 of 2,715 Automation & Workflows skills by installs in the Skillselion catalog
- Security screen: HIGH risk (skills.sh audit)
- Data as of Aug 2, 2026 (Skillselion catalog sync)
npx skills add https://github.com/mapleshaw/yt-dlp-downloader-skill --skill yt-dlp-downloaderAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 689 |
|---|---|
| repo stars | ★ 196 |
| Security audit | 1 / 3 scanners passed |
| Last updated | January 24, 2026 |
| Repository | mapleshaw/yt-dlp-downloader-skill ↗ |
How do you download YouTube videos with yt-dlp?
Download videos, extract audio, or fetch subtitles from YouTube, Bilibili, Twitter, Douyin and thousands of other sites when a URL is provided.
Who is it for?
Developers and media engineers who need CLI-driven downloads from YouTube, Bilibili, or thousands of yt-dlp-supported sites.
Skip if: Production streaming pipelines requiring licensed CDN distribution or platforms blocked by yt-dlp site policies.
When should I use this skill?
The user provides a video URL and asks to download video, extract audio, get subtitles, or mentions yt-dlp or B站.
What you get
Local video files, extracted MP3 audio, and downloaded subtitle tracks from supported URLs.
- Downloaded video files
- Extracted MP3 audio
- Subtitle files
By the numbers
- Supports thousands of video sites through the yt-dlp extractor engine
Files
yt-dlp Video Downloader
Download videos from thousands of websites using yt-dlp.
Prerequisites
Before downloading, verify dependencies are installed:
# Check yt-dlp
which yt-dlp || echo "yt-dlp not installed. Install with: pip install yt-dlp"
# Check ffmpeg (required for audio extraction and format merging)
which ffmpeg || echo "ffmpeg not installed. Install with: brew install ffmpeg"If not installed, install them first:
pip install yt-dlp
brew install ffmpeg # macOSQuick Start
Basic Download (Best Quality)
yt-dlp -P "~/Downloads/yt-dlp" "VIDEO_URL"YouTube Download (Recommended - with cookies)
YouTube often blocks direct downloads with 403 errors. Always use browser cookies for YouTube:
yt-dlp -P "~/Downloads/yt-dlp" --cookies-from-browser chrome "YOUTUBE_URL"Supported browsers: chrome, firefox, safari, edge, brave, opera
Download with Custom Output Path
yt-dlp -P "/path/to/save" -o "%(title)s.%(ext)s" "VIDEO_URL"Common Tasks
1. Download Video (Default - Best Quality)
yt-dlp -P "~/Downloads/yt-dlp" "VIDEO_URL"2. Extract Audio Only (MP3)
yt-dlp -P "~/Downloads/yt-dlp" -x --audio-format mp3 "VIDEO_URL"3. Download with Subtitles
yt-dlp -P "~/Downloads/yt-dlp" --write-subs --sub-langs all "VIDEO_URL"4. Download Specific Quality
720p:
yt-dlp -P "~/Downloads/yt-dlp" -f "bestvideo[height<=720]+bestaudio/best[height<=720]" "VIDEO_URL"1080p:
yt-dlp -P "~/Downloads/yt-dlp" -f "bestvideo[height<=1080]+bestaudio/best[height<=1080]" "VIDEO_URL"Best available:
yt-dlp -P "~/Downloads/yt-dlp" -f "bestvideo+bestaudio/best" "VIDEO_URL"5. List Available Formats (Before Download)
yt-dlp -F "VIDEO_URL"Then download specific format by ID:
yt-dlp -P "~/Downloads/yt-dlp" -f FORMAT_ID "VIDEO_URL"6. Download Playlist
# Download entire playlist
yt-dlp -P "~/Downloads/yt-dlp" -o "%(playlist)s/%(playlist_index)s - %(title)s.%(ext)s" "PLAYLIST_URL"
# Download specific range (e.g., items 1-5)
yt-dlp -P "~/Downloads/yt-dlp" -I 1:5 "PLAYLIST_URL"7. Download with Thumbnail
yt-dlp -P "~/Downloads/yt-dlp" --write-thumbnail "VIDEO_URL"Workflow
When user provides a video URL:
1. Identify the platform:
- YouTube/YouTube Music → Always use `--cookies-from-browser chrome`
- Other sites → Try without cookies first
2. Ask what they want (if not specified):
- Just download the video?
- Extract audio only?
- Need subtitles?
- Specific quality?
3. Construct the command based on requirements
4. Execute the download using Shell tool with required_permissions: ["all", "network"]
5. Handle errors:
- 403 Forbidden → Retry with
--cookies-from-browser - Connection issues → yt-dlp auto-resumes, just retry
- Format unavailable → Use
-Fto list formats, then select
6. Report the result - file location and any errors
Example Interaction
User: "帮我下载这个视频 https://www.youtube.com/watch?v=xxx"
Response:
# YouTube - use cookies to avoid 403 errors
yt-dlp -P "~/Downloads/yt-dlp" --cookies-from-browser chrome "https://www.youtube.com/watch?v=xxx"User: "下载这个视频的音频 https://www.bilibili.com/video/xxx"
Response:
# Bilibili - extracting audio as MP3
yt-dlp -P "~/Downloads/yt-dlp" -x --audio-format mp3 "https://www.bilibili.com/video/xxx"User: "下载这个 Twitter 视频 https://twitter.com/xxx/status/123"
Response:
# Twitter/X - direct download usually works
yt-dlp -P "~/Downloads/yt-dlp" "https://twitter.com/xxx/status/123"Supported Sites
yt-dlp supports thousands of sites including:
- YouTube, YouTube Music
- Bilibili (B站)
- Twitter/X
- TikTok, Douyin (抖音)
- Vimeo
- Twitch
- And many more...
Full list: https://github.com/yt-dlp/yt-dlp/blob/master/supportedsites.md
Troubleshooting
Common Errors and Solutions
| Error | Cause | Solution |
|---|---|---|
| HTTP 403 Forbidden | YouTube blocks unauthenticated requests | Use --cookies-from-browser chrome |
| Video unavailable | Geo-restricted or private | Use cookies or VPN |
| Download interrupted | Network issues | Retry - yt-dlp auto-resumes |
| Format not available | Requested format doesn't exist | Use -F to list formats |
Error: "yt-dlp: command not found"
pip install yt-dlpError: "ffmpeg not found" (for audio extraction)
brew install ffmpeg # macOSError: HTTP 403 Forbidden (YouTube)
This is the most common YouTube error. Always use cookies for YouTube:
# Recommended approach for YouTube
yt-dlp -P "~/Downloads/yt-dlp" --cookies-from-browser chrome "YOUTUBE_URL"Supported browsers: chrome, firefox, safari, edge, brave, opera
Error: Video unavailable or geo-restricted
# Try with cookies from browser
yt-dlp --cookies-from-browser chrome "VIDEO_URL"
# Or use a specific format
yt-dlp -F "VIDEO_URL" # List formats first
yt-dlp -f FORMAT_ID "VIDEO_URL"Error: Download keeps failing
# Update yt-dlp to latest version
pip install -U yt-dlp
# Force IPv4 (sometimes helps with connection issues)
yt-dlp -4 "VIDEO_URL"Best Practices
1. YouTube downloads: Always use --cookies-from-browser chrome 2. Large files: yt-dlp auto-resumes, just retry if interrupted 3. Keep yt-dlp updated: pip install -U yt-dlp 4. Check formats first: Use -F before downloading if unsure
yt-dlp 视频下载 Skill
一个用于 Cursor 的 Agent Skill,使用 yt-dlp 从 YouTube、B站、Twitter 等上千个网站下载视频。
English
功能特点
- 支持 1000+ 网站的视频下载
- 提取音频(MP3)
- 下载字幕
- 选择视频质量(720p/1080p/最佳)
- 自动处理 YouTube 403 错误(使用浏览器 cookies)
- 断点续传
前置要求
使用前请确保已安装以下工具:
# 安装 yt-dlp
pip install yt-dlp
# 安装 ffmpeg(音频提取需要)
brew install ffmpeg # macOS
# 或者: sudo apt install ffmpeg # Linux安装方法
方法 1:克隆到 Cursor skills 目录
git clone https://github.com/MapleShaw/yt-dlp-downloader-skill.git ~/.cursor/skills/yt-dlp-downloader方法 2:手动安装
1. 创建 skill 目录:
mkdir -p ~/.cursor/skills/yt-dlp-downloader/scripts2. 从本仓库下载 SKILL.md 和 scripts/download.sh
3. 放到创建的目录中
使用方法
直接告诉 Cursor 你想下载什么:
| 命令 | 示例 |
|---|---|
| 下载视频 | "下载这个视频 https://youtube.com/watch?v=xxx" |
| 提取音频 | "提取音频 https://youtube.com/watch?v=xxx" |
| 下载字幕 | "下载视频和字幕 https://youtube.com/watch?v=xxx" |
| 指定画质 | "下载 720p https://youtube.com/watch?v=xxx" |
对话示例
你: 下载这个视频 https://www.youtube.com/watch?v=xxx
Cursor:
yt-dlp -P "~/Downloads/yt-dlp" --cookies-from-browser chrome "https://www.youtube.com/watch?v=xxx"支持的网站
yt-dlp 支持上千个网站,包括:
- YouTube / YouTube Music
- Bilibili(B站)
- Twitter / X
- TikTok / 抖音
- Vimeo
- Twitch
- 更多...
常见问题
| 错误 | 解决方案 |
|---|---|
| HTTP 403 Forbidden (YouTube) | 使用 --cookies-from-browser chrome |
| yt-dlp 未找到 | 运行 pip install yt-dlp |
| ffmpeg 未找到 | 运行 brew install ffmpeg |
| 下载失败 | 运行 pip install -U yt-dlp 更新 |
文件结构
yt-dlp-downloader/
├── SKILL.md # 主 skill 指令文件
└── scripts/
└── download.sh # 辅助脚本许可证
MIT
致谢
yt-dlp Downloader Skill
A Cursor Agent Skill for downloading videos from YouTube, Bilibili, Twitter, and thousands of other sites using yt-dlp.
中文文档
Features
- Download videos from 1000+ websites
- Extract audio (MP3)
- Download subtitles
- Select video quality (720p/1080p/best)
- Auto-handle YouTube 403 errors with browser cookies
- Resume interrupted downloads
Prerequisites
Before using this skill, make sure you have the following installed:
# Install yt-dlp
pip install yt-dlp
# Install ffmpeg (required for audio extraction)
brew install ffmpeg # macOS
# or: sudo apt install ffmpeg # LinuxInstallation
Option 1: Clone to Cursor skills directory
git clone https://github.com/MapleShaw/yt-dlp-downloader-skill.git ~/.cursor/skills/yt-dlp-downloaderOption 2: Manual installation
1. Create the skill directory:
mkdir -p ~/.cursor/skills/yt-dlp-downloader/scripts2. Download SKILL.md and scripts/download.sh from this repository
3. Place them in the created directory
Usage
Simply tell Cursor what you want to download:
| Command | Example |
|---|---|
| Download video | "Download this video https://youtube.com/watch?v=xxx" |
| Extract audio | "Extract audio from https://youtube.com/watch?v=xxx" |
| Download with subtitles | "Download with subtitles https://youtube.com/watch?v=xxx" |
| Specific quality | "Download in 720p https://youtube.com/watch?v=xxx" |
Example Conversations
You: Download this video https://www.youtube.com/watch?v=xxx
Cursor:
yt-dlp -P "~/Downloads/yt-dlp" --cookies-from-browser chrome "https://www.youtube.com/watch?v=xxx"Supported Sites
yt-dlp supports thousands of sites including:
- YouTube / YouTube Music
- Bilibili (B站)
- Twitter / X
- TikTok / Douyin (抖音)
- Vimeo
- Twitch
- And many more...
Troubleshooting
| Error | Solution |
|---|---|
| HTTP 403 Forbidden (YouTube) | Use --cookies-from-browser chrome |
| yt-dlp not found | Run pip install yt-dlp |
| ffmpeg not found | Run brew install ffmpeg |
| Download fails | Run pip install -U yt-dlp to update |
File Structure
yt-dlp-downloader/
├── SKILL.md # Main skill instructions
└── scripts/
└── download.sh # Helper scriptLicense
MIT
Credits
#!/bin/bash
# yt-dlp download helper script
# Usage: ./download.sh [options] URL
#
# Options:
# -p, --path PATH Download path (default: ~/Downloads/yt-dlp)
# -a, --audio Extract audio only (MP3)
# -s, --subs Download subtitles
# -q, --quality NUM Max video height (720, 1080, etc.)
# -f, --format ID Specific format ID
# -l, --list List available formats
# -h, --help Show this help
set -e
# Default values
DOWNLOAD_PATH="${HOME}/Downloads/yt-dlp"
AUDIO_ONLY=false
DOWNLOAD_SUBS=false
QUALITY=""
FORMAT_ID=""
LIST_FORMATS=false
# Parse arguments
while [[ $# -gt 0 ]]; do
case $1 in
-p|--path)
DOWNLOAD_PATH="$2"
shift 2
;;
-a|--audio)
AUDIO_ONLY=true
shift
;;
-s|--subs)
DOWNLOAD_SUBS=true
shift
;;
-q|--quality)
QUALITY="$2"
shift 2
;;
-f|--format)
FORMAT_ID="$2"
shift 2
;;
-l|--list)
LIST_FORMATS=true
shift
;;
-h|--help)
head -15 "$0" | tail -13
exit 0
;;
*)
URL="$1"
shift
;;
esac
done
# Check if URL is provided
if [[ -z "$URL" ]]; then
echo "Error: No URL provided"
echo "Usage: $0 [options] URL"
exit 1
fi
# Check dependencies
if ! command -v yt-dlp &> /dev/null; then
echo "Error: yt-dlp is not installed"
echo "Install with: pip install yt-dlp"
exit 1
fi
# List formats only
if [[ "$LIST_FORMATS" == true ]]; then
yt-dlp -F "$URL"
exit 0
fi
# Create download directory
mkdir -p "$DOWNLOAD_PATH"
# Build command
CMD="yt-dlp -P \"$DOWNLOAD_PATH\""
# Add format selection
if [[ -n "$FORMAT_ID" ]]; then
CMD="$CMD -f \"$FORMAT_ID\""
elif [[ -n "$QUALITY" ]]; then
CMD="$CMD -f \"bestvideo[height<=$QUALITY]+bestaudio/best[height<=$QUALITY]\""
fi
# Audio extraction
if [[ "$AUDIO_ONLY" == true ]]; then
if ! command -v ffmpeg &> /dev/null; then
echo "Warning: ffmpeg not found. Audio extraction may fail."
echo "Install with: brew install ffmpeg"
fi
CMD="$CMD -x --audio-format mp3"
fi
# Subtitles
if [[ "$DOWNLOAD_SUBS" == true ]]; then
CMD="$CMD --write-subs --sub-langs all"
fi
# Add URL
CMD="$CMD \"$URL\""
# Execute
echo "Executing: $CMD"
echo "Download path: $DOWNLOAD_PATH"
echo ""
eval $CMD
echo ""
echo "Download complete! Files saved to: $DOWNLOAD_PATH"
Related skills
How it compares
Pick yt-dlp-downloader for agent-guided multi-site CLI downloads instead of single-site browser extensions.
FAQ
Which tools does yt-dlp-downloader require?
yt-dlp-downloader checks for yt-dlp via which yt-dlp and requires ffmpeg for audio extraction and merged format downloads before starting.
Which sites does yt-dlp-downloader support?
yt-dlp-downloader uses yt-dlp to reach thousands of sites, explicitly covering YouTube, Bilibili, Twitter, and Douyin when users provide a URL.
Is Yt Dlp Downloader safe to install?
skills.sh reports 1 of 3 security scanners passed. Review the Security Audits panel on this page before installing in production.