平时用国产大模型(比如 DeepSeek、通义千问或者通过硅基流动接 API)写代码,很多主流 Agent 工具用起来其实并不顺手。那些工具动辄塞了几千 Token 的不可见系统设定和复杂的调度逻辑,每次改动代码不仅等半天,Token 消耗还特别厉害。
后来我换成了 Pi(https://pi.dev/),整体体验提升非常明显。它简单直接,自定义自由度很高,运行速度飞快而且非常省 Token。
为什么用 Pi
Pi 是个运行在终端里的极简编程 Agent。它跟其他工具最大的区别,就是不做多余的预设。
官方默认的系统提示词不到一千 Token,原生只提供读文件、写文件、改文件和跑终端命令这四个最基础的工具。没有强行绑定的子代理调度,也不在每次执行时弹出一堆繁琐的确认窗口。
这意味着它的启动和响应没有多余负担,而且能把上下文空间全部留给真实代码。特别是它的 Codemode 支持直接在沙箱里用脚本批量调用工具,改代码往往一轮就能搞定,非常省 Token,刚好能发挥国产模型便宜又迅速的优势。
遇到想要的功能,自己拓展一下,安装完成在终端敲一下 /reload 就能立刻加载,改起来很随手。
安装与配置模型
先在终端安装官方命令行工具:
1 | # 通过官方脚本安装 |
终端看起来容易累,装上 pi-web 网页端就直观多了,而且安装好后可以直接用网页端来配置模型,完全不用手动去翻改 json 文件。
官方提供了非常完善的中文说明与免安装在线演示:
- 项目仓库:https://github.com/agegr/pi-web
- 官方中文文档:https://github.com/agegr/pi-web/blob/main/docs/README.zh-CN.md
- 在线交互演示:https://agegr.github.io/pi-web/
可以直接全局安装:
1 | # 全局安装并启动 |
服务启动后会自动在浏览器打开 http://127.0.0.1:30141。有关 Provider 登录、API Key 与模型的具体图形化配置,直接参考 Pi Web 官方中文文档,配好后网页端和终端自动共用同一套配置。
我常用的几款扩展
Pi 官方保持了极简内核,把复杂功能交给了扩展系统。我日常搭配了下面这套工具,补全了上下文管理、长任务循环以及代码定位的需求。
上下文精简
代码写久了会话历史会越来越长,直接截断容易丢关键代码,常规总结又容易丢细节。
这个扩展把上下文当作可编辑的工作区,在后台动态清理无效的终端长输出和重复报错,只保留关键决策与调用链路。这样多轮对话下来,发给模型的 Token 数量能一直维持在很低的水平,节省token。
安装扩展:
1 | # 安装运行时上下文动态压缩扩展 |
目标循环
面对稍微复杂点的多步骤任务,比如批量重构某个模块或者挨个跑通单元测试,默认模式改一步就要停下来让人确认一次。
用这个拓展就可以解决这个问题,它会让 pi-agent 在后台自主拆解步骤,并在修改、运行测试、根据报错修正代码的循环里自动推进,直到满足退出条件再向你汇报。
安装扩展:
1 | # 安装自主目标循环扩展 |
装好后可以用 /goal 命令给它下达具体目标:
1 | /goal 重构接口模块并持续运行测试,直到所有测试用例通过 |
高精度编辑扩展 pi-omp-tools
这套工具来自 Oh-My-Pi 和 Prime 团队,弥补了原生编辑在大文件下的局限。
它补齐了两个关键能力:一个是带行哈希校验的精确补丁(Hashline),防止大文件替换时找错位置;另一个是基于抽象语法树的检索与修改工具,能直接在语法树层级改函数与类型定义。这样精度高的同时又省 Token。
安装扩展:
1 | # 从 GitHub 安装 Lazy Prime 语法与编辑工具集 |