🧭 决策指南
为什么现在热: README强调支持1,800+网站、无需Python、可用npx运行,并主打无弹窗和无假下载按钮;但材料没有说明这些因素是否导致项目在2026-10-02登上daily Trending。
适合,如果你
-
你使用Node 18+,想从YouTube、X/Twitter、Instagram或TikTok下载视频。README的Install章节要求Node 18+;正文列出YouTube、X/Twitter、Instagram、Threads、TikTok及1,800+网站。
-
你希望用npx直接运行,并通过Ink界面选择分辨率或audio-only mp3。Install章节提供npx yoinks;Usage章节说明可选择resolution或audio-only mp3,How it works章节说明UI使用Ink。
-
你需要yt-dlp能力但不想单独安装Python。How it works章节说明首次运行下载standalone yt-dlp binary到~/.yoinks/bin,并注明no Python required。
不适合,如果你
-
你需要脚本模式中的--best或--mp3,或需要-o指定输出目录。Roadmap将--best、--mp3和-o列为未完成项。
-
你需要Playlist、thread-with-multiple-videos或剪贴板自动检测。Roadmap将Playlist / thread-with-multiple-videos和Clipboard detection列为未完成项。
-
你的下载用途可能违反平台条款,或你需要项目明确提供商业合规保证。A note on fair use章节明确提醒下载内容可能违反平台terms of service,并要求只下载有权保留的内容。
-
你偏好有正式版本和多人维护信号的依赖工具。项目元数据显示贡献者1人、版本发布0个、最新版本No releases。
前置条件
- Node 18+
- README说明Everything else (yt-dlp, ffmpeg) is fetched or bundled automatically
- 高分辨率流合并和mp3提取需要ffmpeg;README说明其从PATH查找,并以ffmpeg-static作为bundled fallback
- 默认输出目录为~/Downloads
第一步命令(README 原文)
npx yoinks
要注意
-
首次运行会把standalone yt-dlp binary下载到~/.yoinks/bin。README的How it works章节。
-
ffmpeg不在PATH时会依赖ffmpeg-static,且它负责高分辨率合并和mp3提取。README的How it works章节。
-
yoinks会接管终端全屏,并在退出时恢复scrollback。README的Usage章节。
-
Roadmap中的yt-dlp自更新(yt-dlp -U)尚未实现。README的Roadmap章节。
替代方案
-
yt-dlp:需要直接使用yt-dlp命令行参数、绕过yoinks的交互式格式选择,或使用其自身更新机制时更合适。How it works;通用领域知识
材料未说明
- README没有说明支持的操作系统范围。
- README没有说明各平台是否需要登录、Cookie或如何处理受限内容。
- README没有给出支持的具体格式列表、编码器选择或文件命名规则。
- README没有说明下载失败、限速、网络中断和重试行为。
- README没有说明1,800+网站支持对应的yt-dlp版本或兼容性范围。
- README没有说明npm包的具体版本号,也没有正式GitHub Release。
💡 深度解析
6
不适合
我正在维护一个批量媒体处理脚本,希望用 `--best` 或 `--mp3` 跳过交互式选择,并用 `-o` 指定输出目录;当前的 yoinks 能直接接入吗?
不适合当前的自动化接入,因为 README 把这些脚本化参数列在尚未完成的路线图中。
- Roadmap 中
--best / --mp3 flags to skip the picker (scriptable mode)仍是未勾选状态。 -o选择输出目录同样尚未实现;当前 Usage 只说明文件固定保存到~/Downloads。- 当前工具启动后进入全屏交互界面,需要选择格式;这不符合无交互批处理的输入模型。
- README 说明底层由 yt-dlp 驱动,因此直接使用 yt-dlp 更接近已有脚本的参数化需求。
这不是说 yoinks 永远不能用于流水线,而是当前公开功能没有承诺稳定的脚本模式、输出目录参数或批量任务接口。播放列表和多视频线程支持也仍在路线图中。
- README「Roadmap」:`--best` / `--mp3` flags to skip the picker 尚未勾选
- README「Roadmap」:`-o` to choose the output folder 尚未勾选
- README「Usage」:格式需要通过交互式 picker 选择;文件保存到 `~/Downloads`
- README「Roadmap」:Playlist / thread-with-multiple-videos support 尚未完成
适合
我不想记 yt-dlp 的复杂格式参数,但能使用终端;我希望通过方向键、j/k、数字键或鼠标选择分辨率,并能在深色和浅色终端间切换,yoinks 是否更合适?
适合,因为 README 明确把格式选择和终端交互做成可视化流程,降低了记忆 yt-dlp 参数的要求。
- Usage 支持方向键、j/k、数字键和鼠标选择格式,Esc 返回,Ctrl-C 退出。
- Ink 提供全屏、居中界面,并在退出时恢复终端滚动缓冲区。
- 主题支持
auto、light、dark,其中 auto 使用终端自身的前景色和背景色。 - 用户可以通过
yoinks <url>直接进入 picker,也可以不带参数启动后再输入 URL。
它仍要求用户理解终端交互和视频格式与 MP3 的区别;如果需求是无界面脚本化下载,当前路线图中的自动化参数尚未实现。
- README「Usage」:↑/↓、j/k、number keys、mouse、Esc 和 `^c`
- README「Usage」:full-screen, centered — and restores your scrollback on exit
- README「Usage」:主题包括 `auto`、`light`、`dark`
- README「How it works」:The UI is Ink — React for the terminal
yoinks https://youtu.be/dQw4w9WgXcQ
适合
我主要从 YouTube、X/Twitter、Instagram、Threads 和 TikTok 保存自己有权保留的视频,希望在终端里完成下载,不想处理弹窗、伪按钮和可疑跳转,yoinks 适合我吗?
适合,因为它正是把多站点下载包装成终端中的“粘贴、选择、完成”流程。
- README 明确列出 YouTube、X/Twitter、Instagram、Threads、TikTok 及“1,800+ other sites”。
- 运行
yoinks <url>会直接进入格式选择器,也可以裸启动后输入 URL。 - 下载文件默认保存到
~/Downloads,完成后会把文件路径打印到终端。 - README 明确强调“No popups, no fake download buttons, no sketchy redirects”。
但它仍依赖 yt-dlp 和目标平台状态;登录、地区限制、私有内容或平台改版不由 yoinks 独立解决。使用范围也受平台条款和内容权利约束。
- README「yoinks」:下载 YouTube、X/Twitter、Instagram、Threads、TikTok 和 1,800+ other sites
- README「Usage」:`yoinks https://youtu.be/...`;Files are saved to `~/Downloads`
- README「yoinks」:No popups, no fake download buttons, no sketchy redirects
- 项目洞察「usage_limitations」:本质上是 yt-dlp 的交互式封装
npx yoinks
不适合
我在 Node.js 18+ 的服务器或容器中运行工具,需要把下载结果写入指定工作目录,而不是 `~/Downloads`,并希望避免自动把二进制放到用户主目录;yoinks 适合吗?
不适合这种严格目录隔离环境,因为当前 README 只支持固定的 ~/Downloads 输出,并会把自动获取的 yt-dlp 放到用户主目录下的目录。
- Usage 明确写着文件保存到
~/Downloads,而-o自定义输出目录仍在 Roadmap。 - How it works 说明首次运行会把独立 yt-dlp 下载到
~/.yoinks/bin。 - 工具使用 Ink 接管全屏终端;服务器或容器若没有完整 TTY,交互界面可能不符合运行环境。
- README 要求 Node 18+,但没有给出容器、无家目录用户或无 TTY 模式的部署说明。
如果目标是服务端批处理、可控目录和非交互运行,当前文档化能力不足;它更偏向个人终端使用。
- README「Usage」:Files are saved to `~/Downloads`
- README「Roadmap」:`-o` to choose the output folder 尚未完成
- README「How it works」:下载 yt-dlp 到 `~/.yoinks/bin`
- 项目洞察「usage_limitations」:不适合服务器、容器、共享机器或严格目录隔离环境
视情况
我使用 Node.js 18+,需要从支持的网站提取 MP3 或合并高分辨率视频流,但不想单独安装 Python 和手动配置 yt-dlp、ffmpeg,yoinks 是否适合?
视情况:依赖安装顺利时适合,但 MP3 和高分辨率合并仍取决于 ffmpeg 是否可用。
- README 要求 Node 18+,并说明 yt-dlp、ffmpeg 会被自动获取或打包,因此不要求用户手工准备 Python。
- yt-dlp 首次运行会下载到
~/.yoinks/bin;若系统已有 yt-dlp,则优先使用系统版本。 - ffmpeg 会先从 PATH 查找,并以
ffmpeg-static作为回退;它用于高分辨率流合并和 MP3 提取。 - 格式选择器明确支持选择分辨率或 audio-only mp3。
如果网络、权限或回退二进制不可用,转换和合并可能失败。README 没有给出 ffmpeg 版本兼容矩阵,也没有说明不同平台回退包的覆盖情况。
- README「Install」:Requires Node 18+. Everything else (yt-dlp, ffmpeg) is fetched or bundled automatically
- README「How it works」:yt-dlp 下载到 `~/.yoinks/bin`;no Python required
- README「How it works」:ffmpeg 用于 merging high-res streams and mp3 extraction
- README「Usage」:pick a resolution (or audio-only mp3)
npx yoinks
视情况
我维护 TypeScript/Node.js 18+ 工具,希望基于一个 MIT 项目扩展终端下载流程;我需要 npm/npx 分发、tsup 构建和可修改的 Ink React UI,yoinks 值得作为基础吗?
视情况:作为交互层和 npm CLI 原型基础值得考虑,但不应把它当作完整下载引擎或成熟发布产品。
- 项目主语言是 TypeScript,README 的开发流程使用
tsup将代码打包到dist/。 - How it works 说明 UI 使用 Ink,即 terminal 中的 React;这便于继续改造格式选择、状态展示和主题交互。
- README 已支持
npm install -g yoinks与npx yoinks,并使用 MIT License,适合分发和二次开发。 - 下载能力主要来自 yt-dlp,ffmpeg 负责高分辨率合并和 MP3 提取;yoinks 的职责更接近流程编排。
如果你需要稳定 API、已发布 Release、批处理参数或自更新机制,当前项目资料不足;Roadmap 仍列有脚本模式和 yt-dlp 自更新。
- 项目核心数据:主语言 TypeScript;许可证 MIT License;release_count 为 0
- README「Development」:`npm run build`、bundle to `dist/` with tsup
- README「How it works」:The UI is Ink — React for the terminal
- README「Install」与「Roadmap」:支持 npm/npx;自更新和脚本模式仍未完成
npm install
✨ 核心亮点
-
支持YouTube、TikTok及1,800+网站
-
yt-dlp自动获取,首次运行无需Python
-
Ink终端界面支持键盘与鼠标操作
-
项目仅1位贡献者且暂无版本发布
🔧 工程化
-
用yoinks粘贴URL、选择分辨率或mp3并保存到~/Downloads。
-
基于yt-dlp下载,ffmpeg负责高分辨率合并和mp3提取。
-
Ink提供全屏终端UI,支持↑/↓、j/k、数字键和鼠标。
⚠️ 风险
-
高分辨率合并和mp3提取依赖PATH中的ffmpeg或ffmpeg-static。
-
Roadmap中的--best、--mp3和-o仍未完成。
-
README提醒下载内容可能违反平台条款,项目仅用于个人归档。
-
仅1位贡献者、0个版本发布,维护成熟度信号有限。
👥 适合谁?
-
需要在Node 18+终端下载YouTube或TikTok视频的开发者。
-
偏好Ink交互界面、不想安装Python的命令行用户。
-
需要通过npx快速运行个人视频归档工具的人。