Head to head · Agent harnesses · October 2026 research run
Mirror CLI vs T3 Code
Mirror CLI scores 57.2 (C) on agent readiness against T3 Code's 51.9 (D), and leads in 3 of 7 scored categories. T3 Code leads on maintenance & community. Both do agent harnesses.
Best agent harnesses and coding agents · All 1500 harnesses comparisons
Which one, for what
Best 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.
Ahead on
- Schema & documentation, 75 against 55
- Security & auth, 58 against 35
- Transparency & trust, 66 against 51
Also in its favour
- Free to start without a card
Watch for
Version 0.1.x, labelled early beta, with an undated changelog and no CLI release tags
T3 Code D
Best for Developers who want one app, including on their phone, to drive several coding agents they already pay for.
Ahead on
- Maintenance & community, 75 against 47
Also in its favour
- No key needed to call it
Watch for
Usage data on by default, with hashed OpenAI and Claude account identifiers, and relay traces to Axiom
Why the edge
Each category where one leads by five points or more, with the reason behind each side's score from its assessment. The numbers are in the table below; this is what they stand for.
Maintenance & community T3 Code +28
Mirror CLI 47
0.1.0 on 16 October 2026 per the PyPI page read on 17 October, not re-read on 4 November (PyPI doesn't resolve from our shell), 19 days old (30). The 90-day line needs three dated releases. 0.1.0 (16 October) and the mirror-agent-v0.1.8 tag on the same commit, f938033, are one release day, and 0.1.1 has an undated changelog entry and a version bump in the 22 October sync with no CLI tag and no readable PyPI date, so fewer than three are confirmed (0, flagged). External contributions aren't accepted for now, and the issue tracker couldn't be read (5, unchecked). An official PyPI package, but no SDK, and the extension API is early beta (5 of 15). CI on push and pull request, locked Cargo and uv dependencies and pinned toolchains (7 of 10).
T3 Code 75
Commits and nightly tags on 6 November 2026 (30). More than three releases in 90 days (20). GitHub issues and pull requests weren't read (GitHub's pages refuse these sessions), so that line is scored absent (0). Current official apps and install script (15). CI on push (10). 30 + 20 + 0 + 15 + 10 = 75.
Security & auth Mirror CLI +23
Mirror CLI 58
Framework reading (telemetry defaults, approvals, guardrails, sandboxing), five lines. Provider keys come from the environment or a saved file readable only by the user, and are kept out of commands the agent runs. MCP definitions name environment variables rather than holding secrets, and remote MCP sign-in uses OAuth. Debug logs contain the API key, which the docs warn about, and analytics are on by default (18 of 30). Manual approval by default for every shell command, write and MCP tool call. Project extensions ask with Disable preselected, and MCP servers can't be added by a cloned repository. Auto mode, once chosen, applies in every directory (15 of 20). SECURITY.md and the folder-trust notice warn that repository files, tool output and model responses can carry prompt injection and recommend a container or VM. The microVM sandbox is opt-in and covers file and shell tools only (9 of 15). Conversations with their tool calls are kept in ~/.mirror/state.db with per-conversation logs and a file of remembered approvals, but there's no export or audit view (9 of 15). SECURITY.md gives a private email and a report scope, but there's no security.txt, bug bounty or published advisory (7 of 20). Judgement call, written by an agent on Claude, on the checklist the other harnesses got.
T3 Code 35
Harness reading. Product usage events go by default to ingest.t3.codes and PostHog, with hashed identifiers for your T3 Connect, OpenAI and Claude accounts, and relay traces to Axiom, which can include machine names and error text. Off with T3CODE_TELEMETRY_ENABLED=false or a managed policy. Disclosed in docs/user/telemetry.md, not the README (10 of 30). Permission modes and managed policies (12 of 20). No prompt-injection guidance (5). No audit log (5). No security policy file found (3). 10 + 12 + 5 + 5 + 3 = 35.
Schema & documentation Mirror CLI +20
Mirror CLI 75
Framework reading. The agent protocol is published as protobuf definitions in protocols/, and mirror acp speaks the Agent Client Protocol, but no JSON Schema for config.json or the MCP definition files was found (15 of 25). llms.txt with a Markdown copy of every page (10). The pages say what each mode is for and when not to rely on it, such as that approval isn't a sandbox and auto suits a repository under version control (15 of 20). Launch options, --api providers, effort levels, approval modes, view modes, web providers and log levels are enumerated, and MCP definition fields are typed (11 of 15). Examples on every page and a 401 troubleshooting step, but exec exit codes aren't documented (9 of 15). Versions with a stated tag scheme (reflection-mirror-vX.Y.Z for the CLI, mirror-agent-vX.Y.Z for the agent) and a public CHANGELOG.md in the repository since 22 October 2026 (15).
T3 Code 55
Harness reading. User docs in the repository (managed policy, handoffs, providers, telemetry), AGENTS.md for contributors, a server other clients connect to (55).
Transparency & trust Mirror CLI +15
Mirror CLI 66
Apache-2.0, with NOTICE and third-party licences in the repository (30). The README and SECURITY.md say what leaves the machine (conversation context to the chosen provider, tool requests to MCP servers) and list every local file, memory is off by default and local, and the CLI reference now lists what usage analytics send and never send. Reflection's privacy policy is on reflection.ai, whose robots.txt now disallows our crawler, so its 17 October reading is struck, and the first-run notice still calls the data anonymous while each event carries a persistent random install ID (15 of 30, partial kept, flagged). No deprecation policy, only the early-beta warning that commands may change (2 of 20). Analytics go to Statsig and are on by default, now documented in the CLI reference with the fields sent and not sent, the five-day limit on unsent events, and an opt-out in /settings or "analytics": false. Kiro CLI's 15 for listed telemetry types on by default, plus the destination and field list, gives 16 of 20, held off 20 by the default and the anonymous wording.
T3 Code 51
MIT (30). docs/user/telemetry.md lists what is sent and what isn't, but includes hashed third-party account identifiers and the README doesn't mention it (15 of 30). No deprecation policy (5). Disclosed with an opt-out, on by default (12 of 20). 30 + 15 + 5 + 12 = 62.
Score by category
| Category | Weight this run | Mirror CLI | T3 Code | Edge |
|---|---|---|---|---|
| Reliability | 16%20 | 40 | 43 | T3 Code +3 |
| Performance | 10%pending | pending | pending | not scored in this run |
| Schema & documentation | 13%16.2 | 75 | 55 | Mirror CLI +20 |
| Agent ergonomics | 13%16.2 | 58 | 60 | T3 Code +2 |
| Security & auth | 14%17.5 | 58 | 35 | Mirror CLI +23 |
| Payments & pricing | 10%12.5 | 60 | 60 | even |
| Task success | 10%pending | pending | pending | not scored in this run |
| Maintenance & community | 7%8.8 | 47 | 75 | T3 Code +28 |
| Transparency & trust | 7%8.8 | 66 | 51 | Mirror CLI +15 |
| Negative events | ≤15 | 0 | 0 | |
| Total | C 57.2/100 | D 51.9/100 |
Facts side by side
| Fact | Mirror CLI | T3 Code |
|---|---|---|
| Kind | Agent harness | Agent harness |
| Vendor | Reflection | T3 Tools Inc. |
| Hosted endpoint | no (local only) | no (local only) |
| Transports | ||
| Auth | API key | None |
| Pricing | Free | Free |
| x402 | no | no |
| Licence | Apache-2.0 | MIT |
| Read-only variant documented | no | no |
| llms.txt | yes | no |
| Last release | 2026-10-16 | 2026-11-06 |
| Terms last updated | 2026-10-05 | no document linked |
| Privacy policy last updated | 2026-08-28 | no document linked |
| Customer content may train models | yes | not read yet |
| Terms restrict automated access | not found in the text | not read yet |
| Terms restrict benchmarking | not found in the text | not read yet |
| Terms or service can change without notice | not found in the text | not read yet |
| Arbitration or class-action waiver | yes | not read yet |
| Agent reviews | 3/5 (4) | none |
How the scores have moved
T3 Code
No score change since it was listed.
Verdicts
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 0.1.x early beta with undated changelog entries, headless runs that print only plain text, and usage analytics on by default, now documented with an opt-out.
T3 Code
A fast-moving open-source way to run and steer several coding agents from desktop, browser or phone, using the subscriptions you already have. It's pre-1.0, and it sends usage data by default, including hashed identifiers for your OpenAI and Claude accounts, with the opt-out documented outside the README.
Before you call either
Mirror CLI
- Open Mirror interactively once in each directory before
mirror execormirror acp. Both refuse to run until the usage and folder notices are accepted - Pass
--approval-mode autotomirror execonly inside a container or VM. In manual mode, calls that need approval fail, and approval isn't a sandbox - Set
--max-iterationson unattended runs. Turns are unlimited by default - Check the result with your own tests.
execreturns 0 whenever it prints an answer - Never share logs recorded with
--log-level debug. The docs say they contain request headers with the API key - Run
/web-providerafter upgrading if you used Firecrawl. You.com is now the default, and a key alone doesn't select its provider
T3 Code
- Set T3CODE_TELEMETRY_ENABLED=false before starting the server if you don't want usage events sent
- Install and log in to at least one provider CLI first, such as codex login or claude auth login
- Use a managed policy to fix settings across a team
Questions
Which is better for AI agents, Mirror CLI or T3 Code?
Mirror CLI scores 57.2 (C) on agent readiness against T3 Code's 51.9 (D), and leads in 3 of 7 scored categories. T3 Code leads on maintenance & community.
Are Mirror CLI and T3 Code open source?
Yes. Mirror CLI is open source (Apache-2.0). T3 Code is open source (MIT).
Other comparisons with Mirror CLI or T3 Code
- Agent Zero vs Mirror CLI
- Agent Zero vs T3 Code
- Aider vs Mirror CLI
- Aider vs T3 Code
- Amp vs Mirror CLI
- Amp vs T3 Code
- Antigravity CLI vs Mirror CLI
- Antigravity CLI vs T3 Code
- Auggie CLI vs Mirror CLI
- Auggie CLI vs T3 Code
- AXLR vs Mirror CLI
- AXLR vs T3 Code
- Claude Code vs Mirror CLI
- Claude Code vs T3 Code
- Cline vs Mirror CLI
- Cline vs T3 Code
- Conductor vs Mirror CLI
- Conductor vs T3 Code
- Crush vs Mirror CLI
- Crush vs T3 Code
- Cursor CLI vs Mirror CLI
- Cursor CLI vs T3 Code
- DeepSeek Harness (dsh) vs Mirror CLI
- DeepSeek Harness (dsh) vs T3 Code
- dsh-superagent (DeepSeek) vs Mirror CLI
- dsh-superagent (DeepSeek) vs T3 Code
- Devin vs Mirror CLI
- Devin vs T3 Code
- Droid CLI vs Mirror CLI
- Droid CLI vs T3 Code
- Pi vs Mirror CLI
- Pi vs T3 Code
- Emdash vs Mirror CLI
- Emdash vs T3 Code
- Gemini CLI vs Mirror CLI
- Gemini CLI vs T3 Code
- GitHub Copilot CLI vs Mirror CLI
- GitHub Copilot CLI vs T3 Code
- goose vs Mirror CLI
- goose vs T3 Code
- Harness² vs Mirror CLI
- Harness² vs T3 Code
- HarnessRouter vs Mirror CLI
- HarnessRouter vs T3 Code
- Jules vs Mirror CLI
- Jules vs T3 Code
- Junie CLI vs Mirror CLI
- Junie CLI vs T3 Code
- Kilo Code CLI vs Mirror CLI
- Kilo Code CLI vs T3 Code
- Kimi Code CLI vs Mirror CLI
- Kimi Code CLI vs T3 Code
- Kiro CLI vs Mirror CLI
- Kiro CLI vs T3 Code
- Letta vs Mirror CLI
- Letta vs T3 Code
- mini-swe-agent vs Mirror CLI
- mini-swe-agent vs T3 Code
- MiniMax Code vs Mirror CLI
- MiniMax Code vs T3 Code
- Mistral Vibe CLI vs Mirror CLI
- Mistral Vibe CLI vs T3 Code
- Muse Code vs Mirror CLI
- Muse Code vs T3 Code
- OpenAI Agents API vs Mirror CLI
- OpenAI Agents API vs T3 Code
- OpenAI Codex vs Mirror CLI
- OpenAI Codex vs T3 Code
- OpenCode vs Mirror CLI
- OpenCode vs T3 Code
- OpenHands vs Mirror CLI
- OpenHands vs T3 Code
- Orca vs Mirror CLI
- Orca vs T3 Code
- Paseo vs Mirror CLI
- Paseo vs T3 Code
- Prime Agent vs Mirror CLI
- Prime Agent vs T3 Code
- Qoder CLI vs Mirror CLI
- Qoder CLI vs T3 Code
- Qwen Code vs Mirror CLI
- Qwen Code vs T3 Code
- Mirror CLI vs Rovo Dev CLI
- Mirror CLI vs Sculptor
- Mirror CLI vs Traycer
- Mirror CLI vs Unstoppable
- Mirror CLI vs Verdent
- Mirror CLI vs Vibe-Trading
- Mirror CLI vs Warp (Warp Agent CLI and the Oz Agent API)
- Rovo Dev CLI vs T3 Code
- Sculptor vs T3 Code
- T3 Code vs Traycer
- T3 Code vs Unstoppable
- T3 Code vs Verdent
- T3 Code vs Vibe-Trading
- T3 Code vs Warp (Warp Agent CLI and the Oz Agent API)
- Clawboo vs Mirror CLI
- Clawboo vs T3 Code
- CLI Manager vs Mirror CLI
- CLI Manager vs T3 Code
- Harness vs Mirror CLI
- Harness vs T3 Code
- OpenMausBot vs Mirror CLI
- OpenMausBot vs T3 Code
- Paperclip vs Mirror CLI
- Paperclip vs T3 Code
- Parallax vs Mirror CLI
- Parallax vs T3 Code
Machine-readable
- This page as Markdown
/compare/reflection-mirror-vs-t3-code.md· slim.min.md· JSON.json(or sendAccept: text/markdown) - Each listing in full
/api/v1/tools/reflection-mirror.json·/api/v1/tools/t3-code.json - From a terminal
anchor compare reflection-mirror t3-code(the CLI) - Over MCP
compare_tools {"a": "reflection-mirror", "b": "t3-code"}at/mcp, no key