There are many agent harnesses, but this one is mine
I recently switched from using the official Claude Code and Codex harnesses to pi, and I absolutely love it. There was so much bloat and so many unnecessary features creeping into the claude/codex cli, and I felt like I was gradually losing control of the harness layer. I consider my agent harness to be a tool in the same class as my editor/IDE; the primary reason I use Emacs is beacuse it is software purpose-built for the user to fully own everything about it. Pi feels like it is built around a similar philosophy.
My initial curiosity was piqued while I hearing about the following from various Hacker News comments:
- Modern LLMs are so good that you don't need a bunch of specialized tools; they can get a lot done with a handful of primatives.
- Pi is much lighter on context, but without degrading the LLM's capabilities.
I've been casually experimenting with local models this year, and that last point is pretty important. The final straw, however, was when I realized that Codex was now auto-starting a persistent background daemon.
Pi is indeed pretty minimal. It has just 5 built-in tools enabled by default:
readbashpowershelleditwrite
And three more you can enable:
grepfindls
It doesn't even have a built-in web search capability! As of version 1.0, it does support MCP servers out of the box.
So far I have only used the 5 default-enabled tools and one additional skill to enable the use of ketch for providing a websearch capability. It has been amazing. I have noticed no decline in capability compared to the native codex and claude harnesses, and I have been very happy without all the fancy additional stuff like sub-agents, planning mode, etc.
Oh, and no more background daemons.