先说结论

一个由 Flask 作者 mitsuhiko 与 libGDX 作者 badlogic 参与的开源编码 Agent,13 个月冲到 10 万+ 星标。代码是真在写、issue 也真在开,但星标数与关注数之比约 320:1,明显反常——热度要打折看。它最大的硬伤是默认不带权限沙箱,裸跑等于把文件系统、进程和网络凭据交给 Agent。

它到底是什么

Pi 不是单个工具,而是一个名为 Pi Agent Harness 的 monorepo,核心是「可自我扩展的编码 Agent」。拆开看由几个包组成:

做什么
pi-coding-agent交互式编码 Agent 命令行
pi-agent-coreAgent 运行时(工具调用、状态管理)
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 实测。