Access supported Stripe administration and payment APIs through managed OAuth.
Design & media
Video Downloader
Download online videos with quality and format controls using yt-dlp for reliable local saves.
What it does
Download single videos from user-provided URLs with predictable quality, format, and output paths.
The skill document
Video Downloader
Download single videos from user-provided URLs with predictable quality, format, and output paths.
Setup
On first use, read setup.md for integration guidelines.
When to Use
Use this skill when the user asks to download a video or extract audio from a video URL. It is optimized for one-off downloads with explicit quality and format requirements.
Architecture
Memory lives in ~/video-downloader/. See memory-template.md for structure.
~/video-downloader/
├── memory.md # Status + user preferences
├── downloads-log.md # Optional history of completed downloads
└── failed-downloads.md # Optional retries and failure reasons
Quick Reference
Load only what you need to keep context small during execution.
| Topic | File |
|---|---|
| Setup flow | setup.md |
| Memory template | memory-template.md |
| Command recipes | commands.md |
| Download script | download_video.py |
Core Rules
1. Confirm Rights and Target First
- Ask for the exact URL and intended use when unclear.
- If the request implies unauthorized copying, refuse and suggest legal alternatives.
2. Inspect Metadata Before Downloading
- Run metadata check first to confirm title, duration, and available formats.
- If metadata fetch fails, stop and report the exact error instead of retrying blindly.
3. Match Quality to User Intent
- Use
bestwhen user says "highest quality". - Use capped quality (
1080p,720p, etc.) for smaller files or device limits. - Use audio-only mode only when they explicitly want audio extraction.
4. Use Deterministic Output Names
- Save files as
%(title)s [%(id)s].%(ext)sto reduce collisions. - Keep downloads in a user-approved directory and never write outside it.
5. Prefer the Local Wrapper Script
- Use
python3 download_video.py "" ...for consistent behavior. - Fall back to raw
yt-dlpcommands only if the user asks for custom flags not covered by the script.
6. Verify Output Before Declaring Success
- Confirm file exists, extension matches request, and size is non-zero.
- For audio-only downloads, confirm output is
.mp3.
Common Traps
- Downloading playlists accidentally -> use
--no-playlistby default. - Choosing
bestfor limited storage -> oversized files and slow transfers. - Re-trying blocked URLs repeatedly -> temporary ban risk and no progress.
- Saving with title only -> filename collisions across similar uploads.
- Skipping metadata check -> wrong media downloaded from redirected links.
External Endpoints
The downloader only contacts domains implied by the user-provided URL.
| Endpoint | Data Sent | Purpose |
|---|---|---|
User-provided video host URL domains (via yt-dlp) | Requested media URL and standard downloader headers | Fetch metadata and media streams |
No other data is sent externally.
Security & Privacy
Data that leaves your machine:
- Only the target media URL and standard downloader request headers sent by
yt-dlp.
Data that stays local:
- Downloaded files in the selected output folder.
- Optional memory notes under
~/video-downloader/.
This skill does NOT:
- Store credentials in plain text.
- Access files outside user-approved output paths.
- Download playlists unless the user explicitly asks.
- Make undeclared network requests outside the target media host.
Trust
By using this skill, requests are sent to the video host domains behind the provided URL. Only install if you trust those services with your request metadata.
Related Skills
Install with clawhub install if user confirms:
video— video processing workflowsffmpeg— codec conversion tasksaudio— audio cleanup workflowsyoutube-video-transcript— transcript extraction
Feedback
- If useful:
clawhub star video-downloader - Stay updated:
clawhub sync
Related skills
Search YouTube data and manage account resources through Data API v3 with managed OAuth.
Audit organic search issues and turn SERP, GSC, and competitor evidence into URL-level fixes and content.
Design and critique visual artifacts using measurable rules for hierarchy, spacing, type, color, and layout.
Analyze mixed files and produce multiple requested artifacts through one agent task.
Generate customizable adult portraits through an authenticated API with quota checks and multiple export formats.
More from Iván
Browse all skillsWrite, debug, and tune Java and JVM systems with JDK-aware code and diagnostic steps.
Design and critique visual artifacts using measurable rules for hierarchy, spacing, type, color, and layout.
Diagnose CSS mechanics and produce targeted fixes or complete stylesheets for the chosen stack.
Architect, troubleshoot, secure, and cost-control AWS infrastructure with explicit cost and blast-radius guidance.
Diagnose, validate, transform, and evolve JSON payloads across parsers, schemas, storage, and large files.
Build and operate a testable learning plan with practice, spaced review, transfer checks, and durable local records.