download-video
Scannednpx machina-cli add skill rameerez/claude-code-startup-skills/download-video --openclawFiles (1)
SKILL.md
2.0 KB
Video Download Skill
Download a video from $ARGUMENTS (a social media URL) to the current directory using yt-dlp.
Supports X/Twitter, YouTube, Instagram, TikTok, Reddit, and 1400+ other sites.
Process
- Verify yt-dlp is installed - check with
which yt-dlp, suggestbrew install yt-dlpif missing - Download the video in the best available quality
- Report results with filename, format, and file size
Download Command
yt-dlp -o "%(title)s.%(ext)s" "URL"
Options Reference
# Best video+audio (default)
yt-dlp -o "%(title)s.%(ext)s" "URL"
# List available formats first
yt-dlp -F "URL"
# Pick a specific format
yt-dlp -f "FORMAT_ID" -o "%(title)s.%(ext)s" "URL"
# Audio only (e.g. for podcasts)
yt-dlp -x --audio-format mp3 -o "%(title)s.%(ext)s" "URL"
# Custom output directory
yt-dlp -o "/path/to/dir/%(title)s.%(ext)s" "URL"
Platform-Specific Notes
| Platform | Notes |
|---|---|
| X/Twitter | Works with tweet URLs containing video. May need --cookies-from-browser for age-restricted content |
| YouTube | Supports playlists, channels, shorts. Use -F to pick resolution |
| Reels and stories supported. May require authentication for private accounts | |
| TikTok | Direct video URLs work. Watermark-free when available |
| Handles v.redd.it links with audio merging automatically |
After Download
- Verify the file:
ls -lh *.mp4(or whatever extension was downloaded) - Report the filename, format, resolution, and file size to the user
- If the user wants subtitles or a transcript, suggest using
/transcribe-video
Source
git clone https://github.com/rameerez/claude-code-startup-skills/blob/main/skills/download-video/SKILL.mdView on GitHub Overview
Download videos from social URLs to your local drive using yt-dlp. It supports X/Twitter, YouTube, Instagram, TikTok, Reddit, and 1400+ sites, enabling saving, transcription, or archiving of content.
How This Skill Works
The skill first verifies that yt-dlp is installed (prompting installation if needed), then downloads the video in the best available quality using the default output template. After download, it reports the filename, format, and file size to help you verify results.
When to Use It
- Saving a video locally from a social URL for offline viewing or reference.
- Extracting audio or a transcript from a video (using appropriate -x options).
- Archiving a video reference for reports, notes, or citations.
- Downloading playlists or multiple videos from YouTube, Twitter, or Instagram where supported.
- Organizing media with a custom output path to fit your workflow.
Quick Start
- Step 1: Ensure yt-dlp is installed: run `which yt-dlp` and install if missing (e.g., `brew install yt-dlp`).
- Step 2: Run the download: `yt-dlp -o "%(title)s.%(ext)s" "URL"`
- Step 3: Verify the downloaded file with `ls -lh` and report filename, format, and size.
Best Practices
- Verify yt-dlp is installed with which yt-dlp and install it if missing (e.g., brew install yt-dlp).
- Use -F to list available formats before choosing a specific format with -f.
- For audio-only needs, use -x --audio-format mp3 and set the output filename consistently.
- Use a dedicated output directory with -o to keep downloads organized.
- If you encounter age-restricted or private content, supply cookies from the browser or authenticate as needed.
Example Use Cases
- Save a Twitter video: yt-dlp -o '%(title)s.%(ext)s' 'URL'
- List formats before download: yt-dlp -F 'URL'
- Download YouTube video at best quality: yt-dlp -o '%(title)s.%(ext)s' 'URL'
- Audio-only for podcast: yt-dlp -x --audio-format mp3 -o '%(title)s.%(ext)s' 'URL'
- Download into a specific folder: yt-dlp -o '/path/to/dir/%(title)s.%(ext)s' 'URL'
Frequently Asked Questions
Add this skill to your agents