
Video Download
FreeDownload videos and audio from YouTube and more effortlessly.
Free · Opens the source repo
What Video Download does
The Video Download skill enables users to download video and audio content from YouTube and over 1000 other sites using yt-dlp, a powerful command-line tool. This skill is particularly useful for developers and designers looking to incorporate multimedia into their projects or for anyone wanting to save content for offline use. With no API keys required, users can quickly access a variety of features that facilitate downloading, including options for specific resolutions, audio extraction, and subtitle downloads.
To utilize the skill, users must ensure they have yt-dlp and ffmpeg installed on their systems. The skill provides straightforward command examples for downloading videos in the best quality, extracting audio in various formats, and even obtaining metadata without downloading the actual video. This flexibility allows users to customize their downloads based on their specific needs, whether they are looking to save bandwidth or require certain subtitle languages.
Additionally, the skill includes commands for listing available formats and specifying output directories, making it easy to organize downloaded content. Users are encouraged to keep yt-dlp updated to avoid issues with changing site structures, ensuring a smooth downloading experience. The skill is designed for both casual users and developers who need a reliable tool for managing video content efficiently.
When to use it
Use this skill when you need to download videos or audio from YouTube or other supported sites, extract audio, or obtain subtitles.
When not to use it
This skill may not be suitable if you require a graphical user interface for downloading videos or if you need advanced features not supported by yt-dlp.
What you can build with it
Downloading a YouTube Video
Use the skill to download a YouTube video in the best quality with a simple command.
Extracting Audio for a Podcast
Quickly extract audio from a video URL to create content for a podcast or audio project.
Obtaining Video Metadata
Retrieve video metadata without downloading the video, useful for cataloging or analysis.
How to install Video Download
View source1. Install with the skills CLI
npx skills add calesthio/openmontage/video-download --agent claude-code2. Or install it manually
Download the skill folder and drop it into ~/.claude/skills/ for all projects, or .claude/skills/ to scope it to one repo. Restart Claude Code so it picks up the new skill.
Anthropic's agentic coding CLI, and the reference implementation of Agent Skills. Drop a skill folder into ~/.claude/skills and Claude Code loads it automatically whenever a task matches the skill's description. Claude Code docs
Inside SKILL.md
Written by calesthiovideo-download
Download video and audio from URLs using yt-dlp directly. No wrapper scripts needed.
Prerequisites
- yt-dlp:
brew install yt-dlporpip install yt-dlp - ffmpeg:
brew install ffmpegorapt install ffmpeg(required for merging video+audio streams)
Update yt-dlp periodically to keep up with site changes: yt-dlp -U or pip install -U yt-dlp.
Commands
Download best quality
yt-dlp "URL" -o "%(title)s.%(ext)s" --merge-output-format mp4
Download specific resolution
# 720p
yt-dlp "URL" -f "bestvideo[height<=720]+bestaudio/best[height<=720]" --merge-output-format mp4
# 1080p
yt-dlp "URL" -f "bestvideo[height<=1080]+bestaudio/best[height<=1080]" --merge-output-format mp4
Audio only
yt-dlp "URL" -x --audio-format mp3 --audio-quality 0
Download subtitles
# Download video with English subtitles
yt-dlp "URL" --write-subs --sub-langs en --merge-output-format mp4
# Download video with multiple subtitle languages
yt-dlp "URL" --write-subs --sub-langs "en,es,fr" --merge-output-format mp4
# Download only subtitles (no video)
yt-dlp "URL" --write-subs --sub-langs en --skip-download
Get metadata (no download)
yt-dlp "URL" --dump-json --no-download
List available formats
yt-dlp "URL" -F
Specify output directory
yt-dlp "URL" -o "./downloads/%(title)s.%(ext)s" --merge-output-format mp4
Quality Presets
| Quality | Format flag |
|---|---|
| Best | -f "bestvideo+bestaudio/best" (default) |
| 1080p | -f "bestvideo[height<=1080]+bestaudio/best[height<=1080]" |
| 720p | -f "bestvideo[height<=720]+bestaudio/best[height<=720]" |
| 480p | -f "bestvideo[height<=480]+bestaudio/best[height<=480]" |
| Worst | -f "worstvideo+worstaudio/worst" |
Output Template Variables
Common variables for -o templates:
| Variable | Description |
|---|---|
%(title)s | Video title |
%(ext)s | File extension |
%(id)s | Video ID |
%(uploader)s | Channel/uploader name |
%(upload_date)s | Upload date (YYYYMMDD) |
%(duration)s | Duration in seconds |
%(resolution)s | Video resolution |
Tips
- Always use
--merge-output-format mp4to avoid ending up with.webmor.mkvfiles. - Use
--no-downloadwith--dump-jsonfor metadata-only queries -- no files written to disk. - If a download fails with HTTP errors, update yt-dlp first (
yt-dlp -U). - Use
-f "bestvideo[height<=720]+bestaudio"to save bandwidth when full resolution is not needed. - yt-dlp automatically handles rate limiting and retries.
- The
--dump-jsonoutput includestitle,duration,uploader,view_count,description,formats,subtitles, and much more.
Troubleshooting
- "yt-dlp: command not found": Install it (
pip install yt-dlp) and ensure your PATH includes pip's bin directory. - "ffmpeg: command not found": Install ffmpeg. Without it, downloads fail when video and audio are separate streams (common on YouTube for HD).
- Downloads fail or return errors: Run
yt-dlp -Uto update. Sites change frequently and yt-dlp ships fixes regularly.
Frequently asked questions about Video Download
Similar skills
PDFtk Server
Command-line tool for comprehensive PDF manipulation.
PDF Processing
Comprehensive tools for manipulating PDF files.
PDF Processing
Comprehensive tools for managing PDF files.
Mac Storage Cleaner
Reclaim disk space safely and transparently on macOS.
PDF Processing
Comprehensive tools for managing PDF files.
Screenshot Capture
Capture screenshots across different platforms easily.
