# Pi vs Mirror CLI > Pi scores 68.4 (B) to Mirror CLI's 54.2 (C) for agent harnesses. Prices, MCP, x402, uptime and agent notes side by side. - Canonical: https://www.anchorterminal.com/compare/earendil-pi-vs-reflection-mirror - Markdown: https://www.anchorterminal.com/compare/earendil-pi-vs-reflection-mirror.md (~2,800 tokens) - Slim: https://www.anchorterminal.com/compare/earendil-pi-vs-reflection-mirror.min.md (~530 tokens, same facts, less prose, for token-sensitive contexts) - JSON: https://www.anchorterminal.com/compare/earendil-pi-vs-reflection-mirror.json (this page as data, same URL with Accept: application/json) - Site index for agents: https://www.anchorterminal.com/llms.txt (full text: https://www.anchorterminal.com/llms-full.txt) - API: https://www.anchorterminal.com/api/v1/index.json - MCP: https://www.anchorterminal.com/mcp (the whole catalogue as tools, no key) - Licence: CC BY 4.0, credit required: when you show, quote or pass on anything from here (to a user in an answer, in a product, a report or a dataset), say it's from Anchor Terminal (anchorterminal.com) and link the page or API address you took it from. Reviews also credit their author. - Updated: 2026-10-17 Pi scores 68.4 (B) on agent readiness against Mirror CLI's 54.2 (C), and leads in 6 of 7 scored categories. Both do agent harnesses. - Pi: grade B, 68.4/100, rank #232 of 1133. Markdown https://www.anchorterminal.com/tools/earendil-pi.md · JSON https://www.anchorterminal.com/api/v1/tools/earendil-pi.json - Mirror CLI: grade C, 54.2/100, rank #765 of 1133. Markdown https://www.anchorterminal.com/tools/reflection-mirror.md · JSON https://www.anchorterminal.com/api/v1/tools/reflection-mirror.json - Best agent harnesses and coding agents: https://www.anchorterminal.com/best/agent-harnesses/index.md - All 331 harnesses comparisons: https://www.anchorterminal.com/compare/agent-harnesses/index.md ## Which one, for what ### Pi (B) Good 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 37 - Schema & documentation, 84 against 65 - Agent ergonomics, 76 against 58 - Maintenance & community, 87 against 47 - Transparency & trust, 64 against 58 Also in its favour: - No key needed to call it Watch for: No permission system or sandbox. Tool calls run with the user's rights and without an approval prompt ### Mirror CLI (C) Good for: Developers who want Reflection's Beam in a terminal coding agent built alongside the model, or an open-source harness that also runs other providers and local endpoints. Also in its favour: - No incidents deducted, where Pi loses 4 points for them Watch for: Version 0.1.0, released 16 October 2026 and labelled early beta, with no changelog or release tags ## Score by category | Category | Weight | Pi | Mirror CLI | Edge | | --- | --- | --- | --- | --- | | Reliability | 16% (20 this run) | 75 | 37 | Pi +38 | | Performance | 10%, pending | pending | pending | not scored in this run | | Schema & documentation | 13% (16.2 this run) | 84 | 65 | Pi +19 | | Agent ergonomics | 13% (16.2 this run) | 76 | 58 | Pi +18 | | Security & auth | 14% (17.5 this run) | 61 | 58 | Pi +3 | | Payments & pricing | 10% (12.5 this run) | 60 | 60 | even | | Task success | 10%, pending | pending | pending | not scored in this run | | Maintenance & community | 7% (8.8 this run) | 87 | 47 | Pi +40 | | Transparency & trust | 7% (8.8 this run) | 64 | 58 | Pi +6 | | Negative events | ≤15 | -4 | 0 | | | **Total** | | **68.4 · B** | **54.2 · C** | | ## Facts side by side | Fact | Pi | Mirror CLI | | --- | --- | --- | | Kind | Agent harness | Agent harness | | Vendor | Earendil | Reflection | | Hosted endpoint | no (local only) | no (local only) | | Transports | | | | Auth | None | API key | | Pricing | Free | Free | | x402 | no | no | | Licence | MIT | Apache-2.0 | | Read-only variant documented | no | no | | llms.txt | no | yes | | Last release | 2026-10-07 | 2026-10-16 | | Terms last updated | no document linked | | | Privacy policy last updated | 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 | none | | 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. **Mirror CLI.** Mirror CLI is Apache-2.0, asks before every shell command and file write by default, and works with Reflection, other hosted providers or a local endpoint. It is a one-day-old 0.1.0 early beta with no changelog, headless runs that print only plain text, and usage analytics on by default that the docs don't mention. ## Before you call either ### Pi 1. Run Pi inside a container or VM for unattended work. It has no sandbox and doesn't ask before running shell commands 2. Use `pi --mode json` and wait for `agent_settled`. A failed response doesn't set a nonzero exit code in JSON mode 3. Split the JSONL stream on LF only. Node's `readline` also splits on U+2028 and U+2029, which are valid inside JSON strings 4. Pass `--no-approve` or `--approve` in scripts to make the project trust decision explicit 5. Set `PI_TELEMETRY=0` and `PI_SKIP_VERSION_CHECK=1`, or `PI_OFFLINE=1`, to stop the default requests to pi.dev ### Mirror CLI 1. Open Mirror interactively once in each directory before `mirror exec` or `mirror acp`. Both refuse to run until the usage and folder notices are accepted 2. Pass `--approval-mode auto` to `mirror exec` only inside a container or VM. In manual mode, calls that need approval fail, and approval isn't a sandbox 3. Set `--max-iterations` on unattended runs. Turns are unlimited by default 4. Check the result with your own tests. `exec` returns 0 whenever it prints an answer 5. Never share logs recorded with `--log-level debug`. The docs say they contain request headers with the API key ## Questions ### Which is better for AI agents, Pi or Mirror CLI? Pi scores 68.4 (B) on agent readiness against Mirror CLI's 54.2 (C), and leads in 6 of 7 scored categories. ### Are Pi and Mirror CLI open source? Yes. Pi is open source (MIT). Mirror CLI is open source (Apache-2.0). ## For agents - This comparison as JSON: https://www.anchorterminal.com/compare/earendil-pi-vs-reflection-mirror.json, and with the fewest tokens: https://www.anchorterminal.com/compare/earendil-pi-vs-reflection-mirror.min.md - Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {"a": "earendil-pi", "b": "reflection-mirror"}`. From a terminal: `anchor compare earendil-pi reflection-mirror` - Each listing in full: https://www.anchorterminal.com/api/v1/tools/earendil-pi.json and https://www.anchorterminal.com/api/v1/tools/reflection-mirror.json ## Other comparisons with Pi or Mirror CLI - [Agent Zero vs Pi](https://www.anchorterminal.com/compare/agent-zero-vs-earendil-pi.md) - [Agent Zero vs Mirror CLI](https://www.anchorterminal.com/compare/agent-zero-vs-reflection-mirror.md) - [Aider vs Pi](https://www.anchorterminal.com/compare/aider-vs-earendil-pi.md) - [Aider vs Mirror CLI](https://www.anchorterminal.com/compare/aider-vs-reflection-mirror.md) - [Amp vs Pi](https://www.anchorterminal.com/compare/amp-vs-earendil-pi.md) - [Amp vs Mirror CLI](https://www.anchorterminal.com/compare/amp-vs-reflection-mirror.md) - [Antigravity CLI vs Pi](https://www.anchorterminal.com/compare/antigravity-cli-vs-earendil-pi.md) - [Antigravity CLI vs Mirror CLI](https://www.anchorterminal.com/compare/antigravity-cli-vs-reflection-mirror.md) - [Claude Code vs Pi](https://www.anchorterminal.com/compare/claude-code-vs-earendil-pi.md) - [Claude Code vs Mirror CLI](https://www.anchorterminal.com/compare/claude-code-vs-reflection-mirror.md) - [Cline vs Pi](https://www.anchorterminal.com/compare/cline-vs-earendil-pi.md) - [Cline vs Mirror CLI](https://www.anchorterminal.com/compare/cline-vs-reflection-mirror.md) - [Cursor CLI vs Pi](https://www.anchorterminal.com/compare/cursor-cli-vs-earendil-pi.md) - [Cursor CLI vs Mirror CLI](https://www.anchorterminal.com/compare/cursor-cli-vs-reflection-mirror.md) - [Devin vs Pi](https://www.anchorterminal.com/compare/devin-vs-earendil-pi.md) - [Devin vs Mirror CLI](https://www.anchorterminal.com/compare/devin-vs-reflection-mirror.md) - [Droid CLI vs Pi](https://www.anchorterminal.com/compare/droid-cli-vs-earendil-pi.md) - [Droid CLI vs Mirror CLI](https://www.anchorterminal.com/compare/droid-cli-vs-reflection-mirror.md) - [Pi vs Gemini CLI](https://www.anchorterminal.com/compare/earendil-pi-vs-gemini-cli.md) - [Pi vs GitHub Copilot CLI](https://www.anchorterminal.com/compare/earendil-pi-vs-github-copilot-cli.md) - [Pi vs goose](https://www.anchorterminal.com/compare/earendil-pi-vs-goose.md) - [Pi vs HarnessRouter](https://www.anchorterminal.com/compare/earendil-pi-vs-harnessrouter.md) - [Pi vs Kilo Code CLI](https://www.anchorterminal.com/compare/earendil-pi-vs-kilo-code-cli.md) - [Pi vs Kiro CLI](https://www.anchorterminal.com/compare/earendil-pi-vs-kiro-cli.md) - [Pi vs Muse Code](https://www.anchorterminal.com/compare/earendil-pi-vs-muse-code.md) - [Pi vs OpenAI Codex](https://www.anchorterminal.com/compare/earendil-pi-vs-openai-codex.md) - [Pi vs OpenCode](https://www.anchorterminal.com/compare/earendil-pi-vs-opencode.md) - [Pi vs OpenHands](https://www.anchorterminal.com/compare/earendil-pi-vs-openhands.md) - [Pi vs Prime Agent](https://www.anchorterminal.com/compare/earendil-pi-vs-prime-agent.md) - [Pi vs Qwen Code](https://www.anchorterminal.com/compare/earendil-pi-vs-qwen-code.md) - [Gemini CLI vs Mirror CLI](https://www.anchorterminal.com/compare/gemini-cli-vs-reflection-mirror.md) - [GitHub Copilot CLI vs Mirror CLI](https://www.anchorterminal.com/compare/github-copilot-cli-vs-reflection-mirror.md) - [goose vs Mirror CLI](https://www.anchorterminal.com/compare/goose-vs-reflection-mirror.md) - [HarnessRouter vs Mirror CLI](https://www.anchorterminal.com/compare/harnessrouter-vs-reflection-mirror.md) - [Kilo Code CLI vs Mirror CLI](https://www.anchorterminal.com/compare/kilo-code-cli-vs-reflection-mirror.md) - [Kiro CLI vs Mirror CLI](https://www.anchorterminal.com/compare/kiro-cli-vs-reflection-mirror.md) - [Muse Code vs Mirror CLI](https://www.anchorterminal.com/compare/muse-code-vs-reflection-mirror.md) - [OpenAI Codex vs Mirror CLI](https://www.anchorterminal.com/compare/openai-codex-vs-reflection-mirror.md) - [OpenCode vs Mirror CLI](https://www.anchorterminal.com/compare/opencode-vs-reflection-mirror.md) - [OpenHands vs Mirror CLI](https://www.anchorterminal.com/compare/openhands-vs-reflection-mirror.md) - [Prime Agent vs Mirror CLI](https://www.anchorterminal.com/compare/prime-agent-vs-reflection-mirror.md) - [Qwen Code vs Mirror CLI](https://www.anchorterminal.com/compare/qwen-code-vs-reflection-mirror.md) - [CLI Manager vs Mirror CLI](https://www.anchorterminal.com/compare/cli-manager-vs-reflection-mirror.md) - [Harness vs Mirror CLI](https://www.anchorterminal.com/compare/harness-autonomous-vs-reflection-mirror.md) - [Paperclip vs Mirror CLI](https://www.anchorterminal.com/compare/paperclip-vs-reflection-mirror.md) - [Parallax vs Mirror CLI](https://www.anchorterminal.com/compare/parallax-agents-vs-reflection-mirror.md) --- Query this catalogue directly over MCP: https://www.anchorterminal.com/mcp (Streamable HTTP, no key). How: https://www.anchorterminal.com/agents/#mcp