先说结论
一个由 Flask 作者 mitsuhiko 与 libGDX 作者 badlogic 参与的开源编码 Agent,13 个月冲到 10 万+ 星标。代码是真在写、issue 也真在开,但星标数与关注数之比约 320:1,明显反常——热度要打折看。它最大的硬伤是默认不带权限沙箱,裸跑等于把文件系统、进程和网络凭据交给 Agent。
它到底是什么
Pi 不是单个工具,而是一个名为 Pi Agent Harness 的 monorepo,核心是「可自我扩展的编码 Agent」。拆开看由几个包组成:
| 包 | 做什么 |
|---|---|
| pi-coding-agent | 交互式编码 Agent 命令行 |
| pi-agent-core | Agent 运行时(工具调用、状态管理) |
| pi-ai | 统一多模型 LLM API(OpenAI / Anthropic / Google / 本地) |
| pi-tui | 带差量渲染的终端 UI 库 |
| chord / pi-telemetry | 应用组合运行时 / 厂商中立遥测契约 |
最大卖点是 pi-ai 这一层统一 API:换模型不用改业务代码,OpenAI、Anthropic、Google 乃至本地 llama.cpp 都能接。许可是 MIT,可商用、可改。
怎么用(命令逐字取自 README)
从源码开发:
npm install --ignore-scripts npm run build npm run check ./pi-test.sh
从发布源码打独立二进制(linux-x64 例):
VERSION="<release-version>"
tar -xzf "pi-${VERSION}-source.tar.gz"
cd "pi-${VERSION}"
./scripts/build-binaries.sh --offline-model-data --platform linux-x64 --out "$PWD/out"
注意:它不内置模型,需要你自己的 LLM key 或本地推理;Windows 目前支持仍糙(见下)。
优点
- MIT 许可,可商用、可改、无 copyleft 包袱。
- 统一多模型 API,不绑死任何一家云厂商,本地模型也能接。
- 供应链 hardening 是真做了:依赖锁版本、npm-shrinkwrap、安装走 --ignore-scripts、CI 跑 npm audit。
- 真在迭代:issue 编号已到 9600+,当天仍有新 bug 报上来。
缺点与风险(实测)
三个要命的点
- 默认没有权限沙箱:README 明写「Pi does not include a built-in permission system」,以启动用户权限跑,能碰文件系统、进程、网络、凭据。官方建议容器化(Gondolin / 纯 Docker / OpenShell)。
- 星标与关注比 320:1:API 实测 105,508 星标、仅 330 关注,比例远超正常项目,热度要先打折。
- 自动压缩有破坏性 bug:空 body 的 400 被误判为上下文溢出,可吞掉约 40 万 token(issue #9482)。长会话要警惕。
另外两个真实短板:Windows 体验仍糙(issue #7547 有 62 条讨论,ConPTY 渲染、CJK 输入法卡顿);新贡献者的 issue / PR 默认自动关闭,等维护者每天复查。
最终效果:适合谁、不适合谁
适合:已经在用 Claude Code / Codex 类、想要多模型统一 + 自托管、愿意用容器把 Agent 隔离起来的开发者。
不适合:想要开箱即用的新手、Windows 主力、不愿自己管模型 key 的人。
落地三坑:① 别裸跑,先容器化;② 别被星标数吓到;③ 长会话留意自动压缩,关键上下文手动备份。
下期预告:把本地模型接进 Pi——用 Ollama 跑一个完全离线、不花 API 钱的编码面板。
数据来源:GitHub Trending 官方页 + github.com/earendil-works/pi 仓库页 / API / raw README / issues(抓取时间 2026-09-16)。MIT 许可,星标与关注数来自 API 实测。
