中文 English

Claude Code 太全能?试试只用 4 个工具的 pi,再配个全家桶 oh-my-pi

发布时间: 2026-08-28 · 阅读量 --
AI Agent pi oh-my-pi Coding Agent 终端工具 Claude Code 开发者工具 自动化

先说结论

如果你用腻了"什么功能都往里塞"的 AI 编程工具,可以试试 pi——它默认只给模型 4 个工具(read、write、edit、bash),别的一概不带,想用什么自己装。如果你想要"装完就干活、不再做选择题"的体验,可以试试它的分叉版 oh-my-pi(命令叫 omp)——31 个内置工具、子代理、代码评审、调试器全部内置。两者可以装在同一台电脑上互不干扰,本文给出 Windows 11、Ubuntu 26.04、macOS 26 三平台的一键安装脚本,以及"自己动手装"和"让 Agent 帮你装"两种玩法。

本文写作与截图时间为 2026 年 8 月下旬,文中所有命令都在真实机器上执行过;示例已做抽象处理,不包含任何真实 IP、机器名与密钥。

原创题图:只用 4 个工具的 pi,和全家桶 oh-my-pi

一、为什么又冒出来两个新工具

1.1 背景:AI 编程工具越来越像"大而全"的 IDE

这两年终端里的 AI 编程助手(Coding Agent)越来越多,但不少工具走着走着就变成了"另一个 IDE":功能列表越来越长,弹窗确认越来越多,配置文件越来越厚。对喜欢折腾的开发者来说,这种感觉就像去买一把螺丝刀,结果被塞了一套 128 件的家用工具箱——能干活,但你真正想用的只有那一把。

pi 的作者 Mario Zechner(网名 badlogic,做游戏开发框架 libGDX 的那位)的想法正好反过来:只给模型最小的内核,剩下的一切都让用户自己拼装。这就是 pi。

而 oh-my-pi 的作者 Can Bölük(can1357)则把 pi 拿过去做了分叉(fork),走向另一个极端:把大家常用的功能全部内置进去,口号大概是"你喜欢的 pi,加上全家桶"。它的命令叫 omp

1.2 一句话理解两者的关系

打个比方:pi 像一把瑞士军刀的刀柄——出厂只有刀柄本身,刀片、剪刀、开瓶器想装哪个自己挑,不装就永远不多出来。oh-my-pi 则像买回家就配好的工具箱——锤子、电钻、水平仪都在里面,打开就能用,不用自己逛五金店。

原创信息图:pi 与 oh-my-pi 的设计哲学对比,瑞士军刀刀柄 vs 装好的工具箱

这两个项目都是开源的(MIT 协议),配置目录互不冲突(一个在 ~/.pi/agent,一个在 ~/.omp/agent),完全可以装在同一台机器上按心情换着用。

二、pi:极简到只有 4 个工具的 Coding Agent

2.1 pi 是什么

pi 是一个跑在终端里的 AI 编程助手。它最大的特点是"克制":默认只给模型 4 个工具——读文件、写文件、改文件、执行命令。没有内置的 MCP、没有子代理、没有计划模式、没有权限弹窗。

真实截图:pi 官方 README 的交互式界面,顶部列出全部快捷键,中间是消息区,底部是状态栏

那缺的功能怎么办?pi 给出的答案是四种扩展机制,相当于给刀柄装刀片:

  1. Extensions(扩展):用 TypeScript 写的插件,可以加新工具、新命令、新界面。
  2. Skills(技能):符合 Agent Skills 标准的 Markdown 说明书,教模型做某类事。
  3. Prompt Templates(提示词模板):把常用的提示词存成模板,随用随取。
  4. Themes(主题):换界面配色。

这些扩展可以打包成 “Pi Packages”,通过 npm 或 GitHub 分享给别人。装好扩展后,甚至能在终端里跑起 Doom 游戏——官方 README 里就有这个演示,目的是告诉你:扩展系统能做的事情远超想象。

真实截图:pi 里运行 Doom 游戏的扩展示例,展示扩展系统的能力上限

2.2 pi 的几个好用的细节

真实截图:pi 的 /tree 会话树视图,可以看到一次会话被分叉成多条分支

2.3 安装 pi

pi 基于 Node.js,先确保有 Node 20 以上版本,然后任选一种方式:

# 方式一:npm 全局安装(本文写作时验证通过,版本 0.74.2)
npm install -g --ignore-scripts @earendil-works/pi-coding-agent

# 方式二:官方安装脚本
curl -fsSL https://pi.dev/install.sh | sh

装完后先配一个 API Key,比如:

export ANTHROPIC_API_KEY="你的密钥"
pi   # 进入交互界面

小提示:pi 的 GitHub 仓库已经从 badlogic/pi-mono 搬家到 earendil-works/pi,npm 包名也换成了 @earendil-works/*。网上一些旧教程里的 @mariozechner/* 包名暂时还能用,但建议直接用新名字。

三、oh-my-pi (omp):把能装的都装好

3.1 omp 是什么

omp 是 pi 的"全家桶"分叉版。如果说 pi 的哲学是"缺什么自己装",omp 的哲学就是"先都给你装上,用不上再说"。

真实截图:oh-my-pi 官方 hero 图,列出内置的 MCP、LSP、子代理、网页搜索等能力

它内置了 31 个工具,挑几个最实用的说:

真实截图:omp 同时启动 3 个 explore 子代理并行分析代码包

真实截图:omp 的模型选择界面,同一个模型可以分别设为默认、快速、慢速思考等角色

3.2 Hashline 编辑:这篇文章里最值得知道的巧思

omp 里有一个原创设计叫 Hashline 编辑,值得单独讲讲,因为它解决了一个真实痛点。

先打个比方理解"痛点":传统 AI 编辑文件的方式,像让小学生改作文时必须把整段原文一字不差地重抄一遍,再写上改后的版本。原文越长,抄错的概率越高;模型能力稍弱一点,抄错一个字,整个修改就失败了。

Hashline 的做法是:工具先给文件每一行算一个"门牌号"(哈希值)。模型想改哪一行,只要说"把 3 号门牌那行换成这句新内容",不用重抄原文。相当于把"背诵默写题"变成了"看图填号题"。

原创信息图:传统编辑 vs Hashline 编辑的对比流程

官方 README 给出的实测数据:Grok Code Fast 1 的编辑通过率从 6.7% 提升到 68.3%,Grok 4 Fast 的输出 token 减少 61%。对于用小模型或本地模型的人来说,这个功能能明显减少"改来改去改不对"的挫败感。

3.3 安装 omp

omp 基于 bun 运行时,官方推荐的安装方式:

# 方式一:bun 全局安装(官方推荐)
bun install -g @oh-my-pi/pi-coding-agent

# 方式二:官方安装脚本(macOS / Linux)
curl -fsSL https://omp.sh/install | sh

# 方式三:macOS 用 Homebrew
brew install can1357/tap/omp

# 方式四:Windows 用 PowerShell
irm https://omp.sh/install.ps1 | iex

装完跑 omp setup 会进入交互式向导,一步步帮你选模型。omp 还会自动读取你已有的 .claude.cursor.codex 目录里的规则配置,从别的工具搬家过来几乎零成本。

真实截图:omp 的斜杠命令列表,/review、/collab、/vibe 等都是内置命令

四、一张表看清差异,30 秒决定装哪个

原创信息图:pi 与 oh-my-pi 的关键差异速查表

看完速查表还拿不定主意?回答下面 5 个问题:

原创信息图:5 个问题帮你决定装 pi 还是 omp

我的建议:如果你对"工具替我做决定"这件事敏感,从 pi 开始;如果你今天就要用 AI 干活、不想研究生态,直接装 omp。反正两者不冲突,各玩三天再留一个也不迟。

五、一键全自动安装脚本(三平台)

下面三套脚本分别覆盖 Windows 11、Ubuntu 26.04、macOS 26,只依赖官方源,不依赖任何第三方镜像服务。每个脚本都干同样四件事:装运行时 → 装 pi → 装 omp → 验证版本。脚本里的包名和下载地址都来自官方 README。

5.1 Windows 11(PowerShell,管理员窗口运行)

#Requires -RunAsAdministrator
Set-StrictMode -Version Latest
$ErrorActionPreference = "Stop"

# 1. 装 Node.js 与 Git(winget 为 Windows 11 自带)
winget install -e --id OpenJS.NodeJS.LTS --accept-source-agreements --accept-package-agreements
winget install -e --id Git.Git --accept-source-agreements --accept-package-agreements

# 2. 装 pi(npm 是 Node.js 自带,无需第三方服务)
npm install -g --ignore-scripts @earendil-works/pi-coding-agent

# 3. 装 omp(官方 PowerShell 脚本)
irm https://omp.sh/install.ps1 | iex

# 4. 验证
pi --version
omp --version
Write-Host "全部安装完成。运行 'pi' 或 'omp' 开始,先 /login 配置模型。"

5.2 Ubuntu 26.04(Bash)

#!/usr/bin/env bash
set -euo pipefail

# 1. 装 Node.js 22(NodeSource 官方仓库)与基础工具
sudo apt-get update
sudo apt-get install -y curl ca-certificates gnupg
curl -fsSL https://deb.nodesource.com/setup_22.x | sudo -E bash -
sudo apt-get install -y nodejs

# 2. 装 pi
sudo npm install -g --ignore-scripts @earendil-works/pi-coding-agent

# 3. 装 bun 与 omp
curl -fsSL https://bun.sh/install | bash
export BUN_INSTALL="$HOME/.bun"
export PATH="$BUN_INSTALL/bin:$PATH"
grep -q 'BUN_INSTALL' ~/.bashrc || echo 'export BUN_INSTALL="$HOME/.bun"; export PATH="$BUN_INSTALL/bin:$PATH"' >> ~/.bashrc
bun install -g @oh-my-pi/pi-coding-agent

# 4. 验证
pi --version
omp --version
echo "全部安装完成。运行 pi 或 omp 开始,先 /login 配置模型。"

5.3 macOS 26(zsh,基于 Homebrew)

#!/usr/bin/env bash
set -euo pipefail

# 0. 没有 Homebrew 先装 Homebrew(官方脚本)
if ! command -v brew >/dev/null 2>&1; then
  /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
fi

# 1. 装 Node.js
brew install node

# 2. 装 pi
npm install -g --ignore-scripts @earendil-works/pi-coding-agent

# 3. 装 omp(brew tap 官方源)
brew install can1357/tap/omp

# 4. 验证
pi --version
omp --version
echo "全部安装完成。运行 pi 或 omp 开始,先 /login 配置模型。"

5.4 人工执行 vs 让 Agent 帮你装

上面是人工自动执行:你复制脚本,自己跑一遍,出问题自己看报错。

另一种是 Agent 自动配置:把下面这段话原样发给你已有的 AI 助手(pi、omp、Claude Code、Codex 都行),让它来完成:

请帮我在当前机器上安装 pi(npm 包 @earendil-works/pi-coding-agent)和
oh-my-pi(官方文档 omp.sh)。要求:
1. 先检测操作系统和已有的运行时(node/npm/bun/brew/winget),缺什么装什么;
2. 只用官方源安装,不用第三方镜像;
3. 每装一步验证一次版本号,失败就停下来报告原因;
4. 装完后打印 pi --version 和 omp --version 的输出;
5. 不要替我配置任何 API Key,只告诉我下一步该运行什么命令。

这条路的好处是:不同机器的环境差异(有没有装过 nvm、PATH 干不干净)由 Agent 现场判断,脚本是死的,Agent 是活的。坏处是你要盯着它,别让它顺手把你的环境改乱。

六、安全提示:默认配置≠安全配置

这点必须单独说:pi 没有内置权限系统,模型拿到 bash 工具后能执行的命令,和你自己敲命令的权限一样大。项目目录里的 .pi/extensions/ 扩展在你确认信任后会自动执行其中的代码。

打个比方:pi 像把家里钥匙直接给了保洁阿姨——阿姨大概率是好人,但门一关她做什么你看不见。所以官方 README 也建议:在不熟悉的项目里跑 pi/omp 时,最好用 Docker 容器或虚拟机隔离一层,至少别在存有重要密钥的目录里裸奔。omp 虽然内置了更多能力,但"能力越多,能碰的东西也越多",隔离建议同样适用。

七、常见问题(Q&A)

Q1:pi 和 omp 能装在同一台机器上吗? 能。配置目录分别是 ~/.pi/agent~/.omp/agent,命令名也不同,互不干扰。

Q2:我没有国外大模型的 Key,能用吗? 能。pi 支持 30 多家服务商,omp 支持 60 多家,都包含国内的 Kimi、DeepSeek、MiniMax 等;两者也都支持本地 llama.cpp 跑开源模型,完全不花钱也能玩。

Q3:网上教程里的 npm install -g @mariozechner/pi-coding-agent 还能用吗? 暂时能用(旧包名做了别名),但 pi 已搬家到 earendil-works/pi,建议直接用新包名 @earendil-works/pi-coding-agent,免得哪天别名失效。

Q4:omp 内置 31 个工具,会不会很臃肿很慢? omp 用 Rust 重写了搜索、文件查找等核心操作(内置 ripgrep 等),官方的思路是"功能多但每个都快"。实际体感如何,建议自己装来跑两天再下结论。

Q5:我从 Claude Code 搬家过来,配置要重写吗? omp 会自动读取 .claude.cursor.codex 目录里的规则和技能配置;pi 则默认读取 AGENTS.mdCLAUDE.md 作为项目上下文。大部分规则类配置可以平移,工具专属命令需要适应。

八、写在最后

pi 和 oh-my-pi 其实是同一个问题的两种答案:AI 编程工具到底该内置多少东西? pi 的答案是能不给的都不给,omp 的答案是能给的都给。没有标准答案,只有适不适合你的手。

我自己的做法是:日常探索性任务用 pi(小、快、心里有数),需要子代理并行干活或评审代码时切到 omp。两个工具都是 MIT 开源、活跃更新,装一个试试的成本就是五分钟,比看十篇评测文章有用。

参考来源pi 官方文档pi 作者的设计思路博文oh-my-pi GitHub 仓库oh-my-pi 官网。文中功能与数据以写作时的官方 README 为准,后续版本可能有变化,以你本地 pi --help / omp --help 的输出为准。

本文阅读量 --