Oh My Pi: The Harness I Didn't Know I Needed
In June I wrote that the harness matters more than the model. I didn’t say which one I use. I found it more or less around those same dates, it’s called Oh My Pi and today it’s my favorite agentic harness to work with.
Pi, on steroids
Oh My Pi —OMP from now on— is a TUI born as a fork of Pi, Mario Zechner’s agent. Pi is minimalist on purpose; OMP is the same engine with the batteries included. It ships 31 built-in tools, and several are the kind you didn’t know you were missing: a web_search that chains 23 providers, or a grep that runs inside the process instead of going out to call rg.
What you notice most day to day is the speed. It’s fast, it’s powerful and it updates at an absurd pace: 138 versions on npm in three months, from 16.1.17 to 18.3.0. More than one a day. Even so it’s stable, which is exactly what you wouldn’t expect reading that changelog.
It speaks Claude Code’s language
I liked it more than OpenCode and more than Pi itself. Honest caveat: I haven’t used either of them in a while, so the comparison is dated. What really sets it apart is something else: it’s compatible with the whole Claude Code ecosystem.
It reads what you already have. The rules, skills and MCP servers living in .claude load on first launch. No migration script, no intermediate format.
It installs Claude Code plugins. OMP’s marketplace uses the same registry format as Claude Code: /marketplace add anthropics/claude-plugins-official and the plugins install as they are.
Switching harnesses usually means redoing your configuration from scratch. Here the entry cost is almost zero.
One model for each task
OMP is multi-provider: more than 60 providers, and you can use several at once. I have GitHub Copilot, my Claude Code subscription and OpenCode Go connected, each with its own account.
On top of that come the roles. default for normal work, smol for cheap subagents, slow for deep reasoning, plan for plan mode, and five more. Each role has its model, and Ctrl+P cycles through the configured models for the active role. Choosing a model per task stopped being a chore and became a keyboard shortcut.
Plan mode
Of everything, the most powerful is plan mode. With Alt+Shift+P the agent switches to read-only: it explores the repo, searches the web, launches subagents that can’t write either and puts together a plan in markdown with the plan role’s model.
I review that plan in an overlay where I can annotate it section by section before approving it, and when I approve I can compact the context so the implementation starts clean. It’s the design meeting a rushed agent always skips.
It’s given me a lot of agility at work and helped me integrate several workflows that used to live apart.
The rest of the harness
My full harness —skills, rules, MCP servers— is material for another article. What I can already say is that I switch models all the time and I haven’t switched harnesses since.
Meanwhile, go to omp.sh and try it. You won’t regret it.