终端里的 AI 编程代理

AI 编程工具这两年百花齐放,但大部分是 IDE 插件或独立桌面应用。Pi Agent 走了一条不同的路——它是个纯终端的 AI 编程代理,没有 GUI、没有 Electron、不依赖任何编辑器。装完之后,你在命令行敲 pi 就进入了一个 AI 对话界面,它能读文件、写代码、跑命令,像 Cursor 一样理解你的项目,但一切都在终端里。

项目由 Mario Zechner(Earendil Inc.)开发,62k Star,MIT 协议。它的理念是「小核心 + 扩展」——内置的工具只有四个(read、write、edit、bash),所有高级功能通过包和扩展来加。

安装

一句话安装:

curl -fsSL https://pi.dev/install.sh | sh

安装后终端直接敲 pi 启动。

配置模型提供商

启动 Pi 后,输入 /login 选择模型提供商。支持 Anhtropic、OpenAI、DeepSeek、Google Gemini、Groq、xAI、OpenRouter、Kimi……十余家。选完后输入 API Key 即可。

然后用 /model 命令选择具体模型。比如用 DeepSeek v4 Pro 搭配 xhigh 思考模式做复杂任务,用 DeepSeek v4 Flash 做轻量任务省 token。

快捷键

快捷键 功能
Ctrl+L 打开模型选择器
Ctrl+P 切换作用域模型
Shift+Tab 切换思考深度
Enter 发送 steering message(打断当前操作)
Alt+Enter 发送 follow-up message(等当前操作完成后再执行)
Esc 取消当前操作
Ctrl+C × 2 退出 Pi

Steering message 是 Pi 的一个亮点功能——AI 正在跑命令或改文件时,你直接打字按 Enter,消息会排队等当前工具执行完再处理。这比强行打断再重新解释上下文好用得多。

内置命令

命令 作用
/model 切换模型
/settings 修改思考深度、主题等
/resume 恢复之前的会话
/new 开始新会话
/tree 查看完整会话树,可跳转到任意分支
/compact 手动压缩上下文
/session 查看当前会话信息(token、费用)

安装扩展包

Pi 的核心很小,但可以通过包来扩展功能。用 pi install npm:<包名> 安装:

pi-web-access

pi install npm:pi-web-access

给 Pi 加上网络搜索、网页抓取、YouTube 转录、GitHub 仓库探索功能。默认用 Exa 搜索(无需 Key),也可配 Perplexity 或 Gemini。

pi-codex-goal

pi install npm:pi-codex-goal

添加 get_goalcreate_goalupdate_goal 三个工具,用于跨多次对话跟踪长期任务。适合跑几小时的批量作业。

pi-vision-proxy

pi install npm:pi-vision-proxy

当默认模型不支持视觉时,把图片代理给支持视觉的模型(如 Kimi K2.6)。这样你可以用 DeepSeek 做主要编码,遇到截图需求时自动转到 Kimi 处理。

项目上下文配置

Pi 会在启动时加载 AGENTS.md——先是全局的 ~/.pi/agent/AGENTS.md,然后向上遍历父目录,最后加载当前目录的。所有文件会合并到一起。你可以在全局文件里写你常用的技术栈、编码规范。

更高级的是 ~/.pi/agent/APPEND_SYSTEM.md,它会直接追加到系统提示词里,优先级比 AGENTS.md 更高。适合放行为规则,比如:

  • 如果默认模型不支持视觉,使用 pi-vision-proxy
  • 先读本地文件,再搜索网络
  • 危险的编辑和破坏性命令先解释再执行
  • 写代码保持简洁,去掉华丽辞藻

特色功能:会话树

Pi 的 /tree 是一个很少见但非常有用的功能。它把整个会话历史展示成一棵树——你可以看到每个分支,随时跳回到任意节点重新开始。比如你让 AI 做某个功能,尝试了方法 A 走到一半,突然想试试方法 B,直接开个新分支就行。试完发现 A 更好,再跳回去。传统聊天工具的「一次性对话」模式完全没法比。

特色功能:上下文压缩

上下文窗口快满时,Pi 会自动压缩旧消息——把早期对话总结成摘要,腾出空间给新的内容。也可以手动 /compact 触发。这比那些到上限就报错或者悄无声息丢上下文的工具智能得多。

恢复会话

pi --continue

直接打开上一次的会话,继续工作。

我的看法

Pi Agent 62k Star 不是没道理的。它是一个「反潮流」的产品——大家都在做 IDE 插件、做桌面 App,它偏偏做终端。但正是这个选择让它有了独特的优势:快、轻、可组合

几个让我觉得特别有意思的点:

  • Steering message——这个设计太实用了。AI 正在干活时你可以「旁白」式地给指令,不用等它做完再从头解释。
  • 会话树——探索式编程的完美搭档。试多个方案、回退到某个决策点,跟 git branch 一样自然。
  • 小核心 + 包——不用的功能不装,装的都是自己需要的。对比那些「什么都有但一半用不上」的工具清爽得多。
  • Provider 无关——想换模型就换。今天用 DeepSeek 省钱,明天用 Claude 写复杂逻辑,按需切换。

当然,纯终端意味着没有图形化的 diff 查看器、没有鼠标操作、没有内嵌浏览器。对习惯 GUI 的人来说需要适应。但如果你是终端重度用户、或者想要一个不依赖任何编辑器的 AI 编程搭档,Pi 值得花时间配置。从装好到配顺手大概半小时,之后回报很高。


项目地址:earendil-works/pi · 许可:MIT · 🌟 62k Stars(截至 2026-06-12)