返回博客列表

There Are Many Agent Harnesses, But pi.dev Is Yours

2026-05-26T10:00:00+08:00
Pipi.devAI Agent编码工具扩展开源

Claude Code、Cursor、Codex、Gemini CLI——每个编码 Agent 都有自己的工作流。你得学习它的操作方式,适应它的子 Agent 策略,接受它的权限弹窗。如果某个功能没有内置?等官方更新。

Pi 的哲学完全相反:改造工具适应你的工作流,而不是反过来。

Pi 是一个极简的终端编码 Agent。它提供原语,不提供功能。子 Agent、计划模式、权限管理、MCP 支持——这些在其他工具里是内置的,在 Pi 里你可以自己构建,或者从 3143 个社区包里安装一个。

GitHub 55k star,MIT 协议,由 Earendil Inc. 开发。

这篇文章涵盖什么

  • Pi 的核心哲学:原语而非功能
  • 核心能力
  • 扩展系统和包生态
  • 上下文工程
  • 四种运行模式
  • 和其他 Agent 的定位差异

核心哲学:提供原语,不提供功能

Pi 的 README 有一节叫「What we didn't build」,列出了它故意不内置的功能:

不内置 你怎么获得
MCP 安装 pi-mcp-adapter 包,或用 Skills 构建 CLI 工具
子 Agent 安装 pi-subagents 包,或通过 tmux 启动多个实例
权限弹窗 安装 pi-permission-system 包,或构建自己的审批流
计划模式 安装 plan-mode 扩展,或写入文件
内置 TODO 安装 rpiv-todo 包,或用 TODO.md 文件
后台 Bash 用 tmux

这不是偷懒,而是设计选择。Pi 提供扩展 API(TypeScript 模块),可以访问工具、命令、快捷键、事件和完整 TUI。你不想要的永远不存在,你想要的可以随时加上。

甚至可以让 Pi 自己构建扩展——它会修改自己的代码,你 /reload 后继续工作。

核心能力

15+ 模型供应商,数百个模型

Anthropic、OpenAI、Google、Azure、Bedrock、Mistral、Groq、Cerebras、xAI、Hugging Face、Kimi、MiniMax、OpenRouter、Ollama 等。会话中切换模型:/modelCtrl+LCtrl+P 循环收藏。

树状会话历史

会话存储为树结构。/tree 导航到任何历史节点继续。所有分支在单个文件中。支持书签、过滤、导出 HTML、上传 GitHub Gist 生成可分享 URL。

实时转向(Steering)

Agent 工作时你可以提交消息。Enter 发送转向消息(当前工具执行完后中断后续工具),Alt+Enter 发送追加消息(等 Agent 完成后再处理)。

上下文工程

Pi 的系统提示词非常精简,让你做真正的上下文工程:

  • AGENTS.md:项目指令,从 ~/.pi/agent/、父目录和当前目录加载
  • SYSTEM.md:按项目替换或追加系统提示词
  • Compaction:接近上下文限制时自动摘要旧消息,支持自定义摘要策略
  • Skills:带指令和工具的能力包,按需加载,不占用提示缓存
  • Prompt 模板:可复用提示词,/name 展开
  • 动态上下文:扩展可以注入消息、过滤历史、实现 RAG 或长期记忆

扩展系统

扩展是 TypeScript 模块,拥有完整 API 访问权限。50+ 内置示例:

subagent/          — 子 Agent 系统
plan-mode/         — 计划模式
permission-gate.ts — 权限门控
protected-paths.ts — 路径保护
ssh.ts             — SSH 远程执行
sandbox/           — 沙盒执行
doom-overlay/      — 在终端里玩 DOOM
custom-compaction/ — 自定义上下文压缩
git-checkpoint.ts  — Git 检查点

安装和分享:

# 从 npm 安装
pi install npm:@foo/pi-tools

# 从 Git 安装
pi install git:github.com/badlogic/pi-doom

# 打包发布到 npm

包生态:3143 个社区包

pi.dev/packages 展示了所有社区提交的包。按下载量排名的热门包:

包名 功能 月下载
context-mode MCP 插件,节省 98% 上下文窗口 117K
pi-subagents 子 Agent 委派,链式/并行执行 99.8K
pi-mcp-adapter MCP 协议适配器 88.9K
pi-web-access 网页搜索、URL 获取、YouTube 理解 59.8K
rpiv-ask-user-question 结构化问卷(替代自由输入) 37.2K
rpiv-todo TODO 覆盖层(会话重启不丢失) 33.2K
pi-lens 实时代码反馈(LSP/linter/类型检查) 21K
pi-chrome 使用你已登录的 Chrome 10.7K
pi-hermes-memory 持久记忆 + 会话搜索 8.8K
pi-telegram Telegram 运行时适配器 8.2K

这些包都是社区用 Pi 的扩展 API 构建的,不是官方预制的。

四种运行模式

模式 用途
Interactive 完整 TUI 体验,日常编码
Print/JSON pi -p "query" 脚本化,--mode json 事件流
RPC JSON over stdin/stdout,非 Node 集成
SDK 嵌入到你的应用中

OpenClaw(GitHub 374k star)就是用 SDK 模式把 Pi 嵌入为自己的编码引擎。

安装

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

# Windows PowerShell
powershell -c "irm https://pi.dev/install.ps1 | iex"

# npm / pnpm / bun
npm install -g --ignore-scripts @earendil-works/pi-coding-agent
pnpm add -g --ignore-scripts @earendil-works/pi-coding-agent
bun add -g --ignore-scripts @earendil-works/pi-coding-agent

和其他 Agent 的定位对比

维度 Pi Claude Code Cursor Codex
核心哲学 极简 + 可扩展 全功能一体化 IDE 集成 安全优先
子 Agent 扩展(可安装) 内置 内置 有限
MCP 扩展(可安装) 内置 内置
权限管理 扩展(可安装) 内置弹窗 内置 沙盒
供应商锁定 15+ 供应商 Anthropic 多供应商 OpenAI
包生态 3143 个社区包 Skills
可嵌入 SDK 模式
模型切换 会话中切换 固定 可选 固定
开源 MIT

关键区别:Pi 不是给你一套固定的功能让你适应,而是给你一套 API 让你构建自己想要的工作流。

技术栈

  • TypeScript — 全栈
  • Node.js — 运行时
  • MIT 协议
  • pnpm monorepo — 包管理

适用场景

  • 定制控:不喜欢 Claude Code 的子 Agent 策略?用 Pi 构建你自己的
  • 多模型用户:同一个会话中随时切换 Anthropic/OpenAI/Google/本地模型
  • 工具构建者:用 Pi 的扩展 API 构建工具,打包分享给社区
  • 集成开发者:用 SDK/RPC 模式把 Pi 嵌入你的产品
  • 极简主义者:只想要一个终端 Agent,其他什么都自己搭

作者: itech001 来源: 公众号:AI人工智能时代 网站: https://www.theaiera.cn/ 每日分享最前沿的AI新闻资讯和技术研究。

本文首发于 AI人工智能时代,转载请注明出处。

觉得文章不错?分享给更多人!