In January, Anthropic suddenly blocked third-party tools from using Claude subscriptions. Overnight, with no warning.
OpenCode got hit the hardest. The team had to remove Claude login support after legal pressure. The commit message was literally just: “anthropic legal requests.”
And that kinda brings us to the obvious question. If you’re using your own API keys anyway, which open-source agent do you actually pick?
OpenCode is sitting at 199K stars, probably past 200K by the time you read this, with around 8 million monthly devs.
Then there’s Pi. Bare minimum by design. Four tools. A system prompt under 1,000 tokens. And somehow, top of our benchmark. Again.
ℹ️ We recently covered Pi Agent vs. Claude Code. Check that out if you're not sure whether Anthropic or Pi suits you better The easiest way I’d frame it is this:
💁 OpenCode is VS Code (bit bloaty). Pi is NeoVim (bare minimum). So which one do you go for? Let's get into the difference.
| Category | Pi | OpenCode | Winner | | --- | --- | --- | --- | | Real tool use (our eval) | 21/30 tasks passed, $0.078 per success | 19/30 tasks passed, $0.119 per success | Pi | | Total eval spend | $1.64 for all 30 tasks | $2.25 for all 30 tasks | Pi | | Speed | 362.9s median per task, slowest of the bunch | 280.6s median per task | OpenCode | | Context overhead | Under 1,000 tokens, prompt + tool defs | ~6,900 tokens per request | Pi | | Out-of-the-box features | Four tools | Plan mode, MCP, LSP diagnostics, undo/redo, permissions, subagents, and a lot more | OpenCode | | Model support | 20+ providers, 300+ models, mid-session switching | 75+ providers via AI SDK and models.dev | OpenCode | | Cheap model access | BYOK or local, that's it | Zen gateway at cost, plus Go at $10/month | OpenCode | | Extensibility | TypeScript extensions running inside the agent process | Plugins, custom agents, skills, mostly config-driven | Pi | | Sessions | Branchable session trees with fork and rewind | Linear log with undo/redo, but survives disconnects | Pi | | Surfaces | Terminal | TUI, desktop app, web UI, IDEs via ACP, GitHub and GitLab CI | OpenCode | | Permissions | Nothing. Full system access from prompt one, which isn't really my preferred style | allow/ask/deny per tool with glob patterns | OpenCode | | Resource footprint | Lightweight, single process | 1GB+ RAM for a TUI is kinda crazy | Pi |
And honestly, that feels right. These two are built for pretty different kinds of people anyway.
Remember the VS Code vs. Neovim thing I said earlier? Pi is more like a platform you program. You get a tiny core and build your own harness around it in TypeScript.
OpenCode is more like a product you configure. You get something much closer to a full Claude Code replacement on day one, then tweak it through config.
OpenCode wins on features, provider support, surfaces, and the simple fact that a normal person can pick it up and start using it without building half the setup themselves.
So yeah, the real tiebreaker is basically what kind of person you are. Keep reading.
ℹ️ A minimal terminal coding agent that ships four tools and expects you to build the rest yourself. Quick recap if you missed our Pi vs Claude Code post.
Pi is Mario Zechner's answer to harness bloat. He got tired of Claude Code changing under him, so he built an agent where the model gets read, write, edit, and bash, a system prompt of a few hundred tokens, and nothing else. No MCP. No permissions. No plan mode. No subagents. All on purpose.
It now lives under Earendil after his April blog post "I've sold out," and the core stays open-source.
The real product is the extension system. TypeScript files run inside the same process as the agent loop, and Pi can read its own source code. So when you need a missing feature, you literally ask Pi to build it.
💁 Fun Fact: Pi has "only" 94k stars, but the npm package pulls around 1.3 million downloads a week. Growing crazy fast among developers. Not everyone is fond of VS Code. 🤷♂️
