oh-my-pi (omp) is a terminal-based AI coding agent forked from Mario Zechner's Pi project. It's built for developers who want an agent that goes beyond chat-and-edit: it wires in an LSP client, a real debugger via DAP, persistent code execution, and a multi-provider model layer, all running as a single native binary written in TypeScript and Rust.
It targets engineers doing serious day-to-day coding work with an agent, not casual prompt-and-paste users. If you want an agent that can rename symbols correctly, attach lldb or dlv to a crashing process, split your diff into atomic commits, or fan work out to subagents with typed results, this is aimed at that workflow.
task spawns isolated workers in their own worktrees and returns schema-validated results to the parent, avoiding prose parsing and merge conflicts./collab shares a live session over a relay link (read-write or read-only) with client-side sealed frames.pr://, issue://, agent://, skill://, conflict://, and more let the agent read PRs, walk diffs, resolve merge conflicts, or pull fields out of subagent output through the same file-shaped tools.Install the native binary on macOS or Linux:
curl -fsSL https://omp.sh/install | sh
On Alpine/musl, install runtime dependencies first:
apk add libstdc++ libgcc
Via Homebrew:
brew install can1357/tap/omp
Via Bun (recommended for the npm package):
bun install -g @oh-my-pi/pi-coding-agent
On Windows (PowerShell):
irm https://omp.sh/install.ps1 | iex
For pinned versions with mise:
mise use -g github:can1357/oh-my-pi
Supported platforms are macOS, Linux, and Windows, and Bun ≥ 1.3.14 is required if installing via npm/Bun. Shell completions for bash, zsh, and fish are generated from the live CLI metadata:
# zsh
eval "$(omp completions zsh)"
# bash
eval "$(omp completions bash)"
# fish
omp completions fish > ~/.config/fish/completions/omp.fish