youtube-downloader
Download YouTube videos with customizable quality and format options. Use this skill when the user asks to download, save, or grab YouTube videos. Supports various quality settings (best, 1080p, 720p, 480p, 360p), multiple formats (mp4, webm, mkv), and audio-only downloads as MP3.
How do I install this agent skill?
npx skills add https://github.com/davepoon/buildwithclaude --skill youtube-downloaderIs this agent skill safe to install?
- Gen Agent Trust Hubpass
The skill provides a utility to download YouTube videos and audio using the well-known 'yt-dlp' tool. It includes robust URL validation to restrict access to legitimate YouTube domains and manages its own dependencies via a local virtual environment. No malicious patterns were detected.
- Socketpass
No alerts
- Snykwarn
Risk: MEDIUM · 1 issue
- Runlayerwarn
2/2 files flagged
What does this agent skill do?
YouTube Video Downloader
Download YouTube videos with full control over quality and format settings.
Quick Start
The simplest way to download a video:
python scripts/download_video.py "https://www.youtube.com/watch?v=VIDEO_ID"
This downloads the video in best available quality as MP4 to /mnt/user-data/outputs/.
Options
Quality Settings
Use -q or --quality to specify video quality:
best(default): Highest quality available1080p: Full HD720p: HD480p: Standard definition360p: Lower qualityworst: Lowest quality available
Example:
python scripts/download_video.py "URL" -q 720p
Format Options
Use -f or --format to specify output format (video downloads only):
mp4(default): Most compatiblewebm: Modern formatmkv: Matroska container
Example:
python scripts/download_video.py "URL" -f webm
Audio Only
Use -a or --audio-only to download only audio as MP3:
python scripts/download_video.py "URL" -a
Custom Output Directory
Use -o or --output to specify a different output directory:
python scripts/download_video.py "URL" -o /path/to/directory
Complete Examples
- Download video in 1080p as MP4:
python scripts/download_video.py "https://www.youtube.com/watch?v=dQw4w9WgXcQ" -q 1080p
- Download audio only as MP3:
python scripts/download_video.py "https://www.youtube.com/watch?v=dQw4w9WgXcQ" -a
- Download in 720p as WebM to custom directory:
python scripts/download_video.py "https://www.youtube.com/watch?v=dQw4w9WgXcQ" -q 720p -f webm -o /custom/path
Supported URLs
- HTTPS only —
http://links are rejected. - YouTube hosts only — allowed hostnames include
youtube.com(and subdomains such aswww,m,music),youtu.be, andyoutube-nocookie.com(includingwww). Other sites are rejected.
yt-dlp installation
The script does not install packages into your system Python (no --break-system-packages).
- If
yt-dlpis on yourPATH, it is used. - Otherwise it creates a local virtualenv at
video-downloader/.venv, installsyt-dlpthere withpip, and runs that binary. - If venv creation or install fails, follow the printed message or install globally, for example:
pipx install yt-dlp,brew install yt-dlp, or your OS package manager.
The .venv directory is gitignored and stays inside the skill folder.
How It Works
The skill uses yt-dlp, a robust YouTube downloader that:
- Resolves
yt-dlpvia PATH or the skill-local.venvas described above - Fetches video information before downloading
- Selects the best available streams matching your criteria
- Merges video and audio streams when needed
- Supports a wide range of YouTube video formats
Important Notes
- Downloads are saved to
/mnt/user-data/outputs/by default - Video filename is automatically generated from the video title
- Only single videos are downloaded (playlists are skipped by default)
- Higher quality videos may take longer to download and use more disk space
How can the creator link this skill?
Add the canonical catalog link to the repository README so users can inspect current installs and available audits. The publishing guide covers the complete discovery path.
<a href="https://skillzs.dev/skills/davepoon/buildwithclaude/youtube-downloader">View youtube-downloader on skillZs</a>