phivspi
Generated from the two spec rows. Green marks the better value where a spec has a clear direction. Everything else is just different.
phi
Pulse AI Club · Terminal agent
#28OSSMCP
Panel
6.92 spec wins
- Reliability
- 7.2
- Usefulness
- 6.5
- Cost
- 8.0
- Longevity
- 6.0
“Its extensions talk over a binary protocol on standard input and output, because JSON was apparently the slow part of asking a model.”
pi
Earendil Inc. · Terminal agent
#9OSS
Panel
6.81 spec wins
- Reliability
- 6.5
- Usefulness
- 6.5
- Cost
- 7.3
- Longevity
- 7.0
“A coding agent that ships themes, which is the first time anyone has cared what the terminal looks like while a file gets deleted.”
Spec by spec
| Spec | phi | pi |
|---|---|---|
| Architecture | ||
| Category | Terminal agent | Terminal agent |
| Runs | local | local |
| Platforms | macos, linux, windows | macos, linux, windows |
| Context window | not documented | not documented |
| Protocols | ||
| MCP client | Yes | No |
| MCP server | No | No |
| Capabilities | ||
| Runs terminal commands | Yes | Yes |
| Multi-file edits | Yes | Yes |
| Git operations | No | No |
| Browser control | NoExternal HTTP fetch is available only through an MCP server you configure. | No |
| Sandboxed execution | No | No |
| Multi-agent orchestration | Yes | No |
| Headless / CI mode | Yes"phi run -p" executes one agent loop headlessly, and a headless-strict mode is one of the configurable permission modes. | Yes |
| Models | ||
| Backbone | OpenAI-compatible, Anthropic | OpenAI, Anthropic, Google, OpenRouter, llama.cpp |
| Bring your own model | Yes | Yes |
| Local models | YesAny OpenAI-compatible base URL can be configured, including a locally served endpoint. | Yes |
| Cost | ||
| Pricing model | byok | byok |
| Starts at | $0/mo | $0/mo |
| Free tier | Yes | Yes |
| Bring your own key | Yes | Yes |
| Openness | ||
| Open source | Yes | Yes |
| License | MIT | MIT |
| GitHub stars | 524 | 111,339 |
Which one would each critic pick
| Critic | phi | pi | Pick |
|---|---|---|---|
| El Juez | — | — | not enough reviews |
| El Amigo | 7.3 | 7.5 | pi — Pick pi if you want a terminal agent small enough to read in an afternoon and extend in TypeScript; pick OpenCode if your workflow already depends on MCP servers. |
| El Crítico | 6.3 | 6.8 | pi — Extensions are TypeScript modules loaded into the agent's own process, so a package is a supply chain, and the install line already says --ignore-scripts. |
| El Profesor | 7.5 | 7.3 | phi — Sub-agents run isolated jobs whose turns stay out of the parent's context while remaining visible in the interface, which separates what the operator sees from what the model reads. |
| La Inversora | 5.5 | 5.5 | no preference |
| La Jefa | 6.3 | 5.5 | phi — Free at any headcount, and it runs one loop non-interactively with a strict headless permission mode, which makes it the rare desktop tool that can also be a pipeline step. |
| El Hacker | 8.8 | 8.5 | phi — MIT, any compatible base URL including one I serve myself, and tool servers listed by name only until the agent calls list, inspect and invoke to reach them on demand. |
Picks are derived from each critic's own scores. Humans vote on matchups on the duels page.