扩展性强、缓存命中 90% 以上、响应还利落:我用 Pi 换掉了 Claude Code

一个可扩展、有主见、极简的 AI 编程 CLI

📌 实测笔记

我是个写代码的人,之前一直用 Claude Code 干活。用了一阵子,慢慢觉得别扭:每次开工,账单在悄悄变厚,反应也在慢慢变钝。

于是换到了 Pi。它很低调——名字故意取得不显眼,而最近爆火的 OpenClaw 其实就是基于它构建的。我用了挺长一段时间,才动了写篇推荐的心思:上手之后,它确实是我目前用过最好用的 AI Agent CLI 之一。

说点真实的体感:我自己的日常使用里,缓存命中率基本在 90% 以上,响应明显比那些「大块头」快,扩展也特别顺手。甚至因为有些供应商接口不稳、老报 429/400,我还自己动手写了一个重试扩展。下面把我的体验和踩过的点都摊开讲讲。

天天留在手边的,反而是这个最极简的 Pi

⚠️ 避雷:如果需要开箱即用的 Coding Agent,请不要用 Pi,Claude Code / Codex 更适合你。


请添加图片描述

01|它是什么:极简、有主见、可扩展

Pi Coding Agent 的作者 Mario Zechner 把它定义成一个「有主见且极简」的 Coding Agent。所谓有主见,是它不替你规定工作流;所谓极简,是核心只保留最必要的东西。

它奉行近乎激进的可扩展性:很多在别的工具里「内建」的能力,在 Pi 这里都交给 extensions、skills,或者第三方 pi packages 来实现。这样核心保持精简,你又能按自己的方式塑造它。

一个有趣的细节:Pi 这名字是作者有意取的,跟数学里的 π 关联,就是为了降低知名度——很多项目爆火后会涌来各种低质量 issues 和 AI 生成的 PR,作者想绕开这个。结果 OpenClaw 火了,大家才注意到底下这个引擎。


请添加图片描述

02|它「不」做什么:少即是多

Pi 最反直觉的一点,是它明确「不」内建很多别家当成卖点的功能。这不是偷懒,而是哲学:核心越薄,每一轮越便宜、越聪明

它不内建 → 怎么补上

  • 不做 MCP:自己写带 README 的 CLI 工具,或写 extension 加支持
  • 不内建 sub-agents:用 tmux 起多个 Pi 实例,或装 pi-subagents 包
  • 不弹 permission popups:丢容器里跑,或写 extension 做确认流程
  • 不设 plan mode:计划写进文件,或装 plan-mode 包
  • 不内建 to-dos:用 TODO.md,或装 pi-todo 包
  • 不提供后台 bash:用 tmux,全程可观测、交互更直接

一开始你会觉得「这也太裸了」。但用顺了就明白:你真正需要的,几乎都能用一行命令装回来;你不用的,就别再每轮替你付一次「占位税」。


03|为什么性价比高:一万八千 token 的差距

这是我最想展开讲的部分。先看一个数字。

精简的系统提示词

Claude Code 每次开始干活,还没轮到你说话,先往模型那边送两万多 token。token 是模型计费和处理的「最小单位」,一个汉字大约算一到两个 token。社区逆向出来的数据是:截至 2026 年 2 月的版本,系统提示词本身约 23500 token,外加 27 个内置工具定义(近十万个字符)。这两块构成每次对话的固定开销。

Pi 这边:系统提示词不到 1000 token,内置工具只有 4 个——读文件、写文件、改文件、执行命令。

23500 对 1000,27 个工具对 4 个。有人实测过:通过 Claude Code 说一句「你好」,整个请求实际消耗了四万多 token。

缓存救不了「注意力」

看到这你可能会说,现在各家都有提示词缓存,同一会话里第二次之后只按一折计费——这问题不大。话对,但只对一半。

缓存解决的是「重复发送」的计费,没解决的是:这两万多 token 每一轮都真实地占着模型的注意力。Pi 作者引用的关键结论是,Pi 每轮送给模型的内容大约是别的工具的三分之一,这个差距在整个任务里持续存在,任务越长、改的文件越多、轮次越密,累积越狠。

还有个容易忽略的点:子任务。Claude Code 支持把活派给独立 subagent,但每个 subagent 每轮都要重新加载一遍系统提示词和工具定义。实测一个任务:直接做消耗 121000 token,拆成两个 subagent 去做,消耗 513000 token,翻了四倍多

省 token 和提质量,是同一件事

精简,反而让模型更聪明

2023 年斯坦福和伯克利的《Lost in the Middle》测了六个模型家族:同样一条信息放开头或结尾,模型能用上;放中间,准确率掉超过 30%——因为位置编码机制,距离拉远注意力自然衰减。

2025 年 Chroma 更贴近实际的测试覆盖 18 个模型:输入变长,表现下降 20% 到 50%;号称 20 万 token 窗口的模型,实际到 5 万 token 就已经明显衰退,而且越需要综合判断、语义越模糊,掉得越快。

把这两件事放一起看:你每轮多送进去的那两万 token,既在账单上收你钱,也在稀释模型对真正重要内容的注意力

harness 越薄越好

Pi 作者有句话大意是:一个 harness 工具里,到底有多少东西真正起支撑作用,有多少只是因为「大家都这么做」才留着?Pi 用「删掉」来回答。他还说,这个工具应该小到你能把它每一个 token 都装在脑子里。

这跟大厂逻辑正好相反。Claude Code 和 Codex 过去一年持续加功能——任务管理、团队协作、各种子系统。前面提到的系统提示词,在 2026 年 2 月的两周内就涨了 28%。每一个功能都要在系统提示词里占一段,告诉模型「你还可以这样做」,而这段占位每一轮都要重新付费、重新占注意力——哪怕你这次任务根本用不上它。


04|快速上手:装好就能用

STEP 01 安装

npm install -g @mariozechner/pi-coding-agent

装完用 pi 命令启动,或给终端配个快捷键。

STEP 02 Windows 记得配 bash

如果你在 Windows,还需要一个 bash shell。检查顺序:settings.json 里的自定义路径 → Git Bash → PATH 里的 bash(Cygwin / MSYS2 / WSL)。大多数人选 Git for Windows 就够了。

{ "shellPath": "C:\\cygwin64\\bin\\bash.exe" }

STEP 03 配模型

配置好通过 /model(或 Ctrl+L)选模型。Pi 的模型配置很优雅,三条路:

  • 订阅:有买Coding Plan或者Token Plan订阅的,直接 /login 登录,token 存 ~/.pi/agent/auth.json。。
  • Key:环境变量(如 ANTHROPIC_API_KEY=sk-ant-...)或写进 auth.json。
  • 自建:建 ~/.pi/agent/models.json,支持 openai-completions / openai-responses / anthropic-messages / google-generative-ai 等 API。每次 /model 都会重载,会话中改不用重启。

几个用了就回不去的命令

  • 消息队列:干活时还能继续发消息。Enter 排入引导消息(当前工具执行完立即送达并打断后续),Alt+Enter 排入跟进消息(全部完成后才送达)。
  • 上下文压缩/compact [prompt] 手动压缩,可给自定义提示。
  • 会话分支/tree 在历史节点间跳转、/fork 从当前分支开新会话,所有历史都留在同一个 JSONL 文件里。
  • 项目上下文:启动时从 AGENTS.md(或 CLAUDE.md)加载项目说明与约束,全局和项目级都会被拼接。

这一段只讲骨架。更细的安装、各家 Key、TUI 操作,建议直接看官方文档。


05|扩展生态:想要什么,装什么

Pi 的能力边界,基本等于 packages 生态 的边界。所有扩展都能在 https://pi.dev/packages 下载安装。我按用途分了几类:

模型与接入

  • pi-model-manager:在 TUI 里可视化增删改模型和接入配置,以原生 models.json 为唯一数据源
  • pi-ollama-cloud:把 Ollama Cloud 注册为提供商,自带联网搜索/网页抓取,不用本地跑 Ollama
  • pi-xai-oauth:xAI OAuth 接入 + Grok 账号模型目录,让 Pi 直接调用 Grok

效率与压缩

  • pi-hypa:本地压缩嘈杂的工具输出,改写 shell 命令走确定性压缩,给上下文窗口减负
  • pi-rtk-optimizer:把 bash 命令改写成 rtk 等效命令,再压缩输出,省 token
  • pi-hashline-edit-pro:基于 3 字符哈希锚点的严格 read/replace,文件编辑锚点不会错位
  • pi-autoresearch:自动跑实验、测指标、保留好的/回滚差的,适合持续性能调优

搜索与网络

  • pi-web-access:网页搜索、URL 抓取、GitHub 仓库克隆、PDF 提取、YouTube 视频理解以及本地视频分析,支持 OpenAI、Brave、Parallel、TinyFish、Search1API、Searchinfinity、Querit、Tavily、SERPdive、Kagi、Ollama、AnySe 等多种搜索源
  • pi-fff:FFF 模糊搜索文件和内容,快速定位仓库里的代码

自动化与代理

  • pi-computer-use:跨平台桌面自动化,能点击、输入、截屏、操作 GUI
  • pi-subagents:子代理编排,支持链式、并行、异步、分叉上下文和跨代理协调
  • pi-goal:Codex 风格的 /goal 目标驱动循环,带证据检查、预算和阻塞检测

任务与交互

  • pi-todo:给模型用的待办清单悬浮层,/reload 和会话压缩后还能保留
  • rpiv-ask-user-question:结构化问卷工具,让模型在需要决策时给选项而不是让用户自由输入
  • pi-btw:/btw 侧边追问命令,临时提问不污染主会话
  • plan-mode:只读计划模式,禁用写入并限制 bash 白名单,让 Pi 先安全制定计划再执行

TUI 与状态

  • pi-powerbar:底部常驻 powerline 状态栏,实时显示 tokens、上下文、模型
  • pix-pretty:增强工具输出渲染,语法高亮、文件图标、树状视图、diff
  • pi-extension-settings:集中管理各扩展配置的通用设置框架

还有一个我很喜欢的:Pi Atelier。它把默认底部栏换成了响应式状态栏,侧边栏能显示 Agent 状态、回合信息、工具调用、上下文、会话和项目数据——信息密度一下就上来了。

我自己在用的扩展

上面是公开生态,顺手列一下我本机实际装着的(npm 包):

pi-subagents pi-fff rpiv-todo pi-lsp pi-hashline-edit-pro pi-btw pi-web-access pi-atelier pi-rtk-optimizer pi-model-manager pi-hypa rpiv-ask-user-question

基本覆盖了「省 token / 搜代码 / 待办 / LSP / 联网 / 状态栏」,够我日常折腾了。


06|我的真实体验:快、省、还能自己改

我自己的日常会话里,缓存命中率基本在 90% 以上。这意味着大部分轮次只按一折甚至更低计费,账单比用那些「大块头」友好太多。

响应也明显更快。原因前面说过——每轮送给模型的固定内容只有别人的三分之一左右,模型「看到的噪音」少,出活就利索。

扩展方便到,我自己写了个插件

真遇到问题是在用某些第三方供应商时:接口不稳定,经常甩 429(限流)或 400(请求错误),链接一断,正在跑的任务就废了。

本来这是个 annoyance。但 Pi 的扩展机制太顺手,我就让 AI 照着文档帮我写了一个扩展:链接断开时自动重试。名字叫 pi-retry-codes

pi-retry-codes:一个 Pi Coding Agent 扩展,检测到底层连接断开(常见于 429/400 这类瞬时错误)时自动重试,不让任务中途夭折。地址:https://github.com/jlifeng/pi-retry-codes

⚠️ 踩坑提示 🕳 选供应商时别只看单价。有些便宜的第三方接口限流狠、报错多,频繁 429 反而拉低效率。先用稳的跑通,再考虑省钱;真遇到不稳定,像我一样写个重试扩展,比来回换 key 实在。

这件事本身也说明 Pi 的好:核心极简,但你要加一层容错,写个扩展就能塞进去,不用等人家发版本。


写在最后

我不太会给工具贴「年度最佳」这种标签,但 Pi 确实是我目前用得最舒服的一个。它不完美——如果你想要开箱即用、功能全包、不用动脑配置,它可能不是你的菜;但如果你愿意花十分钟理解它的哲学,想要一个轻量、便宜、可控、还能自己改的编程助手,它值得一试。

几个链接放这儿:

  • 扩展市场:https://pi.dev/packages
  • 我的重试扩展:https://github.com/jlifeng/pi-retry-codes

Tool 是手段,把活干漂亮才是目的。祝你的 AI 搭档又快又省。


我是 {{作者名}},{{一句话简介,如:热衷于折腾 AI 编程工具、分享实战经验}}。如果今天这篇对你有用,欢迎点赞、在看、转发三连,我们下篇见。

更多推荐