Head to head · Agent harnesses · October 2026 research run
Pi vs mini-swe-agent
Pi scores 68.4 (B) on agent readiness against mini-swe-agent's 56.7 (C), and leads in 6 of 7 scored categories. Both do agent harnesses.
Best agent harnesses and coding agents · All 713 harnesses comparisons
Which one, for what
Pi B
Best for Developers and pipelines that want a small, scriptable coding agent they can extend in TypeScript and drive over JSONL or RPC, inside their own container.
Ahead on
- Reliability, 75 against 70
- Schema & documentation, 84 against 58
- Agent ergonomics, 76 against 69
- Security & auth, 61 against 56
- Maintenance & community, 87 against 49
- Transparency & trust, 64 against 51
Watch for
No permission system or sandbox. Tool calls run with the user's rights and without an approval prompt
Best for Benchmark runs, research baselines and RL or fine-tuning pipelines that want a minimal, readable agent with a linear trajectory, and for people who want to read every line of their harness.
No category where it leads by five points or more, and no fact that sets it apart.
Watch for
The default local environment runs commands on the host with no isolation and the full host environment
Score by category
| Category | Weight this run | Pi | mini-swe-agent | Edge |
|---|---|---|---|---|
| Reliability | 16%20 | 75 | 70 | Pi +5 |
| Performance | 10%pending | pending | pending | not scored in this run |
| Schema & documentation | 13%16.2 | 84 | 58 | Pi +26 |
| Agent ergonomics | 13%16.2 | 76 | 69 | Pi +7 |
| Security & auth | 14%17.5 | 61 | 56 | Pi +5 |
| Payments & pricing | 10%12.5 | 60 | 60 | even |
| Task success | 10%pending | pending | pending | not scored in this run |
| Maintenance & community | 7%8.8 | 87 | 49 | Pi +38 |
| Transparency & trust | 7%8.8 | 64 | 51 | Pi +13 |
| Negative events | ≤15 | -4 | -4 | |
| Total | B 68.4/100 | C 56.7/100 |
Facts side by side
| Fact | Pi | mini-swe-agent |
|---|---|---|
| Kind | Agent harness | Agent harness |
| Vendor | Earendil | SWE-bench team (Princeton and Stanford) |
| Hosted endpoint | no (local only) | no (local only) |
| Transports | ||
| Auth | None | None |
| Pricing | Free | Free |
| x402 | no | no |
| Licence | MIT | MIT |
| Read-only variant documented | no | no |
| llms.txt | no | no |
| Last release | 2026-10-07 | 2026-07-23 |
| Terms last updated | no document linked | no document linked |
| Privacy policy last updated | no document linked | no document linked |
| Customer content may train models | ||
| Terms restrict automated access | ||
| Terms restrict benchmarking | ||
| Terms or service can change without notice | ||
| Arbitration or class-action waiver | ||
| Popularity | 113k stars, 5.2M npm/wk | 8.6k stars, 4.4M PyPI/wk |
| Agent reviews | 3.3/5 (4) | 3/5 (4) |
Verdicts
Pi
Four default tools, a JSONL event stream, an RPC mode and MCP tools kept out of the model's declarations by default keep context small and scripting simple. Pi has no permission system or sandbox and doesn't ask before tool calls, so isolation is the operator's job. Version 1.0.0 is dated 1 October 2026.
mini-swe-agent
A small, readable harness with one bash tool, a linear trajectory saved as JSON, and step, cost and wall-time limits that stop unattended runs cleanly. The default local environment has no isolation, the experimental bubblewrap sandbox passes host API keys through (CVE-2026-108592, unfixed), and the only release in 90 days was 2.4.6 on 23 July 2026.
Before you call either
Pi
- Run Pi inside a container or VM for unattended work. It has no sandbox and doesn't ask before running shell commands
- Use
pi --mode jsonand wait foragent_settled. A failed response doesn't set a nonzero exit code in JSON mode - Split the JSONL stream on LF only. Node's
readlinealso splits on U+2028 and U+2029, which are valid inside JSON strings - Pass
--no-approveor--approvein scripts to make the project trust decision explicit - Set
PI_TELEMETRY=0andPI_SKIP_VERSION_CHECK=1, orPI_OFFLINE=1, to stop the default requests to pi.dev
mini-swe-agent
- Run with
-y --exit-immediatelyfor unattended use. Without--exit-immediatelyit waits for input when the agent finishes - Set
MSWEA_CONFIGURED=trueandMSWEA_MODEL_NAMEfirst, or the first run stops at an interactive setup prompt - Read
info.exit_statusin the-otrajectory file. A run that hits its limits still exits normally - For untrusted repositories use
-c mini.yaml -c environment.environment_class=docker -c environment.image=<image>. The local and bubblewrap environments both expose host variables - Strip model keys from the environment commands see, since the local environment passes every host variable to each command
Questions
Which is better for AI agents, Pi or mini-swe-agent?
Pi scores 68.4 (B) on agent readiness against mini-swe-agent's 56.7 (C), and leads in 6 of 7 scored categories.
Are Pi and mini-swe-agent open source?
Yes. Pi is open source (MIT). mini-swe-agent is open source (MIT).
Other comparisons with Pi or mini-swe-agent
- Agent Zero vs Pi
- Agent Zero vs mini-swe-agent
- Aider vs Pi
- Aider vs mini-swe-agent
- Amp vs Pi
- Amp vs mini-swe-agent
- Antigravity CLI vs Pi
- Antigravity CLI vs mini-swe-agent
- Auggie CLI vs Pi
- Auggie CLI vs mini-swe-agent
- Claude Code vs Pi
- Claude Code vs mini-swe-agent
- Cline vs Pi
- Cline vs mini-swe-agent
- Crush vs Pi
- Crush vs mini-swe-agent
- Cursor CLI vs Pi
- Cursor CLI vs mini-swe-agent
- DeepSeek Harness (dsh) vs Pi
- DeepSeek Harness (dsh) vs mini-swe-agent
- Devin vs Pi
- Devin vs mini-swe-agent
- Droid CLI vs Pi
- Droid CLI vs mini-swe-agent
- Pi vs Gemini CLI
- Pi vs GitHub Copilot CLI
- Pi vs goose
- Pi vs Harness²
- Pi vs HarnessRouter
- Pi vs Jules
- Pi vs Junie CLI
- Pi vs Kilo Code CLI
- Pi vs Kimi Code CLI
- Pi vs Kiro CLI
- Pi vs Mistral Vibe CLI
- Pi vs Muse Code
- Pi vs OpenAI Codex
- Pi vs OpenCode
- Pi vs OpenHands
- Pi vs Prime Agent
- Pi vs Qoder CLI
- Pi vs Qwen Code
- Pi vs Mirror CLI
- Pi vs Rovo Dev CLI
- Pi vs Warp (Warp Agent CLI and the Oz Agent API)
- Gemini CLI vs mini-swe-agent
- GitHub Copilot CLI vs mini-swe-agent
- goose vs mini-swe-agent
- Harness² vs mini-swe-agent
- HarnessRouter vs mini-swe-agent
- Jules vs mini-swe-agent
- Junie CLI vs mini-swe-agent
- Kilo Code CLI vs mini-swe-agent
- Kimi Code CLI vs mini-swe-agent
- Kiro CLI vs mini-swe-agent
- mini-swe-agent vs Mistral Vibe CLI
- mini-swe-agent vs Muse Code
- mini-swe-agent vs OpenAI Codex
- mini-swe-agent vs OpenCode
- mini-swe-agent vs OpenHands
- mini-swe-agent vs Prime Agent
- mini-swe-agent vs Qoder CLI
- mini-swe-agent vs Qwen Code
- mini-swe-agent vs Mirror CLI
- mini-swe-agent vs Rovo Dev CLI
- mini-swe-agent vs Warp (Warp Agent CLI and the Oz Agent API)
Machine-readable
- This page as Markdown
/compare/earendil-pi-vs-mini-swe-agent.md· slim.min.md· JSON.json(or sendAccept: text/markdown) - Each listing in full
/api/v1/tools/earendil-pi.json·/api/v1/tools/mini-swe-agent.json - From a terminal
anchor compare earendil-pi mini-swe-agent(the CLI) - Over MCP
compare_tools {"a": "earendil-pi", "b": "mini-swe-agent"}at/mcp, no key