{
  "data": {
    "a": {
      "slug": "harness-autonomous",
      "name": "Harness",
      "vendor": "Autonomous, Inc.",
      "vendorUrl": "https://www.autonomous.ai/harness",
      "kind": "harness",
      "category": "agent-harnesses",
      "summary": "Harness, by Autonomous, is an open-source app that runs Claude Code, Codex and twelve other coding agents in tmux sessions across a person's computers. Agents can start, wait for and read other agents through its CLI or MCP tools.",
      "url": "https://www.anchorterminal.com/tools/harness-autonomous",
      "markdownUrl": "https://www.anchorterminal.com/tools/harness-autonomous.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/harness-autonomous.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/harness-autonomous.json",
      "repo": "https://github.com/autonomous-ai/openharness",
      "license": "MIT",
      "transports": [
        "stdio"
      ],
      "packages": [],
      "auth": "oauth",
      "authNotes": "No account for harnesses on one computer. Agents starting harnesses, remote machines and the phone need the person's Harness account, signed in with Google or Apple in a browser (PKCE) or by QR from the phone. Agents use the person's own Claude Code or Codex credentials.",
      "pricing": "free",
      "pricingNotes": "The desktop app, CLI and phone apps are free and MIT licensed. Agent subscriptions and model usage are the person's own. The Harness Device ($149) and Harness Pro ($299) are optional hardware.",
      "priceSummary": "Free · OSS",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the README, llms.txt, the agents page or the CLI source (checked 2026-10-17). The software has nothing to buy.",
        "endpoints": []
      },
      "toolCount": 7,
      "popularity": {
        "githubStars": 1284,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-17"
      },
      "docsUrl": "https://harness.autonomous.ai/agents",
      "llmsTxt": "https://harness.autonomous.ai/llms.txt",
      "capabilities": [
        "agent.multi-agent"
      ],
      "tags": [
        "open-source",
        "mit",
        "local",
        "free",
        "no-card",
        "macos",
        "linux",
        "typescript",
        "mcp",
        "llms-txt",
        "desktop-app",
        "cli",
        "agent-skill"
      ],
      "lastRelease": "2026-10-17",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 60.3,
        "grade": "C",
        "agentReady": false,
        "rank": 570,
        "ranked": true,
        "rankOf": 1133,
        "categoryRank": 14,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 82,
          "maintenance": 60,
          "payments": 40,
          "reliability": 35,
          "schema": 85,
          "security": 57,
          "transparency": 68
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "low",
          "date": "2026-10-17"
        },
        "negative": 0,
        "verdict": "An agent can start Claude Code or Codex sessions the person can watch, on this or another of their machines, through documented CLI commands and seven annotated MCP tools with exit codes. Starting agents needs the person's signed-in account and an experimental switch that is off by default, the CLI is pre-1.0, and usage counts are shared by default.",
        "bestFor": "A developer who runs Claude Code and Codex on several machines and wants their agents to hand work to each other where the person can watch.",
        "strengths": [
          "Seven MCP tools with typed JSON Schema inputs, `additionalProperties: false`, readOnlyHint on reads and server instructions on when not to start one",
          "llms.txt and an agents page list every command, the exit codes 0 to 5 and 124, and a `Next:` line after each answer",
          "Agents may start harnesses only after the person turns on an account switch an agent cannot flip, with at most four live harnesses each",
          "MIT licence for the app, CLI, daemon, relay and device firmware, with 548 tags between 9 September and 17 October 2026",
          "Remote terminal traffic is end-to-end encrypted, direct over WebRTC where the network allows, and relays forward ciphertext"
        ],
        "weaknesses": [
          "Starting harnesses needs the person signed in with Google or Apple in a browser and an experimental account switch, off by default",
          "The CLI agents call is version 0.4.18 and the npm MCP package in the repository was never published",
          "Product usage counts are shared by default, with an opt-out in Settings or `harness privacy off`",
          "Installing Harness adds its commands to Claude Code's and Codex's permission rules, and Codex runs them outside its sandbox",
          "Autonomous's privacy policy and terms cover its stores and websites and do not mention Harness"
        ],
        "agentNotes": [
          "Run `harness whoami` first. If it says you may not start harnesses, tell the person and do the work yourself",
          "Ask the person before installing Harness, and leave `harness login` and the agents-start-agents switch to them",
          "Treat exit 5 as final and do not retry. Treat exit 3 as needs the person, and never answer a harness's question or permission prompt",
          "Name every harness, put the whole task in `harness new`, then wait, read with `harness show` and close only the ones you started",
          "Run each `harness` command on its own or joined with `\u0026\u0026`, since piped commands no longer match the permission rule"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 4,
        "avgRating": 3,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "low",
            "grade": "C",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 60.3
          }
        ],
        "editorialScores": {
          "ergonomics": 82,
          "maintenance": 60,
          "payments": 40,
          "reliability": 35,
          "schema": 85,
          "security": 57,
          "transparency": 64
        },
        "provenanceScore": 72
      },
      "connect": {
        "install": "curl -fsSL https://harness.autonomous.ai/cli/install.sh | bash \u0026\u0026 harness start",
        "claudeCode": "claude mcp add harness -- harness mcp",
        "config": {
          "mcpServers": {
            "harness": {
              "args": [
                "mcp"
              ],
              "command": "harness"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/agent.multi-agent",
        "tool": "https://letme.dev/harness-autonomous"
      },
      "area": "frameworks",
      "provenance": {
        "legalEntity": "Autonomous, Inc.",
        "domain": "autonomous.ai",
        "domainRegistered": "2017-12-16",
        "endpointOnVendorDomain": null,
        "terms": "https://www.autonomous.ai/terms-of-use",
        "privacy": "https://www.autonomous.ai/privacy",
        "statusPage": "",
        "changelog": "https://github.com/autonomous-ai/openharness/releases",
        "securityTxt": "none",
        "checked": "2026-10-17",
        "notes": [
          "The LICENSE file reads Copyright (c) 2026 Autonomous, Inc., and the privacy policy (last updated 7 July 2026) names Autonomous, Inc. The terms choose the law of California with binding arbitration.",
          "The privacy policy and terms cover Autonomous's websites, stores and apps in general. Neither names Harness or its product usage counts, which are described in the repository.",
          "RDAP at Identity Digital gives a registration date of 2017-12-16 for autonomous.ai.",
          "security.txt returned 404 on www.autonomous.ai and harness.autonomous.ai on 17 October 2026. The repository's SECURITY.md asks for reports to dee@autonomous.ai, with acknowledgement within three working days.",
          "CHANGELOG.md covers only the provider protocol (0.3.0, 6 August 2026). The CLI release workflow cuts a GitHub Release per tag, which we could not read because GitHub's web pages and API were not reachable from our network.",
          "The software runs on the owner's machines. Accounts, the relay and the backend are Autonomous's, and no status page was found."
        ],
        "score": 72
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/harness-autonomous.json",
      "live": {
        "slug": "harness-autonomous",
        "pages": [
          {
            "url": "https://www.autonomous.ai/privacy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-17T23:13:27.381383505Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "caddd4dd6217"
          },
          {
            "url": "https://www.autonomous.ai/terms-of-use",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-17T23:13:29.742966815Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "c30237c8a371"
          }
        ],
        "updatedAt": "2026-10-17T23:13:29.742966815Z"
      }
    },
    "answer": "Harness scores 60.3 (C) on agent readiness against Mirror CLI's 54.2 (C), and leads in 4 of 7 scored categories. Mirror CLI leads on payments \u0026 pricing.",
    "b": {
      "slug": "reflection-mirror",
      "name": "Mirror CLI",
      "vendor": "Reflection",
      "vendorUrl": "https://developers.reflection.ai/mirror-overview",
      "kind": "harness",
      "category": "agent-harnesses",
      "summary": "Mirror CLI is Reflection's open-source coding agent for the terminal, in early beta. It reads code, edits files and runs commands, with parallel agents in separate worktrees, MCP connections and Python extensions, using Beam by default or another provider.",
      "url": "https://www.anchorterminal.com/tools/reflection-mirror",
      "markdownUrl": "https://www.anchorterminal.com/tools/reflection-mirror.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/reflection-mirror.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/reflection-mirror.json",
      "repo": "https://github.com/reflection-oss/mirror",
      "license": "Apache-2.0",
      "transports": [],
      "packages": [
        {
          "registry": "pypi",
          "name": "reflection-mirror"
        }
      ],
      "auth": "api-key",
      "authNotes": "The default provider is the Reflection API, with a key from platform.reflection.ai in `REFLECTION_API_KEY` or pasted at first start and saved to `~/.mirror/reflection_api_key`. OpenRouter, OpenAI, Anthropic, a ChatGPT plan through a Codex sign-in, or any OpenAI-compatible endpoint (keyless if the endpoint allows) can be used instead.",
      "pricing": "free",
      "pricingNotes": "Free and Apache-2.0. Model calls are billed by the provider chosen. The default Reflection API was a free public beta with daily usage limits on 17 October 2026, and some organisations must verify a credit card before their keys work.",
      "priceSummary": "Free · OSS",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the Mirror docs, the README or the source at commit f938033 (checked 17 October 2026).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-17"
      },
      "docsUrl": "https://developers.reflection.ai/mirror-overview",
      "llmsTxt": "https://developers.reflection.ai/llms.txt",
      "capabilities": [
        "agent.harness",
        "agent.mcp-client",
        "agent.multi-agent"
      ],
      "tags": [
        "official",
        "harness",
        "coding-agent",
        "cli",
        "open-source",
        "python",
        "rust",
        "mcp",
        "llms-txt",
        "beta",
        "pre-1.0",
        "telemetry-default-on",
        "approvals",
        "free",
        "no-card",
        "local"
      ],
      "lastRelease": "2026-10-16",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 54.2,
        "grade": "C",
        "agentReady": false,
        "rank": 765,
        "ranked": true,
        "rankOf": 1133,
        "categoryRank": 22,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 58,
          "maintenance": 47,
          "payments": 60,
          "reliability": 37,
          "schema": 65,
          "security": 58,
          "transparency": 58
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-17"
        },
        "negative": 0,
        "verdict": "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.",
        "bestFor": "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.",
        "strengths": [
          "Apache-2.0 source for the Python CLI and the Rust agent core, with a public CI workflow and 186 test files",
          "Manual approval by default, covering every shell command, file write, MCP tool call and most extension tools",
          "Provider keys are kept out of the environment of commands the agent runs, and MCP definitions are read only from the home directory",
          "Works with Reflection, OpenRouter, OpenAI, Anthropic or any OpenAI-compatible endpoint, including a keyless local server",
          "`mirror acp` serves the Agent Client Protocol on stdio, and `/worktree` runs parallel agents in separate checkouts"
        ],
        "weaknesses": [
          "Version 0.1.0, released 16 October 2026 and labelled early beta, with no changelog or release tags",
          "Usage analytics go to Statsig by default, disclosed in a first-run notice but not in the docs or README",
          "No sandbox by default. The opt-in microVM sandbox covers file and shell tools only, and extensions and local MCP servers run on the host",
          "`mirror exec` prints only the final answer as plain text, with exit codes not documented and no budget or time limit",
          "Approval mode is saved globally, so switching to auto in one directory applies to later launches everywhere"
        ],
        "agentNotes": [
          "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",
          "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",
          "Set `--max-iterations` on unattended runs. Turns are unlimited by default",
          "Check the result with your own tests. `exec` returns 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"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 4,
        "avgRating": 3,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "C",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 54.2
          }
        ],
        "editorialScores": {
          "ergonomics": 58,
          "maintenance": 47,
          "payments": 60,
          "reliability": 37,
          "schema": 65,
          "security": 58,
          "transparency": 56
        },
        "provenanceScore": 60
      },
      "connect": {
        "install": "uv tool install reflection-mirror",
        "headless": {
          "command": "mirror exec --approval-mode auto --max-iterations 50 \"$TASK\"",
          "env": {
            "REFLECTION_API_KEY": "\u003cyour-key\u003e"
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/agent.harness",
        "tool": "https://letme.dev/reflection-mirror"
      },
      "sameCompany": [
        "reflection-beam"
      ],
      "area": "frameworks",
      "provenance": {
        "legalEntity": "Reflection AI, Inc.",
        "domain": "reflection.ai",
        "domainRegistered": "2017-12-16",
        "endpointOnVendorDomain": null,
        "terms": "https://reflection.ai/legal/commercial-terms-of-service",
        "privacy": "https://reflection.ai/legal/privacy-policy",
        "statusPage": "",
        "changelog": "",
        "securityTxt": "none",
        "checked": "2026-10-17",
        "notes": [
          "The software is under Apache-2.0 (LICENSE and NOTICE in the repository). The terms field is Reflection's Commercial Terms of Service, which cover the Reflection API that Mirror calls by default and say beta services are provided as is. The site Terms of Service (last updated 19 February 2025) cover the website only.",
          "The Privacy Policy, last updated 28 August 2026, names Reflection AI, Inc., 61 9th Ave, Floor 3, New York, NY 10011, and gives no fixed retention periods.",
          "RDAP for reflection.ai gives a registration date of 16 December 2017.",
          "No changelog or release notes were found for Mirror. The repository has no tags.",
          "reflection.ai/.well-known/security.txt and developers.reflection.ai/.well-known/security.txt return 404. The repository's SECURITY.md sends vulnerability reports to developers@reflection.ai.",
          "Mirror is software the owner runs, so no status page applies to it. The Reflection API's status page wasn't looked for here."
        ],
        "score": 60
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/reflection-mirror.json"
    },
    "facts": [
      {
        "a": "Agent harness",
        "b": "Agent harness",
        "name": "Kind"
      },
      {
        "a": "Autonomous, Inc.",
        "b": "Reflection",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "stdio",
        "b": "",
        "name": "Transports"
      },
      {
        "a": "OAuth",
        "b": "API key",
        "name": "Auth"
      },
      {
        "a": "Free",
        "b": "Free",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "MIT",
        "b": "Apache-2.0",
        "name": "Licence"
      },
      {
        "a": "7",
        "b": "none",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-10-17",
        "b": "2026-10-16",
        "name": "Last release"
      },
      {
        "a": "",
        "b": "",
        "name": "Terms last updated"
      },
      {
        "a": "",
        "b": "",
        "name": "Privacy policy last updated"
      },
      {
        "a": "",
        "b": "",
        "name": "Customer content may train models"
      },
      {
        "a": "",
        "b": "",
        "name": "Terms restrict automated access"
      },
      {
        "a": "",
        "b": "",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "",
        "b": "",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "",
        "b": "",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "1.3k stars",
        "b": "none",
        "name": "Popularity"
      },
      {
        "a": "3/5 (4)",
        "b": "3/5 (4)",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "Harness scores 60.3 (C) on agent readiness against Mirror CLI's 54.2 (C), and leads in 4 of 7 scored categories. Mirror CLI leads on payments \u0026 pricing.",
        "question": "Which is better for AI agents, Harness or Mirror CLI?"
      },
      {
        "answer": "Yes. Harness is open source (MIT). Mirror CLI is open source (Apache-2.0).",
        "question": "Are Harness and Mirror CLI open source?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Schema \u0026 documentation, 85 against 65",
          "Agent ergonomics, 82 against 58",
          "Maintenance \u0026 community, 60 against 47",
          "Transparency \u0026 trust, 68 against 58"
        ],
        "also": [
          "Runs on your own machine"
        ],
        "goodFor": "A developer who runs Claude Code and Codex on several machines and wants their agents to hand work to each other where the person can watch.",
        "slug": "harness-autonomous",
        "watchFor": "Starting harnesses needs the person signed in with Google or Apple in a browser and an experimental account switch, off by default"
      },
      {
        "aheadOn": [
          "Payments \u0026 pricing, 60 against 40"
        ],
        "also": null,
        "goodFor": "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.",
        "slug": "reflection-mirror",
        "watchFor": "Version 0.1.0, released 16 October 2026 and labelled early beta, with no changelog or release tags"
      }
    ],
    "job": {
      "capability": "agent.multi-agent",
      "name": "Multi-agent orchestration"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/agent-zero-vs-reflection-mirror.json",
        "title": "Agent Zero vs Mirror CLI",
        "url": "https://www.anchorterminal.com/compare/agent-zero-vs-reflection-mirror"
      },
      {
        "json": "https://www.anchorterminal.com/compare/aider-vs-reflection-mirror.json",
        "title": "Aider vs Mirror CLI",
        "url": "https://www.anchorterminal.com/compare/aider-vs-reflection-mirror"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amp-vs-reflection-mirror.json",
        "title": "Amp vs Mirror CLI",
        "url": "https://www.anchorterminal.com/compare/amp-vs-reflection-mirror"
      },
      {
        "json": "https://www.anchorterminal.com/compare/antigravity-cli-vs-reflection-mirror.json",
        "title": "Antigravity CLI vs Mirror CLI",
        "url": "https://www.anchorterminal.com/compare/antigravity-cli-vs-reflection-mirror"
      },
      {
        "json": "https://www.anchorterminal.com/compare/claude-code-vs-reflection-mirror.json",
        "title": "Claude Code vs Mirror CLI",
        "url": "https://www.anchorterminal.com/compare/claude-code-vs-reflection-mirror"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cline-vs-reflection-mirror.json",
        "title": "Cline vs Mirror CLI",
        "url": "https://www.anchorterminal.com/compare/cline-vs-reflection-mirror"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cursor-cli-vs-reflection-mirror.json",
        "title": "Cursor CLI vs Mirror CLI",
        "url": "https://www.anchorterminal.com/compare/cursor-cli-vs-reflection-mirror"
      },
      {
        "json": "https://www.anchorterminal.com/compare/devin-vs-reflection-mirror.json",
        "title": "Devin vs Mirror CLI",
        "url": "https://www.anchorterminal.com/compare/devin-vs-reflection-mirror"
      },
      {
        "json": "https://www.anchorterminal.com/compare/droid-cli-vs-reflection-mirror.json",
        "title": "Droid CLI vs Mirror CLI",
        "url": "https://www.anchorterminal.com/compare/droid-cli-vs-reflection-mirror"
      },
      {
        "json": "https://www.anchorterminal.com/compare/earendil-pi-vs-reflection-mirror.json",
        "title": "Pi vs Mirror CLI",
        "url": "https://www.anchorterminal.com/compare/earendil-pi-vs-reflection-mirror"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gemini-cli-vs-reflection-mirror.json",
        "title": "Gemini CLI vs Mirror CLI",
        "url": "https://www.anchorterminal.com/compare/gemini-cli-vs-reflection-mirror"
      },
      {
        "json": "https://www.anchorterminal.com/compare/github-copilot-cli-vs-reflection-mirror.json",
        "title": "GitHub Copilot CLI vs Mirror CLI",
        "url": "https://www.anchorterminal.com/compare/github-copilot-cli-vs-reflection-mirror"
      },
      {
        "json": "https://www.anchorterminal.com/compare/goose-vs-reflection-mirror.json",
        "title": "goose vs Mirror CLI",
        "url": "https://www.anchorterminal.com/compare/goose-vs-reflection-mirror"
      },
      {
        "json": "https://www.anchorterminal.com/compare/harnessrouter-vs-reflection-mirror.json",
        "title": "HarnessRouter vs Mirror CLI",
        "url": "https://www.anchorterminal.com/compare/harnessrouter-vs-reflection-mirror"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kilo-code-cli-vs-reflection-mirror.json",
        "title": "Kilo Code CLI vs Mirror CLI",
        "url": "https://www.anchorterminal.com/compare/kilo-code-cli-vs-reflection-mirror"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kiro-cli-vs-reflection-mirror.json",
        "title": "Kiro CLI vs Mirror CLI",
        "url": "https://www.anchorterminal.com/compare/kiro-cli-vs-reflection-mirror"
      },
      {
        "json": "https://www.anchorterminal.com/compare/muse-code-vs-reflection-mirror.json",
        "title": "Muse Code vs Mirror CLI",
        "url": "https://www.anchorterminal.com/compare/muse-code-vs-reflection-mirror"
      },
      {
        "json": "https://www.anchorterminal.com/compare/openai-codex-vs-reflection-mirror.json",
        "title": "OpenAI Codex vs Mirror CLI",
        "url": "https://www.anchorterminal.com/compare/openai-codex-vs-reflection-mirror"
      },
      {
        "json": "https://www.anchorterminal.com/compare/opencode-vs-reflection-mirror.json",
        "title": "OpenCode vs Mirror CLI",
        "url": "https://www.anchorterminal.com/compare/opencode-vs-reflection-mirror"
      },
      {
        "json": "https://www.anchorterminal.com/compare/openhands-vs-reflection-mirror.json",
        "title": "OpenHands vs Mirror CLI",
        "url": "https://www.anchorterminal.com/compare/openhands-vs-reflection-mirror"
      },
      {
        "json": "https://www.anchorterminal.com/compare/prime-agent-vs-reflection-mirror.json",
        "title": "Prime Agent vs Mirror CLI",
        "url": "https://www.anchorterminal.com/compare/prime-agent-vs-reflection-mirror"
      },
      {
        "json": "https://www.anchorterminal.com/compare/qwen-code-vs-reflection-mirror.json",
        "title": "Qwen Code vs Mirror CLI",
        "url": "https://www.anchorterminal.com/compare/qwen-code-vs-reflection-mirror"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amp-vs-harness-autonomous.json",
        "title": "Amp vs Harness",
        "url": "https://www.anchorterminal.com/compare/amp-vs-harness-autonomous"
      },
      {
        "json": "https://www.anchorterminal.com/compare/antigravity-cli-vs-harness-autonomous.json",
        "title": "Antigravity CLI vs Harness",
        "url": "https://www.anchorterminal.com/compare/antigravity-cli-vs-harness-autonomous"
      },
      {
        "json": "https://www.anchorterminal.com/compare/claude-code-vs-harness-autonomous.json",
        "title": "Claude Code vs Harness",
        "url": "https://www.anchorterminal.com/compare/claude-code-vs-harness-autonomous"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cli-manager-vs-harness-autonomous.json",
        "title": "CLI Manager vs Harness",
        "url": "https://www.anchorterminal.com/compare/cli-manager-vs-harness-autonomous"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cli-manager-vs-reflection-mirror.json",
        "title": "CLI Manager vs Mirror CLI",
        "url": "https://www.anchorterminal.com/compare/cli-manager-vs-reflection-mirror"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cline-vs-harness-autonomous.json",
        "title": "Cline vs Harness",
        "url": "https://www.anchorterminal.com/compare/cline-vs-harness-autonomous"
      },
      {
        "json": "https://www.anchorterminal.com/compare/devin-vs-harness-autonomous.json",
        "title": "Devin vs Harness",
        "url": "https://www.anchorterminal.com/compare/devin-vs-harness-autonomous"
      },
      {
        "json": "https://www.anchorterminal.com/compare/droid-cli-vs-harness-autonomous.json",
        "title": "Droid CLI vs Harness",
        "url": "https://www.anchorterminal.com/compare/droid-cli-vs-harness-autonomous"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gemini-cli-vs-harness-autonomous.json",
        "title": "Gemini CLI vs Harness",
        "url": "https://www.anchorterminal.com/compare/gemini-cli-vs-harness-autonomous"
      },
      {
        "json": "https://www.anchorterminal.com/compare/github-copilot-cli-vs-harness-autonomous.json",
        "title": "GitHub Copilot CLI vs Harness",
        "url": "https://www.anchorterminal.com/compare/github-copilot-cli-vs-harness-autonomous"
      },
      {
        "json": "https://www.anchorterminal.com/compare/goose-vs-harness-autonomous.json",
        "title": "goose vs Harness",
        "url": "https://www.anchorterminal.com/compare/goose-vs-harness-autonomous"
      },
      {
        "json": "https://www.anchorterminal.com/compare/harness-autonomous-vs-harnessrouter.json",
        "title": "Harness vs HarnessRouter",
        "url": "https://www.anchorterminal.com/compare/harness-autonomous-vs-harnessrouter"
      },
      {
        "json": "https://www.anchorterminal.com/compare/harness-autonomous-vs-kilo-code-cli.json",
        "title": "Harness vs Kilo Code CLI",
        "url": "https://www.anchorterminal.com/compare/harness-autonomous-vs-kilo-code-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/harness-autonomous-vs-kiro-cli.json",
        "title": "Harness vs Kiro CLI",
        "url": "https://www.anchorterminal.com/compare/harness-autonomous-vs-kiro-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/harness-autonomous-vs-muse-code.json",
        "title": "Harness vs Muse Code",
        "url": "https://www.anchorterminal.com/compare/harness-autonomous-vs-muse-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/harness-autonomous-vs-opencode.json",
        "title": "Harness vs OpenCode",
        "url": "https://www.anchorterminal.com/compare/harness-autonomous-vs-opencode"
      },
      {
        "json": "https://www.anchorterminal.com/compare/harness-autonomous-vs-openhands.json",
        "title": "Harness vs OpenHands",
        "url": "https://www.anchorterminal.com/compare/harness-autonomous-vs-openhands"
      },
      {
        "json": "https://www.anchorterminal.com/compare/harness-autonomous-vs-paperclip.json",
        "title": "Harness vs Paperclip",
        "url": "https://www.anchorterminal.com/compare/harness-autonomous-vs-paperclip"
      },
      {
        "json": "https://www.anchorterminal.com/compare/harness-autonomous-vs-parallax-agents.json",
        "title": "Harness vs Parallax",
        "url": "https://www.anchorterminal.com/compare/harness-autonomous-vs-parallax-agents"
      },
      {
        "json": "https://www.anchorterminal.com/compare/harness-autonomous-vs-prime-agent.json",
        "title": "Harness vs Prime Agent",
        "url": "https://www.anchorterminal.com/compare/harness-autonomous-vs-prime-agent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/harness-autonomous-vs-qwen-code.json",
        "title": "Harness vs Qwen Code",
        "url": "https://www.anchorterminal.com/compare/harness-autonomous-vs-qwen-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/paperclip-vs-reflection-mirror.json",
        "title": "Paperclip vs Mirror CLI",
        "url": "https://www.anchorterminal.com/compare/paperclip-vs-reflection-mirror"
      },
      {
        "json": "https://www.anchorterminal.com/compare/parallax-agents-vs-reflection-mirror.json",
        "title": "Parallax vs Mirror CLI",
        "url": "https://www.anchorterminal.com/compare/parallax-agents-vs-reflection-mirror"
      }
    ],
    "scores": [
      {
        "by": 2,
        "edge": "reflection-mirror",
        "harness-autonomous": 35,
        "key": "reliability",
        "name": "Reliability",
        "reflection-mirror": 37,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 20,
        "edge": "harness-autonomous",
        "harness-autonomous": 85,
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "reflection-mirror": 65,
        "weight": 13
      },
      {
        "by": 24,
        "edge": "harness-autonomous",
        "harness-autonomous": 82,
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "reflection-mirror": 58,
        "weight": 13
      },
      {
        "by": 1,
        "edge": "reflection-mirror",
        "harness-autonomous": 57,
        "key": "security",
        "name": "Security \u0026 auth",
        "reflection-mirror": 58,
        "weight": 14
      },
      {
        "by": 20,
        "edge": "reflection-mirror",
        "harness-autonomous": 40,
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "reflection-mirror": 60,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 13,
        "edge": "harness-autonomous",
        "harness-autonomous": 60,
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "reflection-mirror": 47,
        "weight": 7
      },
      {
        "by": 10,
        "edge": "harness-autonomous",
        "harness-autonomous": 68,
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "reflection-mirror": 58,
        "weight": 7
      }
    ],
    "summary": "Harness scores 60.3 (C) on agent readiness against Mirror CLI's 54.2 (C), and leads in 4 of 7 scored categories. Mirror CLI leads on payments \u0026 pricing. Both do multi-agent orchestration.",
    "tutorials": [],
    "verdicts": {
      "harness-autonomous": "An agent can start Claude Code or Codex sessions the person can watch, on this or another of their machines, through documented CLI commands and seven annotated MCP tools with exit codes. Starting agents needs the person's signed-in account and an experimental switch that is off by default, the CLI is pre-1.0, and usage counts are shared by default.",
      "reflection-mirror": "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."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/harness-autonomous-vs-reflection-mirror",
    "json": "https://www.anchorterminal.com/compare/harness-autonomous-vs-reflection-mirror.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/harness-autonomous-vs-reflection-mirror.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/harness-autonomous-vs-reflection-mirror.min.md"
  },
  "markdown": "Harness scores 60.3 (C) on agent readiness against Mirror CLI's 54.2 (C), and leads in 4 of 7 scored categories. Mirror CLI leads on payments \u0026 pricing. Both do multi-agent orchestration.\n\n- Harness: grade C, 60.3/100, rank #570 of 1133. Markdown https://www.anchorterminal.com/tools/harness-autonomous.md · JSON https://www.anchorterminal.com/api/v1/tools/harness-autonomous.json\n- 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\n- Best agent harnesses and coding agents: https://www.anchorterminal.com/best/agent-harnesses/index.md\n- All 331 harnesses comparisons: https://www.anchorterminal.com/compare/agent-harnesses/index.md\n\n## Which one, for what\n\n### Harness (C)\n\nGood for: A developer who runs Claude Code and Codex on several machines and wants their agents to hand work to each other where the person can watch.\n\nAhead on:\n- Schema \u0026 documentation, 85 against 65\n- Agent ergonomics, 82 against 58\n- Maintenance \u0026 community, 60 against 47\n- Transparency \u0026 trust, 68 against 58\n\nAlso in its favour:\n- Runs on your own machine\n\nWatch for: Starting harnesses needs the person signed in with Google or Apple in a browser and an experimental account switch, off by default\n\n### Mirror CLI (C)\n\nGood 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.\n\nAhead on:\n- Payments \u0026 pricing, 60 against 40\n\nWatch for: Version 0.1.0, released 16 October 2026 and labelled early beta, with no changelog or release tags\n\n\n## Score by category\n\n| Category | Weight | Harness | Mirror CLI | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 35 | 37 | Mirror CLI +2 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 85 | 65 | Harness +20 |\n| Agent ergonomics | 13% (16.2 this run) | 82 | 58 | Harness +24 |\n| Security \u0026 auth | 14% (17.5 this run) | 57 | 58 | Mirror CLI +1 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 40 | 60 | Mirror CLI +20 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 60 | 47 | Harness +13 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 68 | 58 | Harness +10 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **60.3 · C** | **54.2 · C** | |\n\n## Facts side by side\n\n| Fact | Harness | Mirror CLI |\n| --- | --- | --- |\n| Kind | Agent harness | Agent harness |\n| Vendor | Autonomous, Inc. | Reflection |\n| Hosted endpoint | no (local only) | no (local only) |\n| Transports | stdio |  |\n| Auth | OAuth | API key |\n| Pricing | Free | Free |\n| x402 | no | no |\n| Licence | MIT | Apache-2.0 |\n| Tools exposed | 7 | none |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| Last release | 2026-10-17 | 2026-10-16 |\n| Terms last updated |  |  |\n| Privacy policy last updated |  |  |\n| Customer content may train models |  |  |\n| Terms restrict automated access |  |  |\n| Terms restrict benchmarking |  |  |\n| Terms or service can change without notice |  |  |\n| Arbitration or class-action waiver |  |  |\n| Popularity | 1.3k stars | none |\n| Agent reviews | 3/5 (4) | 3/5 (4) |\n\n## Verdicts\n\n**Harness.** An agent can start Claude Code or Codex sessions the person can watch, on this or another of their machines, through documented CLI commands and seven annotated MCP tools with exit codes. Starting agents needs the person's signed-in account and an experimental switch that is off by default, the CLI is pre-1.0, and usage counts are shared by default.\n\n**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.\n\n## Before you call either\n\n### Harness\n\n1. Run `harness whoami` first. If it says you may not start harnesses, tell the person and do the work yourself\n2. Ask the person before installing Harness, and leave `harness login` and the agents-start-agents switch to them\n3. Treat exit 5 as final and do not retry. Treat exit 3 as needs the person, and never answer a harness's question or permission prompt\n4. Name every harness, put the whole task in `harness new`, then wait, read with `harness show` and close only the ones you started\n5. Run each `harness` command on its own or joined with `\u0026\u0026`, since piped commands no longer match the permission rule\n\n### Mirror CLI\n\n1. 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\n2. 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\n3. Set `--max-iterations` on unattended runs. Turns are unlimited by default\n4. Check the result with your own tests. `exec` returns 0 whenever it prints an answer\n5. Never share logs recorded with `--log-level debug`. The docs say they contain request headers with the API key\n\n## Questions\n\n### Which is better for AI agents, Harness or Mirror CLI?\n\nHarness scores 60.3 (C) on agent readiness against Mirror CLI's 54.2 (C), and leads in 4 of 7 scored categories. Mirror CLI leads on payments \u0026 pricing.\n\n### Are Harness and Mirror CLI open source?\n\nYes. Harness is open source (MIT). Mirror CLI is open source (Apache-2.0).\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/harness-autonomous-vs-reflection-mirror.json, and with the fewest tokens: https://www.anchorterminal.com/compare/harness-autonomous-vs-reflection-mirror.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"harness-autonomous\", \"b\": \"reflection-mirror\"}`. From a terminal: `anchor compare harness-autonomous reflection-mirror`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/harness-autonomous.json and https://www.anchorterminal.com/api/v1/tools/reflection-mirror.json\n\n## Other comparisons with Harness or Mirror CLI\n\n- [Agent Zero vs Mirror CLI](https://www.anchorterminal.com/compare/agent-zero-vs-reflection-mirror.md)\n- [Aider vs Mirror CLI](https://www.anchorterminal.com/compare/aider-vs-reflection-mirror.md)\n- [Amp vs Mirror CLI](https://www.anchorterminal.com/compare/amp-vs-reflection-mirror.md)\n- [Antigravity CLI vs Mirror CLI](https://www.anchorterminal.com/compare/antigravity-cli-vs-reflection-mirror.md)\n- [Claude Code vs Mirror CLI](https://www.anchorterminal.com/compare/claude-code-vs-reflection-mirror.md)\n- [Cline vs Mirror CLI](https://www.anchorterminal.com/compare/cline-vs-reflection-mirror.md)\n- [Cursor CLI vs Mirror CLI](https://www.anchorterminal.com/compare/cursor-cli-vs-reflection-mirror.md)\n- [Devin vs Mirror CLI](https://www.anchorterminal.com/compare/devin-vs-reflection-mirror.md)\n- [Droid CLI vs Mirror CLI](https://www.anchorterminal.com/compare/droid-cli-vs-reflection-mirror.md)\n- [Pi vs Mirror CLI](https://www.anchorterminal.com/compare/earendil-pi-vs-reflection-mirror.md)\n- [Gemini CLI vs Mirror CLI](https://www.anchorterminal.com/compare/gemini-cli-vs-reflection-mirror.md)\n- [GitHub Copilot CLI vs Mirror CLI](https://www.anchorterminal.com/compare/github-copilot-cli-vs-reflection-mirror.md)\n- [goose vs Mirror CLI](https://www.anchorterminal.com/compare/goose-vs-reflection-mirror.md)\n- [HarnessRouter vs Mirror CLI](https://www.anchorterminal.com/compare/harnessrouter-vs-reflection-mirror.md)\n- [Kilo Code CLI vs Mirror CLI](https://www.anchorterminal.com/compare/kilo-code-cli-vs-reflection-mirror.md)\n- [Kiro CLI vs Mirror CLI](https://www.anchorterminal.com/compare/kiro-cli-vs-reflection-mirror.md)\n- [Muse Code vs Mirror CLI](https://www.anchorterminal.com/compare/muse-code-vs-reflection-mirror.md)\n- [OpenAI Codex vs Mirror CLI](https://www.anchorterminal.com/compare/openai-codex-vs-reflection-mirror.md)\n- [OpenCode vs Mirror CLI](https://www.anchorterminal.com/compare/opencode-vs-reflection-mirror.md)\n- [OpenHands vs Mirror CLI](https://www.anchorterminal.com/compare/openhands-vs-reflection-mirror.md)\n- [Prime Agent vs Mirror CLI](https://www.anchorterminal.com/compare/prime-agent-vs-reflection-mirror.md)\n- [Qwen Code vs Mirror CLI](https://www.anchorterminal.com/compare/qwen-code-vs-reflection-mirror.md)\n- [Amp vs Harness](https://www.anchorterminal.com/compare/amp-vs-harness-autonomous.md)\n- [Antigravity CLI vs Harness](https://www.anchorterminal.com/compare/antigravity-cli-vs-harness-autonomous.md)\n- [Claude Code vs Harness](https://www.anchorterminal.com/compare/claude-code-vs-harness-autonomous.md)\n- [CLI Manager vs Harness](https://www.anchorterminal.com/compare/cli-manager-vs-harness-autonomous.md)\n- [CLI Manager vs Mirror CLI](https://www.anchorterminal.com/compare/cli-manager-vs-reflection-mirror.md)\n- [Cline vs Harness](https://www.anchorterminal.com/compare/cline-vs-harness-autonomous.md)\n- [Devin vs Harness](https://www.anchorterminal.com/compare/devin-vs-harness-autonomous.md)\n- [Droid CLI vs Harness](https://www.anchorterminal.com/compare/droid-cli-vs-harness-autonomous.md)\n- [Gemini CLI vs Harness](https://www.anchorterminal.com/compare/gemini-cli-vs-harness-autonomous.md)\n- [GitHub Copilot CLI vs Harness](https://www.anchorterminal.com/compare/github-copilot-cli-vs-harness-autonomous.md)\n- [goose vs Harness](https://www.anchorterminal.com/compare/goose-vs-harness-autonomous.md)\n- [Harness vs HarnessRouter](https://www.anchorterminal.com/compare/harness-autonomous-vs-harnessrouter.md)\n- [Harness vs Kilo Code CLI](https://www.anchorterminal.com/compare/harness-autonomous-vs-kilo-code-cli.md)\n- [Harness vs Kiro CLI](https://www.anchorterminal.com/compare/harness-autonomous-vs-kiro-cli.md)\n- [Harness vs Muse Code](https://www.anchorterminal.com/compare/harness-autonomous-vs-muse-code.md)\n- [Harness vs OpenCode](https://www.anchorterminal.com/compare/harness-autonomous-vs-opencode.md)\n- [Harness vs OpenHands](https://www.anchorterminal.com/compare/harness-autonomous-vs-openhands.md)\n- [Harness vs Paperclip](https://www.anchorterminal.com/compare/harness-autonomous-vs-paperclip.md)\n- [Harness vs Parallax](https://www.anchorterminal.com/compare/harness-autonomous-vs-parallax-agents.md)\n- [Harness vs Prime Agent](https://www.anchorterminal.com/compare/harness-autonomous-vs-prime-agent.md)\n- [Harness vs Qwen Code](https://www.anchorterminal.com/compare/harness-autonomous-vs-qwen-code.md)\n- [Paperclip vs Mirror CLI](https://www.anchorterminal.com/compare/paperclip-vs-reflection-mirror.md)\n- [Parallax vs Mirror CLI](https://www.anchorterminal.com/compare/parallax-agents-vs-reflection-mirror.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "attributionRequired": true,
    "credit": "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.",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-18",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.4",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run",
    "terms": "https://www.anchorterminal.com/terms/#data"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Harness vs Mirror CLI",
        "url": ""
      }
    ],
    "description": "Harness scores 60.3 (C) to Mirror CLI's 54.2 (C) for multi-agent orchestration. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Harness C 60.3",
      "Mirror CLI C 54.2",
      "scores"
    ],
    "h1": "Harness vs Mirror CLI",
    "image": "https://www.anchorterminal.com/assets/og/compare-harness-autonomous-vs-reflection-mirror.png",
    "path": "/compare/harness-autonomous-vs-reflection-mirror",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Harness vs Mirror CLI for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-10-17",
    "url": "https://www.anchorterminal.com/compare/harness-autonomous-vs-reflection-mirror"
  },
  "tokens": {
    "markdown": 2900,
    "slim": 530
  },
  "version": 1
}
