61,915 颗星、V3.17.2 刚发:四岁高龄的 tw93/Pake,靠一条「给 AI Agent 的 –json」悄悄完成了关键转向
61,915 颗星、V3.17.2 刚发:四岁高龄的 tw93/Pake,靠一条「给 AI Agent 的 --json」悄悄完成了关键转向
项目链接:https://github.com/tw93/Pake
作者博客:https://tw93.fun/2023-08-03/pake.html
官方介绍:https://pake.aicompass.dev/
61,915 颗星、12,741 Fork、过去 30 天仍在更新,Open Issues 只有 5 个——这不是什么新项目,这是 2022 年 10 月由阿里前端工程师 tw93 开源的「把网页打包成桌面 App」工具 Pake。四年过去,它依然挤在 GitHub Trending 里。原因不只是「~5MB、20 倍小于 Electron」的老梗,而是今年 7 月发布的 V3.15.1「Bridge」悄悄加上了一个 --json 模式,让它从「人类的网页套壳玩具」正式变成「AI Agent 的桌面打包器」。
这个转向值得展开讲讲。
它到底解决什么问题
做前端的人都知道:「我想把一个网页变成 Mac/Windows/Linux 桌面 App」听上去简单,做起来只有两条路:要么上 Electron,结果一个 Hello World 都要 100MB+、内存动辄几百兆;要么走 Tauri/系统 WebView,但 Tauri 本身是个框架,要写 Rust、写前端、写 tauri.conf.json,门槛高到劝退。
Pake 把第二条路缩成一条命令:
pnpm install -g pake-cli
pake https://weekly.tw93.fun --name Weekly --transparent
输出一个 5MB 左右的 .app 或 .msi 或 .AppImage,自带原生菜单、全局快捷键、沉浸式窗口、拖拽、去广告、CSS/JS 注入。它不打包 Chromium,直接复用系统的 WebView(macOS WKWebView / Windows WebView2 / Linux WebKitGTK),所以才做到官方 README 里那句「相比 Electron 套壳打包,要小将近 40 倍」。
四年来累计打包过 WeRead、Twitter、Grok、DeepSeek、ChatGPT、YouTube Music、小红书等十几款日常应用,README 里直接给了 DMG 下载——非开发者双击装就行,开发者用 CLI 打自己的,老手 Clone 下来魔改。
真正让人注意到它的,是 V3.15.1 那个 --json
如果你读 Pake 最近 5 个 release notes(V3.17.2、V3.17.0、V3.16.3、V3.15.6、V3.15.1,GitHub Releases),会发现一个明显的分水岭:V3.15.1 之前都是修 bug、改兼容、补快捷键;V3.15.1 之后开始出现面向自动化场景的接口:
--json机器可读模式:stdout 严格只输出一个 JSON 结果,错误码稳定,日志全部走 stderr。这一条直接面向脚本和 AI Agent,CLI 从「给人用」变成「给程序用」。--config app.json声明式打包,参数范围、schema 全公开,配[url](https://json-schema.org/)校验,「CLI 旗标优先」的优先级规则清楚写明。- V3.16.3 加
--download-dir,把下载行为管成可观察的资源,错误路径返回明确。 - V3.17.2 修了 Linux 视频播放崩、WebKitGTK 硬件加速兼容、Wayland 全屏控件丢失——也就是说它在把生产可用性当真正的事做。
更值得注意的是 AGENTS.md 和 .claude-plugin 目录:仓库结构 已经把 Pake 自身当成 AI 编程 Agent 的协作对象来组织,并且 tw93 已经把这个 Skill 推到了 Claude Code Plugin Marketplace。V3.15.1 的 --json 不是孤立补丁,而是整条「为 Agent 重写 CLI」的产品线。
项目边界:什么时候该用,什么时候算了
适合用:
- 你想把自家 SaaS 包装成桌面客户端分发给客户,不希望用户先装 200MB Chromium;
- 你是 macOS 重度用户,希望微信读书 / Twitter / YouTube Music / Notion 变成独立窗口,配合全局快捷键和系统托盘;
- 你在做 AI Agent 工具链,希望「让 Agent 把某个网站打包成桌面应用」成为可编程动作——
--json+--config这一套正好是给 Agent 用的; - 你需要 ARM64 Linux 支持(Raspberry Pi、Linux 笔记本),Tauri 的天然好处直接继承。
不该省事的人:
- 网站本身有 Google 登录等会检测非标准 WebView 的流程,套壳会被风控挡掉(README FAQ 已明确说明);
- 你需要完整 Node.js API、深度系统集成、复杂的多窗口 IPC——这是 Electron 的领地,不是 Pake 的;
- 你不能接受 GPL-3.0:Pake 主仓库在 2026 年 6 月从 MIT 换到了 GPL-3.0(commit message:「relicense from MIT to GPL-3.0 with a Pake Output Exception」)。但是 Pake Output Exception 写得相当清楚:你用 Pake 打包出来的产物完全归你,不再传染 GPL;只有你 fork Pake 源码本身去发新闭源产品才会被传染。商业化打包用户基本可以放心。
- Windows 用户必须知道一个坑:路径过深时 Tauri linker 会撞上 LNK1104,要么把项目挪到磁盘根目录,要么开长路径支持;GitHub Issues 里 30% 的 Windows 报错都是这一个原因。
数据说话
| 维度 | Pake | Electron |
|---|---|---|
| 安装包体积 | ~5MB | ~100MB+ |
| 内存占用 | 系统 WebView 共享 | 自带 Chromium 进程 |
| 冷启动 | 接近原生 | 1–2 秒 |
| GitHub Stars | 61,915 | – |
| Forks | 12,741 | – |
| 最近 12 个月增长 | +55%(OpenAPI 仓库统计) | – |
| Open Issues | 5 | – |
Pake 不抢 Electron 的市场,它做的是把「套壳网页」这件事的成本从「做一套桌面 App」降到「跑一条命令」,中间让出整整一个量级的空间。
怎么用
最快路径:装 macOS 就下 README 里的 DMG;不想装东西就直接用 GitHub Actions 在线构建,仓库文档里写得很清楚,CI 出工程就出 install 包。
需要定制:
pake https://example.com
--name MyApp
--icon ./logo.png
--width 1280 --height 800
--hide-title-bar
--transparent
给 Agent 用:
pake https://example.com --name MyApp --json
# stdout: {"ok":true,"path":"/path/MyApp.dmg","size_mb":4.9}
想贡献代码:本地需要 Rust ≥1.85 和 Node ≥22(推荐 LTS;≥18 也行),pnpm i && pnpm run dev 起服务,Tauri 文档 跟着配。
下一步建议
- 先用一个日常网站做 PoC:拿微信读书或者 Notion,打一个 DMG 体验一下 5MB 体积和原生菜单的丝滑度,感受下 V3.17.2 的 Wayland 修复。
- 如果你是 Agent 作者:把 Pake CLI 当成你工具链的一环——它现在已经是
pake URL --json的形态了,标准 exit code、机器可读 schema,可以直接挂进 Agent 调度器。 - 如果你是独立开发者做 SaaS:把 Pake 当「轻量桌面端」的预制件,零前端工作量快速给客户一个 Native-feel 应用,避开 Electron 的体积和内存税。
- 不要 fork 它做闭源商业产品:GPL-3.0 是真的,但你拿去打包客户网站完全没问题,这点 LICENSE-EXCEPTION 已经说清楚。
四年了,Pake 没换赛道,它只是把「把网页变成桌面应用」这件事做到了 「AI Agent 也能用」的形态。这种「不被 AI 替代、反而给 AI 打工」的工具,往往比那些追热点的项目活得长。
配套讨论参考:
- GitHub 仓库:https://github.com/tw93/Pake
- 作者原始思路(2023 年):https://tw93.fun/2023-08-03/pake.html
- 英文版技术博客:https://tw93.fun/en/2023-08-03/pake.html
- 中文社区评价(Threads):https://www.threads.com/@meta.ai/post/DbaiZ1cDgCO/
- 中文评测(cnblogs):https://www.cnblogs.com/zhang-yd/p/20685208
- 项目介绍站(aicompass):http://bittide.aicompass.dev/article/3c75ed0f-76da-4db6-8a5d-385f1ebda77c
- ghTrends 趋势:https://ghtrends.dev/tw93/Pake/
- Homebrew Formula:https://formulae.brew.sh/formula/pake
评论区
登录后可评论。