yoinks 是基于 TypeScript 的终端视频下载工具,借助 yt-dlp 处理多个网站的视频,并提供格式选择界面,可保存视频或提取 MP3 音频。
项目做什么
项目旨在让用户从终端粘贴或输入视频链接,选择可用的视频分辨率或 MP3 音频格式后进行下载。README 列出 YouTube、X/Twitter、Instagram、Threads、TikTok 等网站,并称支持 1,800 多个网站;实际可用性仍取决于 yt-dlp、平台及具体链接。
与同类方案相比
README 描述了全屏终端交互界面,支持键盘和鼠标操作,并展示分辨率及预估文件大小。文件默认保存至用户的 Downloads 目录,完成后显示路径;工具还可使用终端配色或切换明暗主题,首次运行可自动获取 yt-dlp,降低手动配置门槛。
设计与创新
从提供的简介和 README 可以确认,该项目将 yt-dlp 下载能力包装为带格式选择界面的终端应用,并通过 Ink 构建界面;但没有足够依据证明其技术方案相较其他工具具有创新性、独特性或性能优势,因此此类比较尚无法验证。
适用场景
适用于希望在终端中下载单个视频、选择分辨率,或从支持的链接提取 MP3 音频的个人用户。用户可传入链接直接进入格式选择,也可先启动程序再输入链接。README 将其定位为个人存档工具,并提醒下载内容可能涉及平台服务条款。
谁会受益
对于不想使用网页弹窗或仿冒下载按钮、且熟悉命令行的用户,集中输入链接、选择格式和查看保存路径的流程可能较为直接。它也提供 npx 临时运行方式。是否适合具体工作流,还需结合目标网站支持情况、终端环境和下载权限判断。
使用前需要注意
运行要求为 Node.js 18 或更高版本,合并高清流和提取 MP3 需要 ffmpeg,尽管项目说明会尝试查找或提供相关组件。播放列表及含多个视频的线程支持、指定输出目录、跳过选择器的脚本参数等均列为待办事项;下载也可能违反平台条款,用户需确保拥有保存内容的权利。
本文基于抓取时的项目 README 和仓库简介整理;功能、限制与文档可能随项目更新而变化。