yt-dlp-directlisted
Install: claude install-skill xiaomoBoy/claude-writing-skills
# yt-dlp Direct
这个 skill 只负责一件事:
- 直接用本机已安装的 `yt-dlp` CLI 处理在线视频或音频下载任务
不负责:
- 讲版权合规政策
- 绕开平台 DRM
- 用浏览器手动录屏替代下载
- 重新安装 `yt-dlp`
一句话原则���如果用户要下载、提音频、拿字幕、看格式、抓播放列表,优先直接用 `yt-dlp`,不要先写一堆脚本。
## When To Use
适用场景:
- 用户说“用 `yt-dlp` 下载这个视频”
- 用户说“帮我提成 mp3 / m4a”
- 用户说“把字幕也一起下了”
- 用户说“先看看有哪些格式”
- 用户说“下载整个 playlist / channel / 搜索结果”
- 用户说“这个站点能不能用 `yt-dlp`”
不适用场景:
- 用户只是想知道 `yt-dlp` 是什么
- 用户要破解 DRM 或受保护流
- 用户要做复杂媒体剪辑,真正该用 `ffmpeg`
## Preconditions
开始前先确认:
1. `yt-dlp` 在 PATH 中
2. 当前目录或目标目录可写
3. 如果任务涉及合并视频音频、转码、嵌入缩略图,最好已有 `ffmpeg`
优先检查:
```bash
which yt-dlp
yt-dlp --version
```
如需判断 `ffmpeg` 是否可用,可再看:
```bash
ffmpeg -version
ffprobe -version
```
## Working Rules
- 默认先做只读探测,再真正下载
- 不清楚格式时,先 `-F`
- 用户没指定落盘规则时,优先给安全输出模板
- 播放列表默认提醒数量和体积风险
- 涉及登录态时,优先 `--cookies-from-browser`
- 需要更稳定的 YouTube 支持时,记得 JavaScript runtime / ejs 依赖
- 不要擅自覆盖大量文件;必要时显式指定输出路径
## Core Workflow
### 1. Inspect First
先判断链接能不能被 extractor 识别:
```bash
yt-dlp --simulate --print "%(title)s" "<url>"
```
如果只是想看元信息而不下载:
```bash
yt-dlp --dump-single-json "<url>"
```
### 2. Check Formats Before Download
当用户要指定清晰度、编码、音轨,先看格式:
```bash
yt-dlp -F "<url>"
```
如果用户没明确要求,通常优先:
```bash
yt-dlp -f "bv*+ba/b" "<url>"
```
这也是 yt-dlp 当前默认偏好的组合思路。
### 3. Safe Single-Video Download
默认建议带输出模板:
```bash
yt-dlp -o "%(title)s [%(id)s].%(ext)s" "<url>"
```
如果需要固定目录:
```bash
yt-dlp -P "/target/dir" -o "%(title)s [%(id)s].%(ext)s" "<url>"
```
### 4. Extract Audio
用户要音频时,优先:
```bash
yt-dlp -x --audio-format mp3 "<u