oh-my-pi 开源:1.1 万 Star 的终端编程 Agent 深度解析

lxiol

项目速览

  • GitHub: can1357/oh-my-pi
  • Stars: 11,207 ⭐ | Forks: 950
  • 技术栈:Rust 核心(~2.7 万行)+ TypeScript + Bun
  • 工具:32 个内置工具 | 13 种 LSP 操作 | 27 种 DAP 操作

出身与定位

oh-my-pi 是从 Mario Zechner 的 pi-mono fork 而来,持续开发者 @can1357 是一位在 Windows 和安全领域有深厚背景的工程师。这很重要——omp 的 Rust 核心、in-process ripgrep、Windows 原生支持,都是系统工程师的决策,不是前端工程师的审美选择。

独有特性

Hashline 编辑

每次编辑不是「找到这段字符串再替换」,而是在原文行上打内容哈希作为锚点。Agent 指锚点修改,文件被修改过导致锚点失效时框架直接拒绝。实测 Grok 4 Fast 输出 token 减少 61%,MiniMax 通过率翻倍。

真正的调试器

C → lldb,Go → dlv,Python → debugpy。27 种 DAP 操作,支持 stdio、unix socket、TCP、pid 四种附加方式。不是「建议你加 print」——是直接接入调试器单步执行。

eval:Python + JS 持久化会话

Python 内核和 Bun Worker 都能回调 Agent 自己的工具。在 Python 里用 tool.read 加载 CSV,从 JS 里画图,全程不离开 cell。支持 %pip%time%%bash!cmd 等 magics。

子 Agent 并联

task 命令把工作分发到隔离 worktree,返回 schema 校验过的类型化对象。父 Agent 直接读字段,不用解析自然语言。8 个内置 Agent,默认 32 并发。

安装

1
2
3
4
# macOS / Linux
curl -fsSL https://omp.sh/install | sh
# 或用 Homebrew
brew install can1357/tap/omp

总结

oh-my-pi 不是「多加了几个功能的 pi-mono fork」,而是一个把 IDE 拆开再重新拼到终端里的 Agent。Hashline 编辑、DAP 调试、时间回溯规则、in-process ripgrep——这些底层设计让它在终端编程 Agent 中独树一帜。

  • 标题: oh-my-pi 开源:1.1 万 Star 的终端编程 Agent 深度解析
  • 作者: lxiol
  • 创建于 : 2026-07-30 00:00:00
  • 更新于 : 2026-07-30 23:23:34
  • 链接: https://blog.lxiol.cn/2026/07/30/oh-my-pi-open-source-review/
  • 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。