简介
Pi Agent当前已经深受社区的认可。 截至这篇文章的写作,Pi Agent已经
- 在github上获取了96k star,已经接近大名鼎鼎的Codex(113k star)。
- 在npm上发行的pi-agent-core已经达到193万次周下载
- Pi官方插件市场已经索引近6000个插件包
- OpenClaw曾经直接建立在Pi runtime上
Pi Agent其实才是上限最高的Agent。
Codex和ClaudeCode在系统提示词里塞了大量规则,接入全套工具。使得他们确实开箱即用,而且能处理大部分问题。
只不过速度很慢,还容易做一些我们预期之外的工作。
如果你“受够了繁文缛节”,那欢迎来玩Pi。
初体验
推荐使用npm安装Pi。
npm install -g --ignore-scripts @earendil-works/pi-coding-agent
在工作目录输入
pi
启动pi终端交互界面。
你可以用/login登录。这可以接入你的Codex等订阅额度。
当你第一次给Pi指派任务,就会发现Pi完成任务非常快,不会拐弯磨脚,也懒得仔细验证。
这是因为Pi的系统提示词非常简单。
初始条件下也只接入了4个工具:
- bash: 命令行工具
- read: 读文件
- write: 写文件
- edit: 编辑文件
Agent Core
Pi的插件系统博大精深。要讲清楚并不容易。
先要讲一讲裸Pi是如何运行的。知道这个以后,会很容易理解Pi插件系统的是如何运作的,进一步用好Pi生态。
一次最基本的Pi任务运行过程如下
- 用户输入提示词
- Pi harness拼装第一次请求的提示词
- 系统提示词
- 工具信息
- 全局和局部的
AGENTS.md(用于给Pi补充要求) - 用户提示词
- Pi harness发起推理请求等待模型返回结果
- 如果模型返回工具调用字段,则
- Pi harness解析工具调用内容
- Pi harness完成工具调用,并搜集工具结果
- Pi harness把工具结果拼装入上下文
- Pi harness发起下一轮推理请求,回到第3步的一开始
- 如果模型返回文字回复,则认为任务完成,跳出循环
- 如果模型返回工具调用字段,则
这其实就是一个最基本的ReAct循环:
- Re表示思考
- Act表示行动
所有Agent都是这个ReAct模型的派生。Codex也是,ClaudeCode也是。
安装插件
终于来到Pi真正好玩的地方了。
Pi插件可以:
- 接入自定义工具
- 接入自定义模型
- 在Agent生命周期植入动作
- 添加自定义命令
- 修改终端UI
Pi自己做了安装指令。
pi install npm:<package>
默认情况下,插件会安装到当前用户的Pi环境中。
对于MacOS,Pi会安装到~/.pi/。Pi插件会自动安装到~/.pi/agent/npm/。
如果Pi已经在运行,可以执行/reload重新加载插件。
下面我们实际安装两个插件体验一下。
接入第三方API
如果需要接入自定义模型,可以通过插件直接把它注册成Pi的Provider。
安装:
pi install npm:pi-provider-newapi
如果Pi已经打开,执行:
/reload
之后输入:
/newapi-provider-add my_gateway
这里的my_gateway只是我们给这个Provider起的名字,可以随便修改。
接下来Pi会要求输入第三方API的Base URL,例如:
https://api.deepseek.com
这里不要添加/v1。
随后使用:
/login my_gateway
输入API Key。登录成功后,Pi会自动探测可以接入的模型。
最后执行:
/model
就可以直接在Pi自己的模型选择器里看到这个自定义Provider提供的模型了。
给Pi装上呼吸灯
接下来安装一个完全不同类型的插件。
这是我自己写的一个小插件:
pi install npm:@scpz24/pi-breath
同样,如果Pi正在运行:
/reload
然后随便交给Pi一个需要花一些时间完成的任务。
检查一下这个项目,告诉我它的主要目录分别负责什么。
此时Pi的界面会出现一条呼吸灯带,用视觉效果表现Agent正在运行。用颜色表示运行状态。
左边上方的灯带其实会呼吸,用于表示Pi正在运行,右边未加插件则没有。
生成插件
甚至如果现有插件都不能满足需求,你还可以直接告诉Pi:
帮我写一个Pi Extension,实现……
然后让Pi自己阅读Extension API、编写插件,再把这个插件装回自己身上。
从这个角度看,Pi很特殊:
它甚至可以修改自己。
总结
如果第一次使用Pi,你很可能不会觉得它比Codex或者ClaudeCode强。
这只是因为裸Pi的系统提示词很短,工具很少,也没有复杂的工作流约束。 所以它跑得很快,但是有时候也相当草率。
但是Provider、Tools、Skills、Prompt、UI和生命周期Hooks都可以通过插件继续向上搭建。
你可以把它改成一个严谨的Coding Agent,也可以把它改成研究Agent、前端Agent、文档Agent,或者完全不用于Coding。
所以我所说的:
Pi Agent才是上限最高的Agent。
并不是说裸Pi拥有最强的模型能力。
Pi真正高的上限来自于:
它没有替用户决定Agent最终应该长成什么样子。
Codex和ClaudeCode能解决很多问题。但是加以定制的Pi能更好地解决更多问题。




评论
正在读取讨论…