oh-my-pi 中文教程:安装 omp 并检查 LSP 与调试器
oh-my-pi 的命令名是 omp。它从 Pi 分支发展而来,把编码 Agent、LSP、DAP 调试、子代理、浏览器和多模型路由放进一个终端工具。功能很多,安装后的第一步应是确认本机依赖,而不是一次打开所有工具。
1. omp 多了哪些工程能力
官方 README 当前列出 31 个内置工具、14 个 LSP 操作、28 个 DAP 操作和 60 多个 provider。LSP 写入链能处理跨文件重命名;DAP 可接 lldb、dlv 和 debugpy;task 可以把工作分到隔离 worktree,并返回经过 schema 校验的结果。
底层也比普通 CLI 重。项目说明约有 80,000 行 Rust 核心,负责进程内 Shell、搜索、AST、PTY、文件遍历和部分桌面能力,再通过 N-API 交给 TypeScript 层。好处是工具面统一,代价是功能多、资源和本机依赖也更多。
2. 选择一种官方安装方式
# macOS 或 Linux curl -fsSL https://omp.sh/install | sh # Homebrew brew install can1357/tap/omp # Bun 1.3.14+ bun install -g @oh-my-pi/pi-coding-agent # Windows PowerShell irm https://omp.sh/install.ps1 | iex
Alpine 用户要先装 libstdc++ 和 libgcc。官方还提供 Nix 和 mise 路径。自动化环境最好固定版本,不要每天跟随最新 release。
3. 在可回滚仓库里做首次检查
进入一个小型 Git 仓库后运行 omp,按界面选择 provider 和登录方式。先让它读取一个文件、做一处小改动、运行一个安全的检查命令。随后再试 LSP 定义跳转或重命名,并确认改动范围符合预期。
LSP 不是随二进制自动获得的语言知识。TypeScript、Python、Go、Rust 等语言仍要准备对应 language server。调试也一样,C/C++ 需要 lldb 或其他兼容调试器,Go 需要 dlv,Python 通常需要 debugpy。
4. 再开启子代理和浏览器
确认基础链路后,再给 task 分一个能单独验收的小任务,检查隔离 worktree 和返回结构。浏览器工具涉及页面状态、网络和本地存储,先使用测试账号与非生产环境。v18.2.8 新增了无障碍审计、React 检查、控制台与网络监控、性能跟踪和录屏等浏览器能力,这些都需要额外资源。
5. 与上游 Pi 对比
Pi 官方仓库 把统一模型 API、Agent runtime、coding agent CLI、TUI 和 durable runtime 分成多个包。omp 在自己的 CLI 中突出 LSP、DAP、子代理、浏览器和大量进程内原生工具。两个项目都在快速更新,比较时应看当前版本的包、工具和权限边界,不能把 omp 的功能表直接套给 Pi。
这里仅补原教程没有展开的事实和边界。安装命令与操作步骤仍以前文为准。
先判断这个项目是否适合你
适合谁用
适合需要跨文件重命名、真实调试器、终端代码评审、隔离子代理和多 provider 路由的工作。只想要四个基础工具和自行组合扩展的用户,可以先比较上游 Pi;依赖 LSP、DAP 或浏览器的任务还要准备对应的本机服务。
采用建议
omp 适合愿意用较大工具面换取完整终端工程能力的人。首次使用应从可回滚仓库和少量工具开始,确认模型、LSP 与调试器链路后再启用浏览器、子代理和自动提交等能力;团队集成应固定版本。
原教程未展开的系统信息
核心功能
LSP 和 DAP 直接接入写入流程
官方 README 列出 14 个 LSP 操作和 28 个 DAP 操作。重命名可走 workspace/willRenameFiles;调试器可接 lldb、dlv 或 debugpy,而不是只依赖日志输出。
进程内搜索、Shell 与 AST 工具
项目把搜索、Shell、AST、PTY 和图像处理等能力放在 Rust/N-API 层,官方当前说明约 80,000 行 Rust 核心,并提供 macOS、Linux 和 Windows 二进制。
多入口和多模型路由
omp 提供交互 CLI,并支持 SDK、stdio RPC 与 ACP 等接入方式。官方 README 当前写明 60+ providers,具体登录方式和模型能力要以安装版本的目录为准。
架构与数据流
仓库是 TypeScript、Rust 和 Python 组成的 monorepo。TypeScript 包负责 Agent、模型接入和终端界面;六个 Rust crate 通过平台相关的 N-API addon 提供 Shell、搜索、AST、隔离工作区、语音和文件遍历;Python 与 Bun worker 可保持会话并回调 Agent 工具。发布产物按平台打包为 omp 二进制,也可以通过 Bun 全局安装。
常见问题
oh-my-pi 和上游 Pi 是什么关系?
omp 的官方 README 说明它源自 Pi,但两者是不同项目,包名、功能范围、发布节奏和维护仓库都不同。
安装 omp 一定要先装 Bun 吗?
不一定。官方安装脚本和预编译路径不要求先装 Bun;选择 Bun 全局包时才需要 Bun 1.3.14 以上。
装完就能使用全部 LSP 和调试功能吗?
不能保证。具体语言需要对应 language server;调试任务还需 lldb、dlv、debugpy 等本机组件。
为什么自动化集成要锁定 omp 版本?
项目更新很快并会发布 breaking changes。固定版本更容易复现 SDK、RPC 和脚本行为,也方便逐版阅读 release。