一个编程智能体,以及它由什么部件构成
多数编程智能体是一个单一程序。Pi 是那个,外加底下那些层、作为可供你构建的独立包发布。这个 monorepo 出厂带一个交互式编程智能体 CLI,但也带组装出这个 CLI 的统一 LLM API、智能体运行时和终端 UI 库。那个分离正是该看 pi、而非又一个智能体的理由:你可以用这个成品工具,或把某一层拉进你自己的项目,而同一套原语同时撑起两条路。
这些包干净地对应到各层:
@earendil-works/pi-ai:跨 OpenAI、Anthropic、Google 等的统一多服务商 LLM API。@earendil-works/pi-agent-core:智能体运行时,带工具调用和状态管理。@earendil-works/pi-coding-agent:交互式编程智能体 CLI 本身。@earendil-works/pi-tui:一个带差分渲染的终端 UI 库。
按设计可自我扩展
Pi 出厂带强默认值,但刻意不开箱带 sub-agent 和 plan 模式这类功能。它的答案不是一个设置菜单,而是扩展:你可以让 pi 构建你想要的能力,或装一个匹配你工作流的第三方 pi 包。这个智能体意在成长进你的需求、而非默认开启每个功能,这对一个由可复用部件搭成的工具是个连贯的立场。
项目还推一个不寻常的社区实践:把你真实的编程智能体会话作为开放数据发布,理由是智能体在真实任务、工具使用、失败和修复上比在玩具基准上进步更快。有一个配套工具把会话上传到 Hugging Face,维护者也发布自己的。你不必参与,但它标志着项目认为智能体质量到底从哪儿来。
安装
编程智能体从 npm 或一个脚本安装:
npm install -g --ignore-scripts @earendil-works/pi-coding-agent
或经安装器:
curl -fsSL https://pi.dev/install.sh | sh
--ignore-scripts 标志是刻意的:pi 在正常安装时不需要依赖的生命周期脚本,项目在自己记录的安装和 pi update --self 里也用这个标志,对一个以你的权限运行的工具,这是个明智的供应链默认值。
信任模型是个真功能,不是个唠叨
在交互式启动时,pi 会在一个含项目级扩展或设置的项目文件夹上、且它对那个文件夹或某个父级没有保存过决定时,先问你是否信任它。信任一个项目让 pi 加载 .pi/settings.json 和 .pi 资源、安装缺失的项目包、并执行项目扩展。那个提示要紧,因为 pi 可扩展、项目能携带可执行扩展;这个信任门正是阻止一个克隆来的仓库在首次启动时悄悄运行它自己的智能体代码的东西。它显眼到引来一个专门的反馈帖,而它对一个自我扩展的智能体是对的默认值。
tracker 显示了什么
Pi 截至 2026-06 只有 35 个 open issue、对着一个很大的 star 数,部分因为新贡献者的 issue 和 PR 默认被自动关闭、由维护者每日审阅,这是个不寻常的政策,如果你打算贡献值得知道。频繁发版(2026 年 6 月 v0.79.1)让它保持移动。open 帖子是具体的集成问题:一个 OpenAI Codex 路径会在被中止的零用量回合上挂起,以及一个 Kimi 模型经某个后端返回缺失 reasoning_content 的错误。这些是一个横跨众多服务商的工具包的接缝,不是疏于维护的迹象。
pi 与其它编程智能体的对比
| pi | aider | 通用智能体 | |
|---|---|---|---|
| Stars | 61,403 | 45,963 | 不一 |
| 形态 | 工具包加一个编程智能体 | 编程智能体 | 编程智能体 |
| 可复用层 | LLM API、运行时、TUI 作为包 | 单体 | 不一 |
| 扩展模型 | 让它构建,或装包 | 配置和标志 | 不一 |
计数取自 GitHub,截至 2026 年 6 月。aider 是成熟、聚焦的终端编程智能体,把活干得很好,但作为一个成品工具来消费。Claude Code 这类通用智能体同样是单体。Pi 与众不同的押注是把它的层作为包暴露、并倚靠自我扩展,所以如果你想在原语上构建、而不只是用 CLI,它就有吸引力。
相关
要把 pi 和其它编程工具及其配置一起管,见 cc-switch。要另一个模型聚焦更锐利的终端编程智能体,见 DeepSeek-Reasonix。想看还有什么在往上爬,见 LLM 工具、每日速报和周报。
FAQ
pi 是个编程智能体还是个库? 都是。它出厂带一个交互式编程智能体 CLI,外加它由之构建的统一 LLM API、智能体运行时和 TUI 库,作为独立的包。
怎么安装? npm install -g --ignore-scripts @earendil-works/pi-coding-agent,或 pi.dev/install.sh 脚本。
为什么它问是否信任一个文件夹? 项目能携带可执行的 pi 扩展。信任提示阻止一个克隆来的仓库在你批准之前运行它自己的智能体代码。
我能贡献吗? 注意新贡献者的 issue 和 PR 默认被自动关闭、由维护者每日审阅,所以开之前先读贡献指南。