Oh My Pi (omp) is a terminal coding agent that carries the parts of an integrated development environment an agent usually lacks: Language Server Protocol (LSP) operations, a Debug Adapter Protocol (DAP) debugger, persistent Python and JavaScript execution, a real browser, and desktop control. It is a fork of Pi with a native Rust core of roughly 80,000 lines, and ships 31 built-in tools, 14 LSP operations, and 28 DAP operations.
Edits use hashline, a format where the model points at content-hash anchors instead of retyping lines; a stale file makes the anchors diverge and the patch is rejected before it writes. The project reports edit-format effects per model, including Grok Code Fast 1 moving from 6.7% to 68.3%, Gemini 3 Flash gaining 5 percentage points over str_replace, Grok 4 Fast spending 61% fewer output tokens, and MiniMax roughly doubling its pass rate.
Rather than shelling out, the Rust core links the real implementations into the process: ripgrep-backed search, glob and find walkers, a bash engine with persistent sessions and 58 in-process command-line utilities, tree-sitter and ast-grep structural editing, PTY allocation, desktop capture and input, syntax highlighting, and BPE token counting. The same binary runs on macOS, Linux, and Windows without a WSL bridge.
Coordination features include subagents that fan out into isolated worktrees and return schema-validated objects, an agent hub for watching and steering live workers, an advisor role in which a second model reviews every turn and injects inline notes, time-traveling stream rules that abort mid-token on a regex match and retry with the rule injected, and /collab, which puts a live session on a client-sealed relay behind a link or QR code in read-write or view-only mode. Sixteen internal URL schemes — pr://, issue://, agent://, skill://, ssh://, and others — make pull requests, subagent output, and merge conflicts readable and writable through the same filesystem-shaped tools.
Model routing spreads work across nine roles (default, smol, slow, plan, commit, vision, task, advisor, tiny) over more than 60 providers, covering frontier APIs, subscription coding plans, and self-hosted servers, with custom OpenAI-compatible providers declared in models.yml, per-role fallback chains on quota errors, path-scoped model sets, and round-robin credentials. web_search chains 23 backends with site-aware extraction for code hosts, package registries, research sources, forums, docs, and the NVD, OSV, and CISA KEV vulnerability databases. Four entry points share the engine: the interactive terminal interface, a one-shot -p mode, a Node SDK, and stdio-driven RPC or Agent Client Protocol for editors.
Features
- Hashline edits: content-hash anchors instead of retyped lines, with stale-anchor rejection and recovery
- LSP integration: diagnostics, navigation, symbols, code actions, and renames routed through workspace/willRenameFiles
- Real debugger: DAP sessions against lldb, dlv, and debugpy with breakpoints, stepping, frames, and variables
- Code execution: persistent Python and Bun cells that call back into the agent's own tools over a loopback bridge
- Subagents: parallel workers in isolated worktrees returning schema-validated results, supervised from an agent hub
- Advisor role: a second model on its own context reviews each turn and injects notes or blockers
- Stream rules: a regex match aborts the stream, injects the rule, and retries from the same point, surviving compaction
- Native core: ripgrep, glob, find, an embedded bash with 58 in-process utilities, ast-grep, PTY, and desktop control compiled in
- URL-shaped resources: 16 internal schemes make pull requests, issues, skills, conflicts, and subagent output readable by read and grep
- Model routing: nine roles across 60-plus providers, with custom OpenAI-compatible endpoints, fallback chains, path-scoped models, and key rotation
Extensions & skills
Integrates with
Integrated by
Agent of Empires
Manage multiple Claude Code, OpenCode agents from either TUI or Web for easy access on mobile. Also supports Mistral Vibe, Codex CLI, Gemini CLI, Pi.dev, Copilot CLI, Factory Droid Coding.
AI Memory
Cross-agent, cross-machine memeory. Solution for long term memory for agent coding CLIs and to facilitate handoff between different agent vendors
Fractal
Spin up coding agents and you lose track of what each changed and what it spent. Fractal runs every agent loop in its ow
Gortex
Gortex indexes repositories into a code graph and tags each call edge with how it was resolved: name-only match, tree-si
