mapleshaw/yt-dlp-downloader-skill
Overview
This skill lets you download videos and audio from YouTube, Bilibili, Twitter/X, TikTok and thousands of other sites using yt-dlp. It builds appropriate yt-dlp commands based on the URL and user intent (download video, extract MP3, save subtitles, select quality) and returns the command or executes it when permitted. The skill handles common pitfalls like YouTube 403 errors by recommending browser cookies and suggests format listing when needed.
How this skill works
When given a video or playlist URL and options, the skill detects the platform and composes an yt-dlp command that matches the requested outcome (best video, specific resolution, audio-only, subtitles, thumbnail, playlist range). For YouTube it recommends --cookies-from-browser to avoid 403 issues. It can list available formats with -F, build format selectors, and include output path and filename templates. It also suggests installing yt-dlp and ffmpeg if missing and provides simple troubleshooting steps.
When to use it
- You have a direct video or playlist URL and want to download the file.
- You want to extract audio as MP3 from a video URL.
- You need subtitles downloaded along with the video.
- You require a specific video resolution (e.g., 720p or 1080p).
- You need to download multiple items from a playlist or a range.
Best practices
- For YouTube, always use --cookies-from-browser <browser> to avoid 403 errors.
- Run yt-dlp -F URL first to inspect available formats before selecting one.
- Install ffmpeg when extracting or merging audio/video (required for MP3).
- Keep yt-dlp updated (pip install -U yt-dlp) to support site changes.
- Use an explicit output path (-P) and filename template (-o) to organize downloads.
Example use cases
- Download a single YouTube video using browser cookies: yt-dlp --cookies-from-browser chrome "YOUTUBE_URL"
- Extract MP3 from a Bilibili video: yt-dlp -x --audio-format mp3 "BILIBILI_URL"
- Download a Twitter/X video directly to a downloads folder: yt-dlp -P "~/Downloads/yt-dlp" "TWITTER_URL"
- Get 720p video only: yt-dlp -f "bestvideo[height<=720]+bestaudio/best[height<=720]" "VIDEO_URL"
- Download an entire playlist and keep order: yt-dlp -o "%(playlist)s/%(playlist_index)s - %(title)s.%(ext)s" "PLAYLIST_URL"
FAQ
Use --cookies-from-browser chrome (or your browser) to provide authenticated cookies; this resolves most 403 errors.
How do I extract audio only?
Use -x --audio-format mp3 and ensure ffmpeg is installed for format conversion.
How can I choose a specific quality?
Run yt-dlp -F URL to list formats, then use -f FORMAT_ID or format selectors like bestvideo[height<=1080]+bestaudio.