终端 AI 编程 Agent 全横评:Pi / Oh My Pi / OpenCode / Crush

前言最近在研究极简编程 Agent 框架,发现这个赛道有几个很有意思的项目,定位各异,从”只给 4 个工具的极简底座”到”开箱即用的全能选手”都有。今天把这几个项目梳理清楚,方便后续跟工作台能力做结合。

涉及的项目:Pi Agent、Oh My Pi、OpenCode、Crush。

一、Pi Agent — 极简主义的极端实践者一句话定位:Mario Zechner(libGDX 作者)开发的极简终端编程 Agent,核心哲学是”Agent 只需要 4 个工具 + 几百词系统提示词就足够”。

核心设计哲学绝大多数 Agent 堆砌十几甚至几十个工具、上万 Token 提示词、内置子代理和规划模块。Pi 走的是完全相反的路:

仅内置 4 个基础原语工具,不预装任何多余能力系统提示词仅 200~300 Token(对比 Claude Code 约 10000 Token)默认 YOLO 模式:无频繁权限弹窗,工具调用全程透明可追溯核心公式:Agent = LLM + 工具循环 + 运行时底座所有高级能力(联网、PDF、子代理)全部通过扩展按需安装仅有 4 个核心工具Pi 原生只带 4 个指令,所有代码操作都靠它们组合完成:

工具作用read读取项目任意文件、目录结构write新建文件、写入完整文件内容edit差分修改已有代码(精准局部编辑)bash执行终端命令、跑测试、安装依赖主要特性全模型无关。兼容所有 OpenAI 兼容接口:GPT、Claude、Gemini、DeepSeek、GLM、Ollama 本地大模型、Groq 等,可完全本地离线运行。

四种运行模式:

交互模式(默认):终端持续对话,反复迭代改代码单次打印模式(pi -p):一条指令执行完直接退出JSON 输出模式:结构化结果,方便脚本调用RPC 服务模式:可对接 Zed 编辑器等 IDE 插件会话管理:

本地永久保存所有对话记录(~/.pi/agent/sessions,JSONL 格式)会话回退、分叉(fork)、重命名一键导出会话为 HTML 报告、训练数据集文件三层扩展生态:

Extensions(扩展):底层 TypeScript 钩子,修改 Agent 运行逻辑Skills(技能包):开箱即用功能包(联网搜索、PDF 解析、语音、表格处理、子代理)Prompt 模板:自定义不同任务的系统提示词速度表现这是 Pi 最值得关注的地方。

冷启动 <200ms,对比 Aider/Claude Code(2~5 秒)内存占用 常驻仅 30~50MB,主流 Agent 普遍 200MB~800MBToken 消耗 只有 Claude Code 的 35%~51%,因为系统提示词只有 200~300 Token适合人群想自建轻量化本地编码 AI 助手的开发者厌烦臃肿 Agent 工具、追求极简可控工作流的程序员需要把 Agent 会话数据留存、二次训练的工程师想要一套可自由对接任意大模型的 Agent 底座二、Oh My Pi — Pi 的”完整版”一句话定位:Pi Agent 的主力增强分叉版本,作者 Can Bölük 在原版极简 Pi 的代码基础上彻底重构重写,定位从「极简 Agent 底座」变成开箱即用的全能终端编码智能体。

核心区别 原版 PiOh My Pi代码量约 1500 行 TS数万行(TS+Bun + Rust 原生内核)工具数量4 个32 个内置工具提示词200~300 Token内置大量编码专用提示词LSP/DAP无原生深度集成需要配置大量装上就能干活独有核心功能Hashline 哈希锚点编辑(最核心创新)。放弃传统行号替换,用文件内容哈希定位代码修改,大幅解决 AI 改代码改错行、覆盖冲突代码的问题,多轮迭代编辑准确率提升 60%+。

原生 LSP + DAP 调试深度集成:

13 种 LSP 语义操作:符号重命名、查找所有引用、自动修复、代码重构27 种 DAP 调试能力:单步调试、查看堆栈、断点修 bug进程内 Rust 原生运行。原版 Pi 会调用系统 shell、rg、find 等外部程序;Oh My Pi 把文件检索、shell(自研 brush shell)、AST 解析全部写进进程内部,不 fork 外部进程,文件扫描速度比原版快 2~3 倍。

其他标配能力:

内置无头浏览器工具40+ 大模型厂商路由原生支持 MCP 协议并行子代理PDF/压缩包解析速度对比冷启动:原版 Pi <200ms;Oh My Pi 约 600-900ms单文件小修改:两者速度接近本地 Ollama 场景:Oh My Pi 编辑容错率远高于原版,整体完成速度更快选哪个原版 Pi:想自研 Agent、追求最小体积、只需要基础文件 + shell 能力Oh My Pi:只想拿来写代码、改 bug、调试项目,想要 LSP、调试、并行子代理等全套能力三、OpenCode — Go 写的极速选手一句话定位:Go 语言编写、单二进制极速终端编码 Agent,全网同赛道裸性能最快的开源编码 Agent 之一。

注意:原版仓库 opencode-ai/opencode 已经归档停止维护,原作者带着代码迁移到新项目 Crush。社区 fork 版仍在更新。

核心架构核心语言:原生 Go(Bubble Tea 做 TUI 界面),单文件二进制打包,无运行时依赖代码体量:约 1.8 万行 Go 代码设计思路:预设全套工程化能力 + 极致运行性能,不是极简底座,是开箱即用成品 Agent三大专属运行模式Plan 规划模式:AI 先完整梳理项目、输出改造步骤清单,确认后再执行修改Build 构建模式:默认干活模式,边思考边改代码、跑测试、修复报错General 闲聊模式:普通问答、文档阅读、脚本处理核心功能特性碾压级性能(最大卖点):

冷启动:30~50ms(原版 Pi≈200ms,Oh My Pi≈700ms)全部文件检索、shell、AST 解析全部内置进程内实现,不 fork 外部程序同大型重构任务,耗时只有原版 Pi 的 55%~65%原生内置全套能力:

12 个内置工具(文件读写、批量编辑、终端执行、文件搜索)原生 LSP 代码语义解析、符号跳转、重构修改并行多子代理完整会话系统原生 MCP 协议、Git 操作、无头浏览器文档爬取支持 75+ 大模型厂商,内置一批免费可直接调用的编程专用模型。

缺点可定制深度不如原版 Pi项目已归档不再迭代新版本,主力开发迁移到 Crush四、Crush — OpenCode 的正统续作一句话定位:Charm 团队( Bubble Tea、Gum 作者)收购原 OpenCode 作者后推出的新品,Go 原生内核,TUI 体验业内天花板。

来历2025 年原 OpenCode 作者和团队分家:

原作者被 Charmbracelet 收购,把 Go 原版代码改名 Crush,持续主力迭代(正统血脉)另一波分支开发者用 TS 重写,保留名字叫 OpenCode(旧名分支,不再是原版 Go 架构)核心优势全 Go 自研内核,所有文件检索、Shell 执行、AST 解析、正则搜索全部内置进程实现,完全不 fork 外部进程。

原生深度 LSP 绑定,基于标准 LSP 协议对接,兼容性最好。

行业最早全量支持 MCP 协议,通过 Model Context Protocol 对接任意第三方工具:网页爬取、数据库、Git、云服务、本地脚本,支持 stdio/HTTP/SSE 三种传输。

会话黑科技:

同项目多并行隔离会话,互不干扰上下文会话中途无缝切换大模型,历史上下文完全保留(独有能力)内置 Token 花费统计、推理耗时看板全平台兼容性断层领先:macOS/Linux/Windows PowerShell/WSL/Android/BSD 全系列系统。

速度横向对比项目冷启动备注Crush30~45ms全网编码 Agent 第一梯队OpenCode30~50ms已归档原版 Pi<200ms极简底座里算快的Oh My Pi600~900ms功能最多,启动略慢Crush vs OpenCode(分家后核心差异) Crush社区 OpenCode代码语言GoTypeScript 重写更新维护原作者全职开发社区维护扩展性原生 MCP自研插件系统TUICharm 全套栈较弱协议FSLMIT五、横向对比总结 Pi AgentOh My PiOpenCodeCrush代码量~1500 行 TS数万行~1.8 万行 Go~2.5 万行 Go工具数量4 个32 个内置12 个内置全套系统提示词200~300 Token较长较长较长LSP/DAP❌✅ 深度集成✅✅ 原生标准MCP❌ 需扩展✅✅✅ 最早全量冷启动<200ms600-900ms30~50ms30~45ms可扩展性极高(底座)中中中定位极简底座全能开箱即用高性能成品高性能成品+最新选型建议自研 Agent、极简二次开发:留原版 Pi日常写代码、调试改 bug、想要最多功能:选 Oh My Pi追求极致启动速度、本地跑 7B-24B 模型:选 OpenCode(社区版)或 Crush想跟进原作者最新迭代:直接选 Crush六、跟工作台结合的思考回到最初研究这个方向的目的——给 xworkbench 找合适的 Agent 能力。这几个项目的路线差异其实对应了不同的结合思路:

Pi 的扩展机制(Extensions/Skills/Packages)非常适合作为经验库的能力载体——把 best practice 沉淀成可复用 Skills,对接 xworkbench 的经验库。

Crush/OpenCode 的高性能和 MCP 协议支持,适合作为自动化面板里的任务执行引擎,配合 xworkbench 的任务调度和目录快捷键能力。

Oh My Pi 如果追求开箱即用的编码体验,可以直接嵌入工作台的 Web Terminal,作为内置编程 Agent 选项。

这个方向值得深入,后续考虑先从 Pi 的 Skills 机制和 xworkbench 经验库的对应关系入手。

七、Pi 原版的性能短板详解先说结论:原版 Pi 在架构层本身几乎没有代码性能 bug,它的所有慢,都是设计取舍带来的瓶颈,不是代码写得差。

4 个核心性能短板1. 进程外部调用开销(最大硬瓶颈)

原版 Pi 基于 Node.js,所有文件搜索、grep、目录遍历、shell 执行,全都调用系统外部二进制(rg、find、bash),每次调用都要 fork 新进程:

小文件修改无感大型项目遍历文件:频繁创建销毁进程,耗时比内存内原生实现慢 2~3 倍跨轮 bash 环境不保留,每次新开终端,状态丢失2. 无内置代码索引 / 语义检索

只有基础 read 读文件,没有 LSP、AST 解析、代码向量索引:

找全项目所有同名函数:只能一遍遍 read 整份文件大仓库(10 万行 +)任务会疯狂堆轮次,越跑越慢只能靠你手动装扩展补检索能力3. 对小参数量本地模型极度不友好(最容易踩坑)

Pi 的极简提示词设计是为顶尖云端大模型设计的:

7B/12B 本地小模型很容易写错工具格式、分不清工作目录、重复循环调用同一个命令一旦工具调用出错,就会多轮重试,整体耗时直接翻倍没有内置容错重试逻辑,错了就从头再来4. Node.js 运行时的先天短板

冷启动虽快,但长时间长会话后 GC 卡顿明显没有并行子代理能力,所有任务串行执行会话历史只有基础压缩,超长对话 KV 缓存会持续膨胀,容易 OOM它没有的性能问题没有冗余循环、没有多余 Token 打印、没有臃肿依赖逻辑系统提示词极短,预填充速度是天生优势内存空闲占用极低(30~50MB)怎么让原版 Pi 变快安装 smart-at 文件检索扩展,替换系统 rg 遍历开启会话自动压缩:pi config set session.compress true本地使用至少 24B 及以上代码模型,避免 7B 模型反复报错重试用 Bun 代替 Node 运行 Pi,单轮调度速度提升 30%提速结论云端用:全网最快的通用编码 Agent 之一,省 token = 省时间 + 省钱本地用:目前本地大模型适配速度最优的 Agent 框架如果你经常用本地 Ollama 跑编码 Agent,Pi 的速度体验会断层领先其他方案八、腾讯 CodeBuddy 接入指南腾讯 CodeBuddy 可以接入 Crush、Pi、Oh-My-Pi 所有兼容 OpenAI 接口的 Agent。需要分清两个概念:

网页/VSCode 登录账号:扫码登录的个人 CodeBuddy 账号不能直接复用登录态CodeBuddy OpenAI 兼容 API:在腾讯云后台拿到专属 API Key + 接口地址,所有兼容 OpenAI 格式的 Agent 全都能接入获取接入凭证进入腾讯云 CodeBuddy 控制台进入【API 密钥管理】,生成专属 SecretID/SecretKeyCodeBuddy 国内标准 OpenAI 兼容端点格式: 1

https://api.coze.cn/v1

可用模型 ID(原生支持工具调用):模型 ID说明codebuddy-coder-pro主力代码大模型codebuddy-coder-fast高速轻量版codebuddy-ultra全能增强版在 Crush 中配置 CodeBuddy配置文件方式(推荐):

打开 Crush 全局配置文件:

macOS/Linux:~/.config/crush/crush.jsonWindows:%USERPROFILE%\.config\crush\crush.json 1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

{

"providers": {

"codebuddy": {

"name": "CodeBuddy",

"api_key": "你的API Key",

"base_url": "https://api.coze.cn/v1"

}

},

"models": {

"default": {

"provider": "codebuddy",

"model": "codebuddy-coder-pro"

}

}

}

交互式界面配置:

终端输入 crush 启动按 Ctrl+L 打开模型列表选择【Add Custom Provider】填入上述信息保存即可随时切换在 Pi / Oh-My-Pi 中配置配置文件路径:

Pi:~/.pi/agent/models.jsonOh-My-Pi:~/.omp/providers.json 1

2

3

4

5

6

7

8

9

10

{

"providers": {

"codebuddy": {

"name": "CodeBuddy",

"api_key": "你的API Key",

"base_url": "https://api.coze.cn/v1"

}

},

"default": "codebuddy"

}

关键限制说明网页扫码账号无法直接登录:Crush/Pi 不能读取 CodeBuddy 网页端的登录 Cookie,只能走 API 计费额度,网页端免费额度和 API 额度是分开两套额度工具调用兼容性极强:CodeBuddy 全系模型原生支持 Function Call,在 LSP、子代理、文件编辑场景下报错率比很多国内模型更低国内网络优势:不用科学网络即可稳定调用,延迟远低于 GPT/Claude不能反向集成:Crush/Pi 没法作为插件塞进 CodeBuddy 客户端,只能是 CodeBuddy 作为模型算力供给给这些终端 Agent进阶玩法:复用 CodeBuddy 本地服务如果安装了 CodeBuddy CLI,可以启动本地代理服务,让 Crush 对接本地地址:

1

codebuddy proxy --port 8123

然后在配置里把 base_url 改为 http://localhost:8123/v1,可复用本地登录的账号权限。

参考资料:Terminal-Bench 2.0 编码基准测试、各项目 GitHub 仓库及官方文档

【八字水晶指南】五行喜忌對照表,挑出補運開運的命定水晶
庚(漢字):字源解說,漢字釋義,近字辨析,古籍釋義,說文解字,說文解字注,廣韻,康