在这里插入图片描述

Oh My Pi (omp) 是终端 AI 编程代理中功能最全的一个,GitHub 17.7k+ stars,MIT 协议。32 个内置工具、LSP/DAP 集成、子代理、浏览器控制、55k 行 Rust 原生核心。本文覆盖安装配置、日常使用、高级技巧和真实案例。


什么是 Oh My Pi

Oh My Pi(简称 omp)是一个终端 AI 编程代理,fork 自 Mario Zechner 的 Pi,由 Can Bölük 重写为编码优先的工具。和 Claude Code、Codex CLI 是竞品。

核心特性:

  • 开源(MIT),~55k 行 Rust 核心,跨平台原生
  • 32 个内置工具(读写文件、搜索、shell、LSP、调试器、浏览器、子代理……)
  • 40+ 模型 provider,自定义 models.yml 接入任何 OpenAI 兼容端点
  • Hashline 编辑格式:基于内容哈希锚点,编辑精准、省 token
  • 子代理(subagents):并行任务分发,隔离工作区
  • LSP 深度集成:重命名、引用查找、诊断——IDE 知道的它都知道
  • DAP 调试器:lldb、dlv、debugpy,直接附加进程调试
  • 浏览器驱动:Puppeteer 控制 Chromium 或 Electron 应用
  • MCP 支持:标准化外部工具接入
  • 25 个搜索后端:auto 模式自动链式查找

和竞品对比:

维度 Oh My Pi (omp) Claude Code Codex CLI OpenCode
开源 MIT 闭源 Apache-2.0 MIT
语言 TypeScript + Rust TypeScript TypeScript Go
内置工具 32 个 ~15 个 ~10 个 ~12 个
LSP 集成 14 个操作 有限 基础诊断
调试器 DAP (28 ops)
浏览器 内置 Puppeteer
子代理 内置 task 有 agent 工具
编辑方式 Hashline(哈希锚点) str_replace apply_patch edit/patch
原生性能 Rust N-API in-process Node Node Go native

简单说:omp 是功能最全的——别人需要装插件的东西它出厂自带。代价是体积更大、配置项更多。


安装

各平台安装命令

# macOS / Linux(推荐)
curl -fsSL https://omp.sh/install | sh

# Homebrew
brew install can1357/tap/omp

# Bun(推荐,最快)
bun install -g @oh-my-pi/pi-coding-agent

# Windows PowerShell
irm https://omp.sh/install.ps1 | iex

WSL 用户推荐用 bun 安装(避免权限问题,安装到 ~/.bun/bin):

bun --version || npm install -g bun
bun install -g @oh-my-pi/pi-coding-agent
hash -r; omp --version    # 应显示 omp/16.x

⚠️ 别装在 /mnt/c 等 Windows 挂载盘上,I/O 慢。

配置 API 接入

omp 通过 ~/.omp/agent/models.yml 配置自定义模型 provider。以七牛云为例:

providers:
  qiniu:
    baseUrl: https://api.qnaigc.com/v1
    api: openai-completions
    apiKey: sk-your-api-key
    authHeader: true
    models:
      - id: gpt-5.5
        name: GPT-5.5
        reasoning: true
        input: [text, image]
        contextWindow: 400000
        maxTokens: 128000
      - id: openai/gpt-5.6-sol
        name: GPT-5.6 Sol
        reasoning: true
        input: [text, image]
        contextWindow: 400000
        maxTokens: 128000

获取 API Key:

  1. 打开 https://s.qiniu.com/2uMRza 注册七牛云账号
  2. 完成实名认证
  3. 进入费用中心,充值 100 元(开启每分钟 5 次请求额度)
  4. 进入 API Key 管理页面:https://portal.qiniu.com/ai-inference/api-key
  5. 点击「创建」,名称填 “omp”
  6. 复制 sk- 开头的 Key,粘贴到 models.yml 的 apiKey 字段

验证配置:

omp models find qiniu   # 应显示你配的模型
omp --model gpt-5.5 -p "你好"

日常使用

启动方式

# 交互模式(默认)
cd my-project
omp

# 指定模型
omp --model "DeepSeek-V4-Pro"

# 单次命令
omp -p "解释这个项目的架构"

# 继续上次会话
omp -c
omp --resume    # 选择历史会话

核心快捷键

快捷键 功能
Ctrl+P 切换模型(在配置的模型间循环)
Ctrl+G 查看子代理状态
Esc Esc 会话树/分支
Ctrl+C 中断当前生成

常用斜杠命令

/model             # 切换模型
/mcp               # 查看 MCP server 状态
/review            # 代码审查
/collab            # 协作分享会话
/debug             # 调试面板
/advisor           # 开启/查看 advisor 模型状态

单次命令示例

# 理解项目
omp -p "解释这个项目的架构,列出核心模块依赖关系"

# 写代码
omp -p "实现一个 LRU Cache,支持 TTL 过期"

# 修 Bug
omp -p "运行测试,分析失败用例,修复它们"

# 重构
omp -p "把这个文件的回调地狱改成 async/await"

# Git 操作
omp -p "看 main..HEAD 的 diff,写一个清晰的 PR 描述"

模型角色系统

omp 有独特的模型角色设计,按任务意图路由不同模型:

角色 用途 命令行指定
default 正常对话/编码 --model
smol 廉价子代理 fan-out --smol
slow 深度推理 --slow
plan 规划模式 --plan

实用配置策略:

# 默认用 DeepSeek V4 Flash(快、便宜)
# 复杂任务切 GPT-5.6 Sol
# 子代理用 GPT-5.4 Mini
omp --model "DeepSeek-V4-Flash" --slow "gpt-5.6-sol" --smol "gpt-5.4-mini"

Ctrl+P 在当前角色的模型间循环切换。


高级玩法

1. 子代理(Subagents)

omp 的杀手锏之一。把任务拆分成多个并行 worker:

> 帮我重构 src/services/ 下的 5 个文件,每个文件转成 TypeScript 并加类型注解

omp 会自动用 task 工具 spawn 多个子代理,每个处理一个文件,互不干扰。

2. Plan 模式

先规划再执行:

omp --plan-yolo "把这个项目从 CommonJS 迁移到 ESM"

agent 先用 plan 模型制定方案,确认后切到执行模型实施。

3. Advisor(顾问模型)

开启后,一个独立模型实时审阅主 agent 的每一步:

omp config set advisor.enabled true

顾问发现问题会内联提示(concern/blocker),主 agent 看到后自行修正。

4. LSP 深度操作

不只是诊断——支持重命名、查找引用、跳转定义、代码操作:

> 把 getUserName 重命名为 getUsername,确保所有引用都更新

omp 调用 lsp 工具的 workspace/willRenameFiles,barrel files、re-exports 全部自动更新。

5. 调试器集成

> 这个程序段错误了,帮我用 lldb 附加调试找到问题

omp 通过 DAP 协议驱动 lldb/dlv/debugpy,能设断点、单步、查看变量、评估表达式。

6. 浏览器控制

> 打开 http://localhost:3000,截个图看看页面渲染是否正确

内置 Puppeteer 驱动,隐身模式默认开启。还能控制 Electron 应用(如 Slack)。

7. 协作会话

/collab           # 生成共享链接 + 二维码
/collab view      # 只读分享

别人用 omp join <link> 或浏览器加入,实时协作。端到端加密,relay 看不到内容。

8. 记忆系统(Hindsight)

omp config set memory.backend hindsight

agent 跨会话记住你的项目:用 retain 写入事实,recall 检索,reflect 综合分析。项目级隔离。

9. MCP 扩展

~/.omp/agent/mcp.json 注册外部工具:

{
  "mcpServers": {
    "imagegen": {
      "command": "npx",
      "args": ["-y", "tsx", "~/projects/imagegen-mcp/src/server.ts"],
      "env": { "SILICONFLOW_API_KEY": "sk-xxx" }
    }
  }
}

10. 自动继承其他工具配置

omp 自动读取 .claude/.cursor/.codex/.cline/.vscode/ 等目录的规则和 MCP 配置。不需要迁移。


性能调优

Thinking Level

omp --thinking high    # 复杂任务
omp --thinking low     # 简单问答
omp --thinking max     # 最深度推理

Prewalk 模式

规划完成后自动切到便宜模型执行:

omp --prewalk --prewalk-into "gpt-5.4-mini"

Fallback 链

模型 429 时自动降级:

# 在 config.yml 中
retry:
  fallbackChains:
    "gpt-5.6-sol": ["gpt-5.5", "gpt-5.4-mini"]

真实案例

案例 1:大规模重构

omp --model "gpt-5.6-sol" --thinking high
> 这是一个 Express + JS 项目,帮我:
> 1. 分析模块依赖
> 2. 从底层开始逐个转 TypeScript
> 3. 每转完一个文件就跑测试确认没破坏

omp 会用 subagents 并行处理独立模块,用 LSP 确保类型正确。

案例 2:调试 segfault

omp --model "DeepSeek-V4-Pro"
> 编译运行 src/main.c,程序 segfault 了。
> 用 lldb 附加调试,找到崩溃位置和原因,修复它。

案例 3:PR Review

omp
/review main..feature-branch

spawn 专门的 reviewer subagent,按 P0-P3 分级输出问题和 verdict。


常见问题

omp 免费吗?

omp 本身开源免费。需要 API(按量付费)。用七牛云/SiliconFlow 等国内中转即可。

启动后默认是 gemma4:31b-cloud?

models.yml 没放对位置。必须在 ~/.omp/agent/models.yml。用 omp config path 确认。

和 Claude Code 选哪个?

omp 工具最全(调试器、浏览器、子代理都内置),适合重度终端用户。Claude Code 推理强但功能少。建议都装。

支持哪些模型?

40+ provider 内置,任何 OpenAI/Anthropic 兼容端点都能通过 models.yml 接入。

Tip: Please use nerdfont?

运行 omp config set symbolPreset nerd,终端字体设为 Nerd Font。


延伸阅读

  1. omp 官网:https://omp.sh
  2. GitHub:https://github.com/can1357/oh-my-pi
  3. 七牛云注册(获取 API Key):https://s.qiniu.com/2uMRza
  4. Discord 社区:https://discord.gg/oh-my-pi
Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐