Pi 是什么:一个「极简、能自己长大」的 AI 编程 Agent

309 阅读6分钟

Pi 是什么:一个「极简、能自己长大」的 AI 编程 Agent


60 秒版

  • Pi 是运行在终端里的 极简 AI 编程壳(minimal terminal coding harness),作者 Mario Zechner(libGDX 等)
  • 默认只给模型 4 个工具readwriteeditbash——其余能力不堆在核心里
  • 需要子 Agent、计划模式、浏览器控制等?用 Extension / Skill / Pi Packages 自己装,甚至 让 Pi 现场写扩展
  • 它不是 Cursor 那种「编辑器里补全」,更像 可定制的 Agent 运行时;也可嵌入别的产品(如 OpenClaw
  • 想深入了解:官网 pi.dev · 源码 pi-mono

一、先澄清几个误区

Pi 不是传统意义上的 AI IDE。

如果你期待的是:打开一个带 AI 面板的代码编辑器、点点补全就能写业务——那 Pi 的主战场不在这里。它和 Cursor 等产品解决的问题有交集(都能改代码),但产品形态不同:Pi 活在终端对话 + 工具调用里,而不是以编辑器为中心。

Pi 也不是「Cursor 替代品」或「Claude Code 替代品」。

更准确的说法是:Pi 是一个 Agent Harness(智能体运行壳)——关心的是如何组织 Agent、扩展能力、管理会话与工作流,而不是「多一个补全按钮」。

Pi 并不追求开箱即用的功能大全。

官网 明确说:默认跳过子 Agent(sub-agents)、计划模式(plan mode)等——你若需要,可以请 Pi 帮你做,或安装社区里的 Pi Package。这是一种刻意的做减法设计。


二、Pi 到底是什么

Pi 的官方定义可以概括成一句话:

A minimal terminal coding harness.
极简的终端编码 Harness。

它想让你 adapt pi to your workflows, not the other way around——适应你的工作流,而不是你被迫适应产品内置的那套功能表。

因此 Pi 更关注:

  • 如何组织 Agent 与工具调用
  • 如何用扩展把能力「长」出来
  • 如何在终端环境里完成复杂工程任务

而不是单纯回答:「下一行代码怎么补全?」

Pi 支持多种使用方式:交互式终端界面、打印/JSON 输出、RPC 对接其他进程,以及 SDK 嵌入自有应用。后者在 OpenClaw 等项目里已有实际集成,说明它不仅是「个人玩具 CLI」,也可以作为底层 Agent 运行时


三、为什么「只有 4 个工具」

Pi 故意把内置工具压到最少,默认只有:

工具大致用途
read读文件
write写文件
edit编辑文件
bash执行 shell(查目录、grep、跑脚本等)

没有一长串专用 API。查文件列表、搜索代码?模型通过 bash 调用 lsgrepfind 等——因为前沿模型在「当编程 Agent」这件事上已被大量训练,作者认为再堆专用工具反而浪费上下文

这种设计与「功能越加越多」的 Agent 产品相反。Pi 的赌注是:

核心越小,外壳越灵活。

其余一切——子 Agent、计划模式、浏览器自动化、MCP、特殊 UI——都不默认塞进内核,而通过下一节的扩展体系解决。


四、能力从哪来:扩展体系

Pi 的大量能力来自 Extension First(扩展优先)。可以用你熟悉的事物来类比:

Pi 概念不妨理解为
Extension像 VS Code 插件:用 TypeScript 加命令、快捷键、工具、界面
Skill像一份「遇到某类任务就照做」的说明书(工作流提示)
Pi Package把扩展、Skill、提示模板、主题打成一个包,通过 npm 或 git 分享
Session 分叉有点像 Git 分支:一条对话线走不通,可以开枝试另一条,再合并或放弃

官网还强调一点很独特的能力:你可以让 Pi 自己写 Extension。

也就是说,AI 不只是「调用现成工具」,而是在你的指导下创造工具、改工具、组合工具,甚至 reload 自己的扩展。这对喜欢折腾工作流的人来说,比等官方发版新功能更快。

Session(会话) 也不只是聊天记录。Pi 支持分支、回溯、并行尝试不同方案(Side quest),适合步骤多、需要试错的长任务——不必把所有尝试都挤在同一条对话里。

关于 MCP: Pi 默认不内置 MCP。官方倾向用 Extension、Skill,或「带 README 的 CLI 小工具」代替。是否认同这种做法可以另议;对读者而言,记住一点即可:Pi 选择用可编程扩展,而不是在核心里绑死一种协议。


五、和常见 AI 编程工具有何不同

不必做「谁更强」的排行榜,只从产品哲学看差异(Claude Code 等与 Pi 同属「终端 Agent」一类,此处不展开横评):

维度典型 AI IDE(如 Cursor)Pi
核心体验在编辑器里写代码、补全、改 diff在终端里对话,用工具读写仓库
功能策略产品持续内置新能力核心极简,需要的能力自己装或自己造
适合谁日常业务开发、希望少配置爱定制流程、愿意折腾扩展的人

有人把 Pi 比作 Neovim / Emacs / tmux 那一类:高度可黑客化(hackable) 的环境——默认体验克制,上限由你自己决定。


六、适合谁、不太适合谁

可能适合你,如果……

  • 你愿意用终端(或愿意为此学一点基础)
  • 你想定制「Agent 怎么工作」,而不只是换模型
  • 你对「让 Agent 自己写扩展」这类实验感兴趣
  • 你需要把 Agent 嵌进自己的系统(SDK 场景)

可能暂时不适合,如果……

  • 你只想要「装好就能写代码」、完全不想碰扩展
  • 你完全不使用命令行
  • 你更需要的是团队协作的 IDE 功能(审查面板、设计稿等),而不是 Agent 运行时

Pi 在 Linux、SSH、DevOps、本地/私有化模型 等场景里讨论较多,是因为它从根上就是 Terminal First 的设计;但这不意味着只有运维才能用——而是说,它的主场在「工程环境」而不是「图形界面优先」。


七、生态一眼

Pi 鼓励社区通过 Pi Packages 分享扩展组合。官方与社区包里常见方向包括(举例,非完整列表):

方向举例
多 Agent子 Agent 编排类 package
浏览器控制 Chrome、做 E2E 验证
文档Markdown / PDF 预览
交互更丰富的用户确认与提问

你不需要一次装齐。官网的态度是:缺什么,就让 Pi 帮你做,或装一个匹配你 workflow 的包。

模型侧,Pi 支持多家提供商(Anthropic、OpenAI、Google、本地 Ollama 等),通过统一层切换——对笔记读者而言,记住「不绑死单一模型」即可,细节见官方文档。


八、总结

Pi 最重要的,不是「又会写代码了」。

而是把 AI 编程推进到另一种想象:

  • 从「辅助补全」到「可编排的执行体」
  • 从「产品定义功能」到「用户(和 Agent)扩展功能」

一句话收束:

Pi 不是 AI IDE,而是一个可自定义、能自我扩展的 Agent Harness。

若把「给 Agent 套工程外壳」类产品统称为 Agent Harness,Pi 是其中走 极简内核 + 自我扩展 路线的一个代表。(更系统的 Harness 概念可参考笔记:[[Harness Engineering 简介与主流实践]]。)


延伸阅读

资源链接说明
官网pi.dev/产品定位、特性概览
源码github.com/badlogic/pi…monorepo(packages/coding-agent 等)
npmwww.npmjs.com/package/@ea…CLI 包(命名以 README 为准)
OpenClawgithub.com/openclaw/op…SDK 嵌入示例
作者站点mariozechner.at/设计 rationale 文章入口
为何不用 MCPmariozechner.at/posts/2025-…官方立场一文
Pi 发布文mariozechner.at/posts/2025-…产品介绍与动机