youtube-downloader
作者 ComposioHQyoutube-downloader 是一个 File Automation skill,用于保存单个 YouTube 视频,或通过 Python yt-dlp wrapper 提取 MP3 音频。它支持选择画质、mp4/webm/mkv 格式、仅音频模式,以及自定义输出文件夹。
该 skill 得分为 74/100,表示可以收录进目录,但应定位为实用、范围较窄的工具,并提示采用时的注意事项。目录用户可以获得足够信息来判断何时安装它,以及 agent 会如何调用它;不过其依赖处理、政策/权利指引和边界场景文档仍较有限。
- 触发条件和适用范围清晰:frontmatter 告诉 agent,当用户要求下载、保存或抓取 YouTube 视频时使用它。
- 提供可执行脚本、快速上手命令、默认输出路径,以及质量、格式、仅音频和自定义输出目录选项的示例。
- 相比通用提示词更具操作价值,因为脚本封装了 yt-dlp 命令,并为常见下载选择提供了简单的 CLI flags。
- SKILL.md 中没有安装命令或依赖说明;脚本会使用带有 --break-system-packages 的 pip 自动安装 yt-dlp,在某些环境中可能并不合适。
- 文档未提及 YouTube 条款、版权、身份验证、播放列表、下载失败或其他边界情况,因此在处理非简单下载时,agent 可能需要额外判断。
youtube-downloader skill 概览
youtube-downloader skill 能做什么
youtube-downloader skill 是一个 File Automation skill,用于通过一个围绕 yt-dlp 的轻量 Python wrapper 保存 YouTube 视频,或提取 MP3 音频。它最适合那些希望让 agent 处理明确下载任务的用户:提供源 URL、输出文件夹、视频清晰度、容器格式,或选择仅音频模式。
适合的用户和任务
当你需要的是可重复执行的本地文件输出,而不是关于“如何下载”的对话式说明时,可以使用这个 skill。它适用于归档已获许可的视频、准备离线审阅文件、保存内部工作参考片段,或从你有权下载的视频中提取音频等流程。尤其是在 agent 可以运行 shell 命令,并能写入 /mnt/user-data/outputs/ 或其他指定目录时,这个 skill 会更有用。
核心能力和边界
该 skill 支持 best、1080p、720p、480p、360p 和 worst 清晰度设置;支持 mp4、webm 和 mkv 视频格式;也支持通过 --audio-only 提取 MP3 音频。它不是播放列表管理器、元数据编辑器、字幕工作流工具,也不是媒体库整理工具。脚本调用 yt-dlp 时使用了 --no-playlist,因此除非修改实现,否则用户应预期每次运行只处理一个视频 URL。
采用前需要考虑的事项
相比泛泛地写一个 prompt,这个 skill 的主要价值在于它已经提供了可执行命令和 scripts/download_video.py 辅助脚本。主要门槛在运行环境:必须有 Python,必须允许下载,并且 yt-dlp 要么已经安装,要么能由脚本安装。音频提取也可能依赖 ffmpeg 等媒体工具,具体取决于运行环境和 yt-dlp 的行为。
如何使用 youtube-downloader skill
youtube-downloader 安装背景
从仓库路径安装该 skill:
npx skills add ComposioHQ/awesome-claude-skills --skill video-downloader
然后先查看两个重要文件:SKILL.md 用于了解支持的选项,scripts/download_video.py 用于确认实际执行行为。脚本才是默认值的准确信息来源:输出路径为 /mnt/user-data/outputs,默认清晰度为 best,默认格式为 mp4,开启 audio-only 模式时输出 MP3。
skill 需要哪些输入
一个好的 youtube-downloader 使用请求应包含:
- 准确的 YouTube URL
- 你想要视频还是仅音频
- 偏好的清晰度,例如
720p或best - 偏好的视频格式,例如
mp4或webm - 如果不接受默认位置,请提供输出目录
- 任何法律或操作限制,例如“只下载这一个视频”
最小可用 prompt:
Download this YouTube video as MP4 in best quality:
https://www.youtube.com/watch?v=VIDEO_ID
更好的 prompt:
Use the youtube-downloader skill to download only this single video:
https://www.youtube.com/watch?v=VIDEO_ID. Save it asmp4, target720p, and put the result in/mnt/user-data/outputs/project-a/. If the requested quality is unavailable, use the closest lower quality and tell me the final file path.
实用命令和工作流
直接命令模式如下:
python scripts/download_video.py "https://www.youtube.com/watch?v=VIDEO_ID"
常见变体:
python scripts/download_video.py "URL" -q 1080p -f mp4
python scripts/download_video.py "URL" -q 720p -f webm -o /mnt/user-data/outputs/videos
python scripts/download_video.py "URL" -a -o /mnt/user-data/outputs/audio
一个更稳妥的工作流是:确认 URL,选择输出类型,先运行一次下载,核对生成的文件路径,然后仅在输出文件过大、不兼容或请求的清晰度不可用时,再调整清晰度或格式。
提升 File Automation 效果的技巧
在用于 File Automation 的 youtube-downloader 场景中,避免使用“grab that video”这类含糊请求。请在一条消息里同时提供 URL 和目标结果。如果兼容性很重要,选择 mp4;如果文件大小更重要,使用 720p、480p 或仅音频。如果环境受限,可以要求 agent 在下载前先检查 yt-dlp --version,这样可以及早发现依赖问题。
youtube-downloader skill 常见问题
这比直接让 AI 下载视频更好吗?
是的,前提是可用工具执行能力。普通 prompt 可能只会解释 yt-dlp;这个 skill 则给 agent 提供了具体脚本、可接受的 flags 和默认输出位置。这样可以减少猜测,并让 youtube-downloader 在重复请求中的使用更一致。
youtube-downloader 安装后实际添加了什么?
安装会添加 skill 说明,以及位于 scripts/download_video.py 的辅助脚本。脚本会检查 yt-dlp,如果缺失,会尝试用 Python pip 安装。它不会打包 YouTube 内容,不会绕过访问控制,也不能替代一个可正常工作的命令行环境。
新手可以使用这个 skill 吗?
可以,只要能提供有效的 YouTube URL,并选择 mp4、720p 这类简单选项即可。新手应先从默认命令开始,只有在明确知道要改什么时,再添加 -q、-f、-a 或 -o。
什么时候不该使用它?
不要将这个 skill 用于你无权下载的内容、受 DRM 保护或受限制的内容,也不要用于需要播放列表、字幕、批量队列、命名模板或后处理的工作流。在这些场景下,应把它视为一个起步脚本,而不是完整的媒体自动化系统。
如何改进 youtube-downloader skill
改进 youtube-downloader prompts
更好的 prompt 会带来更好的自动化结果。请写清楚期望结果,而不只是动作:
Download the video at
URLasmp4in720p, save it to/mnt/user-data/outputs/client-review/, and report the final filename and size.
这能帮助 agent 选择正确的 flags 并验证输出,而不是只运行默认命令。
处理常见失败模式
常见失败包括请求的清晰度不可用、缺少 yt-dlp、提取 MP3 时缺少 ffmpeg、网络访问受阻、URL 无效,以及输出目录写入权限错误。下载失败时,请让 agent 输出准确的命令和错误信息;这比用同样含糊的请求反复重试更快。
增强输出控制
如果你打算经常依赖这个 skill,可以考虑改进 scripts/download_video.py,加入文件名模板、覆盖保护、文件存在检查、时长限制,以及更清晰的成功输出。这些改动很重要,因为用户通常更关心的不是“下载已开始”,而是文件最终保存在哪里、能否播放,以及是否符合请求的清晰度。
基于第一次输出继续迭代
第一次运行后,检查文件路径、扩展名、大小和播放兼容性。如果文件太大,用 720p 或 480p 重新运行。如果需要广泛分享,优先选择 mp4。如果只需要语音或音乐,用 --audio-only 重新运行。这样能让 youtube-downloader 指南保持实用:先得到一个成功生成的文件,再优化格式和清晰度。
