omp (Oh My Pi): A Coding Agent with the IDE Wired In

⬅️ Back to Tools

omp: A Coding Agent with the IDE Wired In

What it isA batteries-included terminal coding agent: 31 tools, LSP + debugger integration, subagents, 60+ model providers
PlatformmacOS / Linux / Windows, one binary; Bun ≥ 1.3.14 runtime with an ~80k-line Rust native core
PriceFree, open source (MIT)
Linkomp.sh · github.com/can1357/oh-my-pi

Most coding agents shell out to grep, dump whole files into context, and sprinkle print statements when something breaks. omp is Can Bölük’s fork of Mario Zechner’s Pi that attacks exactly those habits: reads summarize instead of dumping, edits land on the first attempt, renames go through the language server, and segfaults get met with lldb instead of printf.

  1. The plumbing around a model matters more than the model itself, and omp has receipts. Its edit format lifted Grok Code Fast 1’s success rate from 6.7% to 68.3%, doubled MiniMax’s pass rate on identical weights, and cut Grok 4 Fast’s output tokens by 61%. Same models, same prompts; only the tooling changed.

  2. Edits use hashlines: content-hash anchors instead of retyped lines. The model points at anchors rather than reproducing code, which kills whitespace battles and string-not-found retry loops. Edit a stale file and the anchors diverge, so the patch is rejected before it corrupts anything.

  3. Your IDE’s knowledge comes along. Renames route through workspace/willRenameFiles, so barrel files, re-exports, and aliased imports update before the file moves. The debug tool drives real DAP sessions: attach lldb to a segfaulting binary, walk goroutines with dlv, pause a wedged Python process via debugpy. Fourteen LSP ops, twenty-eight DAP ops.

  4. The heavy lifting is in-process Rust, roughly 80,000 lines across six crates. ripgrep-backed search, an embedded brush bash with persistent sessions, and 58 ported command-line utilities run inside the binary with zero fork-exec on the hot path. The same binary covers macOS, Linux, and Windows without WSL.

  5. Subagents are first-class. task fans work out to isolated worktrees and returns schema-validated objects the parent reads directly, no prose parsing. Alt+A opens Agent Hub to watch each worker’s live transcript, steer it, or kill one that is stuck. A separate advisor model can watch every turn on its own context and inject concerns inline when the main agent drifts.

  6. GitHub is just another filesystem. read pr://1428 returns the same shape as reading a local file, grep walks diffs like directories, and merge conflicts resolve by writing @theirs or @ours to conflict://N. Sixteen internal schemes flow through every file-shaped tool the agent already knows.

  7. Model routing is the deepest in any CLI agent I have seen. Sixty-plus providers including local Ollama and llama.cpp, ten roles (smol for cheap fan-out, slow for deep reasoning, plus plan, commit, and advisor), per-role fallback chains for quota walls, round-robin API keys with backoff, and custom OpenAI-compatible endpoints declared in YAML.

  8. It inherits your existing setup instead of importing it. Rules and skills from .claude, .cursor, .windsurf, .gemini, .codex, .cline, Copilot, and VS Code configs are read natively in their own formats. Honest limits: several tools ship disabled behind settings, the surface is large enough that discovery takes real sessions, and as an active fork you are tracking upstream Pi plus a fast-moving changelog.

Install & first run

curl -fsSL https://omp.sh/install | sh

Homebrew works too (brew install can1357/tap/omp), as do Bun, Nix, mise, and a PowerShell installer for Windows. Then:

cd your-repo && omp

The TUI opens, picks up whatever rules and credentials already exist on disk, and starts. Add eval "$(omp completions zsh)" to your shell config; completions generate from live command metadata, including model names for --model.

Worth your time if: you live in the terminal and want an agent with the IDE’s brain, language servers and debuggers included, instead of another wrapper around bash and hope.

Related TMFNK Content

  • MCP Agent Mail Run several of these agents on one repo? This is the coordination layer that keeps them out of each other’s files.
  • Plannotator Visual plan and review surfaces for AI coding agents, a good complement to terminal-first workflows.
  • VibeCodingTracker With ten routable model roles across 60+ providers, you will want real numbers on what each one costs you.

Crepi il lupo! 🐺