# youtube-download — 便携技能包 把 YouTube 视频下成本地最高画质 MP4(最高 4K,内含最佳音质 Opus 音轨)。默认规格:只下视频版,不单独下音频;除非用户明确要求音频版。已处理好现代 yt-dlp 下 YouTube 的两个坑:JS 运行时 + 机器人检测 cookie。 ## 目录 ``` youtube-download/ ├─ SKILL.md # 技能说明(给 AI agent 读的:何时用、怎么用、坑) ├─ README.md # 本文件 └─ scripts/ ├─ yt-download.ps1 # Windows 一键脚本(自动装 yt-dlp/deno) └─ yt-download.sh # Linux/macOS 一键脚本 ``` ## 快速开始 **Windows** ```powershell powershell -ExecutionPolicy Bypass -File scripts\yt-download.ps1 "https://www.youtube.com/watch?v=VIDEO_ID" ``` 首次运行会自动把 `yt-dlp.exe` 和 `deno.exe` 下到 `scripts\bin\`。还需要系统装了 `ffmpeg`(`winget install Gyan.FFmpeg`)。 **Linux/macOS** ```bash bash scripts/yt-download.sh "https://www.youtube.com/watch?v=VIDEO_ID" ``` 需先装 `yt-dlp`、`ffmpeg`、以及 JS 运行时 `bun` / `deno` / `node` 任一(命令见 SKILL.md 顶部;脚本默认优先用 bun)。 ## 登录/受限视频要 cookie 公开视频不用管。如果报 `Sign in to confirm you're not a bot`: 1. 浏览器(已登录 YouTube)装扩展 **Get cookies.txt LOCALLY**。 2. 打开着 youtube.com 标签页,点扩展 → Export,得到 Netscape 格式 cookie 文件。 3. 改名为 `cookies.txt` 放进 `scripts/` 目录(脚本会自动带上)。 4. 报“cookies no longer valid”时重新导出覆盖即可。 ⚠️ cookie 是你的登录凭证,别外发、别提交到 git。本包**不含** cookie。 ## 在 Codex / 其他 agent 里用 Codex(OpenAI CLI)没有 Claude 那种正式 skill 装载机制,但这个包是纯文档 + 脚本,任何 agent 都能用: - 把整个 `youtube-download/` 文件夹放进项目,或放到 Codex 能读到的位置。 - 在项目根的 `AGENTS.md` 里加一句指路,例如: > 需要下载 YouTube 视频时,读 `youtube-download/SKILL.md` 并运行其中的脚本。 - 或直接让 Codex “按 youtube-download/SKILL.md 的方法下这个链接”。 如果目标是 **Claude Code / Claude Agent**:把 `youtube-download/` 整个放进 `~/.claude/skills/`(或项目的 `.claude/skills/`)即可作为技能被自动发现(靠 SKILL.md 的 frontmatter)。