{
  "data": {
    "a": {
      "slug": "axlr",
      "name": "AXLR",
      "vendor": "Underpass AI",
      "vendorUrl": "https://axlr.underpassai.com",
      "kind": "harness",
      "category": "agent-harnesses",
      "summary": "Open-source Go execution engine for agentic work from Underpass AI. A console with work modes and approval cards, an mTLS HTTP, gRPC and MCP service, a JSON worker and a Go library, with KMP memory and MADE procedures over MCP.",
      "url": "https://www.anchorterminal.com/tools/axlr",
      "markdownUrl": "https://www.anchorterminal.com/tools/axlr.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/axlr.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/axlr.json",
      "dns": "axlr.grade.anchorterminal.com",
      "repo": "https://github.com/underpass-ai/AXLR",
      "license": "Apache-2.0, with a NOTICE naming Tirso García Ibáñez as the copyright holder",
      "transports": [],
      "packages": [
        {
          "registry": "go",
          "name": "github.com/underpass-ai/AXLR"
        },
        {
          "registry": "oci",
          "name": "ghcr.io/underpass-ai/axlr"
        },
        {
          "registry": "oci",
          "name": "ghcr.io/underpass-ai/charts/axlr"
        }
      ],
      "auth": "mixed",
      "authNotes": "The console and the one-command `axlr-tui --exec` need a model route, an OpenRouter key (`OPENROUTER_API_KEY` or `credentials.json`, mode 0600), a local OpenAI-compatible server, or an Anthropic Messages or OpenAI Responses key in a `local_models` entry; the JSON worker and the library tests need no model account. The service, `axlr-serve`, requires TLS 1.3 and a client certificate signed by its CA whose SHA-256 fingerprint is mapped in a private principals file to a principal and the roles `session_client`, `approver`, `tool_operator` and `admin`; an unmapped certificate is forbidden, a session belongs to the principal that created it, and authentication never approves a tool by itself. MCP at `/mcp` is stateless and authenticated per request by the same certificate; gRPC uses the TLS peer certificate.",
      "pricing": "free",
      "pricingNotes": "Free and open source under Apache-2.0, with nothing to buy from Underpass AI. You pay your model provider (OpenRouter reports a cost per request, which the console's `/usage` and `max_session_usd` track) or run a local server at no charge; TypeSafe's Jev judge is optional and needs its own key. No hosted AXLR exists (checked 2026-11-01).",
      "priceSummary": "Free · OSS",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the repository, the OpenAPI file or the two sites (checked 2026-11-01). Nothing is sold.",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 0,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-11-01"
      },
      "docsUrl": "https://axlr.underpassai.com/docs/",
      "openapi": "https://github.com/underpass-ai/AXLR/blob/main/api/openapi/axlr-v1.yaml",
      "capabilities": [
        "agent.harness",
        "agent.mcp-client",
        "agent.multi-agent"
      ],
      "tags": [
        "open-source",
        "local",
        "self-hosted",
        "free",
        "no-card",
        "go",
        "cli",
        "mcp-client",
        "openapi",
        "grpc",
        "docker",
        "helm",
        "sandbox",
        "approvals",
        "pre-1.0",
        "new"
      ],
      "lastRelease": "2026-10-25",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 70.6,
        "grade": "BB",
        "agentReady": true,
        "rank": 168,
        "ranked": true,
        "rankOf": 1253,
        "categoryRank": 3,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 83,
          "maintenance": 79,
          "payments": 60,
          "reliability": 70,
          "schema": 80,
          "security": 62,
          "transparency": 55
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-01"
        },
        "negative": 0,
        "verdict": "A pre-1.0 Go harness with an unusually complete service contract, mutual TLS with principal roles, required idempotency keys, a policy, budget and sandbox per execution, and a result object a program can read. The console's defaults after setup are autonomy on and no sandbox, the project has one maintainer and no outside users yet, and releases carry no notes.",
        "bestFor": "A program or bot that needs one governed execution at a time, with a policy, a budget, a sandbox profile and correlation ids it sets itself and a result object it reads back, on a machine it controls, with the model on OpenRouter, a local server or a native Anthropic or OpenAI key.",
        "strengths": [
          "mTLS HTTP, gRPC and MCP service with four principal roles, `Idempotency-Key` required on turns, approvals and direct calls, and `expected_revision` on decisions",
          "A policy (observe, propose, act-with-approval, act-within-policy), a budget in seconds, requests, tool calls and dollars, and a bubblewrap or container sandbox with an enforced egress allow list, each per execution",
          "`axlr-tui --exec --json` runs one task headless and ends with a result object; exit 0 done, 3 waiting for a decision, 1 error",
          "OpenRouter, local OpenAI-compatible servers (llama.cpp, vLLM, Ollama, LM Studio), and the Anthropic Messages and OpenAI Responses APIs spoken directly",
          "21 releases in October 2026 from a workflow that tests on six native runners and refuses to republish different bytes, with a `.sha256` beside every archive"
        ],
        "weaknesses": [
          "The setup assistant turns autonomy on and leaves the exec sandbox off, so after setup the model's commands run with the person's rights, bar the destructive list",
          "Pre-1.0 with one maintainer, 0 stars and 10 open issues, all the founder's own trackers; releases have empty notes and there is no changelog",
          "The service needs KMP and MADE as remote gRPC services, a client CA and a principals file before a first session, and has no work modes, plugins or forged-tool setting yet",
          "No SECURITY.md, security.txt, advisories or disclosure route; the legal entity is not yet incorporated and no terms or privacy policy exist",
          "No llms.txt, and the Go library is the only SDK; the catalog registry answers every non-AXLR client with 403"
        ],
        "agentNotes": [
          "Before the first prompt, set `approvals.autonomous` to false or run with `--approve none`, and turn `exec_sandbox.mode` to `auto` or `required` on Linux; after setup both default the other way",
          "Drive a run with `axlr-tui --exec --json --policy \u003cfile\u003e --budget \u003cfile\u003e --sandbox \u003cfile\u003e` and read only the last `result` line; exit 3 means a call waits for `--decide approve|deny` with `--session \u003cid\u003e`",
          "On the service, send `Idempotency-Key` (16 to 128 safe ASCII characters) on every turn, approval and direct call, and pass the session's `expected_revision`; a reused key with a different body answers 409",
          "A local model must return native tool calls (llama.cpp with `--jinja`, vLLM with `--enable-auto-tool-choice`); set `context_tokens` on the entry and `OLLAMA_CONTEXT_LENGTH` for Ollama",
          "Leave `TYPESAFE_API_KEY` unset unless you want the setup assistant to switch Jev on, which sends requests and final answers to TypeSafe"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "BB",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 70.6
          }
        ],
        "editorialScores": {
          "ergonomics": 83,
          "maintenance": 79,
          "payments": 60,
          "reliability": 70,
          "schema": 80,
          "security": 62,
          "transparency": 68
        },
        "provenanceScore": 42,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-01",
            "maintenance": "2026-11-01",
            "payments": "2026-11-01",
            "reliability": "2026-11-01",
            "schema": "2026-11-01",
            "security": "2026-11-01",
            "transparency": "2026-11-01"
          },
          "last": "2026-11-01",
          "oldest": "2026-11-01",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "install": "V=v0.15.0; OS=linux; ARCH=amd64; curl -fsSLO https://github.com/underpass-ai/AXLR/releases/download/$V/axlr-$V-$OS-$ARCH.tar.gz{,.sha256} \u0026\u0026 sha256sum -c axlr-$V-$OS-$ARCH.tar.gz.sha256 \u0026\u0026 tar xzf axlr-$V-$OS-$ARCH.tar.gz -C ~/.local/bin axlr axlr-tui axlr-serve   # or build from source with Go 1.26",
        "headless": {
          "command": "axlr-tui --root \"$PWD\" --exec \"$TASK\" --json --approve none --policy policy.json --budget budget.json --sandbox sandbox.json",
          "decide": "axlr-tui --session \u003cid\u003e --decide approve --json",
          "env": {
            "OPENROUTER_API_KEY": "\u003ckey\u003e"
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/agent.harness",
        "tool": "https://letme.dev/axlr"
      },
      "area": "frameworks",
      "provenance": {
        "legalEntity": "",
        "domain": "underpassai.com",
        "domainRegistered": "2025-08-10",
        "endpointOnVendorDomain": null,
        "terms": "",
        "privacy": "",
        "statusPage": "",
        "changelog": "https://github.com/underpass-ai/AXLR/releases",
        "securityTxt": "none",
        "checked": "2026-11-01",
        "notes": [
          "No legal entity exists yet. underpassai.com's footer says Underpass AI is a startup project created by Tirso García Ibáñez and preparing incorporation as a Spanish limited liability company, that the technical assets are founder-owned and intended to be assigned to the company after incorporation, and that licence terms are in each repository's LICENSE and NOTICE. The NOTICE names Tirso García Ibáñez as copyright holder. Recorded as absent with that explanation.",
          "No terms of service or privacy policy on underpassai.com (sitemap lists the home page and one article) or axlr.underpassai.com. For local software the docs' 'Where data goes' and 'Diagnostics and privacy' sections stand in.",
          "RDAP for underpassai.com gives registration on 2025-08-10 with Route 53 nameservers. The GitHub organisation underpass-ai was created on 2025-08-09, location Spain, 16 public repositories. The AXLR repository was created on 2026-09-29; the first tag and release, v0.1.0, is dated 2026-10-04, which is firstReleased.",
          "https://underpassai.com/.well-known/security.txt and https://axlr.underpassai.com/.well-known/security.txt answer 404; the repository has no SECURITY.md. No status page (local software). The changelog is the GitHub releases list, whose entries carry no notes.",
          "robots.txt on underpassai.com and axlr.underpassai.com allow everything. registry.underpassai.com answers every path, robots.txt included, with 403 'forbidden: client is not AXLR', so nothing was read from it after that reply.",
          "The founder's LinkedIn URL is linked from underpassai.com and was not visited."
        ],
        "score": 42
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/axlr.json"
    },
    "answer": "AXLR scores 70.6 (BB) on agent readiness against Harness's 60 (C), and leads in 5 of 7 scored categories. Harness leads on schema \u0026 documentation and transparency \u0026 trust.",
    "b": {
      "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",
      "dns": "harness-autonomous.grade.anchorterminal.com",
      "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,
        "grade": "C",
        "agentReady": false,
        "rank": 620,
        "ranked": true,
        "rankOf": 1253,
        "categoryRank": 21,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 82,
          "maintenance": 60,
          "payments": 40,
          "reliability": 35,
          "schema": 85,
          "security": 57,
          "transparency": 64
        },
        "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.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 60
          }
        ],
        "editorialScores": {
          "ergonomics": 82,
          "maintenance": 60,
          "payments": 40,
          "reliability": 35,
          "schema": 85,
          "security": 57,
          "transparency": 64
        },
        "provenanceScore": 64,
        "checked": {
          "categories": {
            "ergonomics": "2026-10-17",
            "maintenance": "2026-10-17",
            "payments": "2026-10-17",
            "reliability": "2026-10-17",
            "schema": "2026-10-17",
            "security": "2026-10-17",
            "transparency": "2026-10-17"
          },
          "last": "2026-10-17",
          "lastMoved": "2026-10-30",
          "oldest": "2026-10-17",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "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": 64
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/harness-autonomous.json",
      "live": {
        "slug": "harness-autonomous",
        "versions": [
          {
            "registry": "github",
            "name": "autonomous-ai/openharness",
            "version": "os-v0.1.13",
            "released": "2026-10-30",
            "seenAt": "2026-11-01T17:04:21.160847435Z"
          }
        ],
        "githubStars": 1405,
        "securityTxt": {
          "url": "https://autonomous.ai/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-01T15:43:30.288734834Z"
        },
        "llmsTxt": {
          "url": "https://harness.autonomous.ai/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-11-01T15:13:59.867161679Z"
        },
        "domain": {
          "domain": "autonomous.ai",
          "registered": "2017-12-16",
          "source": "https://rdap.identitydigital.services/rdap/domain/autonomous.ai",
          "checkedAt": "2026-11-01T14:08:58.413748749Z"
        },
        "pages": [
          {
            "url": "https://www.autonomous.ai/privacy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-11-01T06:56:59.247657355Z",
            "changedAt": "2026-10-29T05:20:02.61412464Z",
            "fingerprint": "7988b9d70c73"
          },
          {
            "url": "https://www.autonomous.ai/terms-of-use",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-11-01T06:57:01.64673119Z",
            "changedAt": "2026-10-29T05:20:05.498709134Z",
            "fingerprint": "58f5a5e78e7e"
          }
        ],
        "github": {
          "repo": "autonomous-ai/openharness",
          "checkedAt": "2026-10-26T07:12:10.672478351Z",
          "stars": 1369,
          "archived": false,
          "issuesEnabled": true,
          "pushedAt": "2026-10-26T07:08:15Z",
          "openIssues": 24,
          "openPRs": 48,
          "issuesOpened90d": 114,
          "issuesClosed90d": 90,
          "prsMerged90d": 1504,
          "ci": {
            "branch": "main",
            "runs": 50,
            "success": 29,
            "failure": 0,
            "other": 21,
            "latest": "success",
            "latestAt": "2026-10-21T02:54:15Z"
          },
          "replies": {
            "sampled": 25,
            "unanswered": 12,
            "medianDays": 1.3
          }
        },
        "updatedAt": "2026-11-01T17:04:21.160847435Z"
      }
    },
    "edges": [
      {
        "by": 35,
        "category": "reliability",
        "leads": "axlr",
        "name": "Reliability",
        "reasons": {
          "a": "Read as a local package, as claude-code, goose, opencode and openhands were. Release archives for Linux, macOS and Windows on amd64 and arm64 with a `.sha256` beside each, a GHCR image, an OCI Helm chart and source builds with Go 1.26, all stated in the docs; no Homebrew, npm or apt route (20). CI on main runs vet, race tests and a coverage gate above 80 per cent for both modules, with the sandbox tests required under bubblewrap, and the last ten runs on main to 1 November 2026 all passed; the release workflow tests on six native runners (25). 10 open issues, all opened by the founder on 19 and 21 October 2026 as trackers for service work (work modes, plugins, the sandbox setting, cost limits), none from an outside user and none a crash report, 0 open pull requests and about 100 merged; with 0 stars there is nobody else to report, so the handling of outside reports is untested (20). Tags are semver 0.x and the docs date each behaviour change inline (\"until 14 October 2026…\"), but the 21 releases have empty notes, there is no CHANGELOG.md, and the product contract records one retirement (the seven 1.0 skill definitions on 5 October 2026) without a notice period (5). Pre-1.0, which the README calls an evolving project (0). 20+25+20+5+0 = 70.",
          "b": "Read as local software, since the agents run on the owner's machines. A one-line installer from Autonomous's CDN, DMG and AppImage builds, and App Store and Google Play apps, with macOS and Linux stated as supported and Node managed by the installer. Not on npm or a package registry (20). A public CI workflow runs the CLI suite in four shards, the desktop suite and typechecks, and the vendor's reliability run of 16 September 2026 reports 2,325 CLI, 370 backend and 1,686 desktop tests passing. We could not read CI run results, so credit for the suite only (10). Open issues could not be read, because GitHub's web pages and API were not reachable from our network. Unchecked, so scored absent (0). Tags follow semver per component, but there is no changelog for the app or CLI and breaking changes are not marked in the repository (5). The CLI agents call is 0.4.18 and the npm MCP package is 0.1.0 and unpublished. The desktop app is 1.2.89, but the agent surface is pre-1.0, and Agents can start other agents is an experiment (0). Accounts and the relay are hosted by Autonomous with no status page found."
        },
        "scores": {
          "a": 70,
          "b": 35
        }
      },
      {
        "by": 20,
        "category": "payments",
        "leads": "axlr",
        "name": "Payments \u0026 pricing",
        "reasons": {
          "a": "No payment protocol (0). Free and Apache-2.0 with nothing to buy, so 20, 20 and 20 on the last three lines by the self-hosted rule, since the docs say what you pay your model provider, the free route needs no card, and it runs local models with no signup at all, the JSON worker without any model. 0+20+20+20 = 60.",
          "b": "No payment protocol (0). Read with the self-hosted rule. The software is free and the optional hardware prices are public (20). Free with no card (20). An agent cannot start harnesses until the person signs in with Google or Apple in a browser and turns on the experimental switch, so 0 for autonomous onboarding, as the other harnesses that need an account were read (0)."
        },
        "scores": {
          "a": 60,
          "b": 40
        }
      },
      {
        "by": 19,
        "category": "maintenance",
        "leads": "axlr",
        "name": "Maintenance \u0026 community",
        "reasons": {
          "a": "v0.15.0 on 2026-10-25, with commits on main to 2026-11-01 (30). 21 releases between 4 and 25 October 2026 (20). One maintainer (368 of 399 commits, the rest by two agent accounts), 10 open issues that are his own trackers with no comments, about 100 merged pull requests and no outside report to measure a reply against (15). Not in the MCP registry; the Go module and a proto to generate clients from are the only client code, beside the GHCR image and Helm chart (5). Go 1.26 toolchain pinned, release actions pinned by commit SHA, a go-licenses check that the third-party bundle matches the dependency graph, and CI passing on main (9). 30+20+15+5+9 = 79.",
          "b": "v0.4.18_cli and v1.2.89_desktop on 17 October 2026 (30). 548 tags since 9 September 2026 (20). Pull requests numbered past #1,390 merge daily by the team, but issues and outside pull requests could not be read (5). Not in the official MCP registry, which returned nothing for autonomous-ai, although the repository has a server.json. The npm package it names was never published (0). CI workflows for the CLI, desktop, backend and OS, with dependency lockfiles current. Run results unread (5)."
        },
        "scores": {
          "a": 79,
          "b": 60
        }
      },
      {
        "by": 9,
        "category": "transparency",
        "leads": "harness-autonomous",
        "name": "Transparency \u0026 trust",
        "reasons": {
          "a": "Apache-2.0 with a NOTICE (30). No privacy policy or terms on underpassai.com or axlr.underpassai.com; the docs' 'Where data goes' and 'Diagnostics and privacy' sections say that model requests go to OpenRouter, the local server or the native API, that Jev sends text to TypeSafe only when on, that sessions live under `$XDG_STATE_HOME/axlr`, that payload capture is off by default and redacted when on, and that traces are deleted after 30 days; nothing covers the engine downloads' or the catalog registry's handling of a client's requests (15). No deprecation policy; pre-1.0 changes are dated inline in the docs and the product contract records the 5 October 2026 retirement of the first skill catalogue after the fact (6). No telemetry to disclose, and the docs say in two places what leaves the machine and how to stop payload capture, though no single page says there is no telemetry (17). 30+15+6+17 = 68.",
          "b": "MIT licence for the whole repository under Autonomous, Inc., with third-party Store covers under their own licences (30). The repository documents what usage counts contain, a 10-day pseudonymous activity mark and the encrypted relay in detail. Autonomous's privacy policy of 7 July 2026 is general to its stores and sites and does not mention Harness (14). The provider protocol promises both revisions side by side for a deprecation window after a breaking change. Nothing similar for the app or CLI (6). Telemetry is disclosed with an opt-out in the app and CLI, but it is on by default and described in the repository rather than in the privacy policy (14)."
        },
        "scores": {
          "a": 55,
          "b": 64
        }
      },
      {
        "by": 5,
        "category": "schema",
        "leads": "harness-autonomous",
        "name": "Schema \u0026 documentation",
        "reasons": {
          "a": "An OpenAPI 3.1 file for the service (15 paths, 23 schemas, `mutualTLS` security scheme, `additionalProperties: false` on request bodies), a checked proto for the gRPC service, and the 19 MCP tools built from the same shared schemas (25). No llms.txt on either site (404), and the docs site renders HTML; the Markdown sources are in the repository (5). The product contract tables what each of the four interfaces can and cannot do, the work-mode table states each mode's purpose and tool policy, the transport parity ledger names every verb's arguments and behaviour, and `axlr_tools` tells the model to look for a tool before forging one (15). Typed inputs throughout, `Idempotency-Key` 16 to 128 safe ASCII characters, `expected_revision` a positive integer, policy levels, sandbox profiles and egress values enumerated, budgets as four integers, and the service rejects unknown fields, invalid types and bodies over 4 MiB (14). Examples in every guide, an error shape of `code`, `message` and `request_id`, named codes (`409 idempotency_conflict`, `400 invalid_cursor`, `422 invalid_policy`, `invalid_budget`, `sandbox_unavailable`, `not_ready`, `invalid_id`), a gRPC status mapping, and the worker's five statuses and three exit codes; no single error reference page (14). `/v1` routes and an OpenAPI version of 0.1.0 against a 0.15.0 release, and no changelog beyond the dated notes inside the docs (7). 25+5+15+14+14+7 = 80.",
          "b": "Read as an MCP server and CLI. Seven tools with typed JSON Schema inputs, `additionalProperties: false` and required fields marked, plus `--json` on every command. No OpenAPI, which a stdio server does not need (23). llms.txt and a Markdown-like agents page written for agents (10). The server instructions and llms.txt say when to use Harness rather than `claude -p` or `codex exec`, when to do the work yourself, and never to answer a harness's prompt or ask one to push or deploy (20). An enum on `agent`, `minItems` on wait names, minimum and maximum on `timeout_seconds` and `chars`. `machine`, `folder` and `project` are free strings (12). Worked examples for parallel runs, handing a task to Codex and waiting, an exit code table, and a `Next:` line after every answer (13). Per-component semver tags, but the only CHANGELOG.md covers the provider protocol, and we could not read the GitHub release notes (7)."
        },
        "scores": {
          "a": 80,
          "b": 85
        }
      },
      {
        "by": 5,
        "category": "security",
        "leads": "axlr",
        "name": "Security \u0026 auth",
        "reasons": {
          "a": "Harness reading of the framework checklist, as for the other four harnesses. 30 for what leaves the machine by default, 20 for approvals and sandboxing, 15 for prompt-injection posture, 15 for audit and 20 for the security programme. No product telemetry in the console source (the outbound hosts are openrouter.ai, api.anthropic.com, api.openai.com, a configured local server, api.github.com and github.com for engine downloads, and registry.underpassai.com for the signed catalog index) or in the docs; payload capture is off by default since 9 October 2026, traces omit prompts and credentials, model keys are never given to commands or plugins, and Jev sends requests and answers to TypeSafe only when on, which the setup assistant does when `TYPESAFE_API_KEY` is set, with a notice on stderr (27). Approval cards, a destructive list that always asks, four work modes, a policy level per execution, a bubblewrap or container sandbox with an enforced egress allow list, and a service that approves nothing but reads. Against that, the setup assistant writes `autonomous: true`, `exec_sandbox` is off by default, forged tools run with the person's rights, and the README says the console and worker are not sandboxes (13). Forged tools are refused when a file changes since the forge, a policy forbids calls outside the model, and the docs say MCP tools keep their own side effects, but no prompt-injection guidance was found and MCP results reach the model unmarked (6). The service keeps an event journal, audit records, a receipt with the SHA-256 of every call's arguments and outcome, and correlation ids on every event; the console keeps session records, a redacted app log and `/session` (14). No SECURITY.md, no security.txt on either host, no advisories, no bug bounty; release checksums and a minisign-signed catalog are integrity, not a programme (2). 27+13+6+14+2 = 62.",
          "b": "Harness reading of the framework checklist, as for the other harnesses. 30 for what leaves the machine by default, 20 for approvals and sandboxing, 15 for prompt-injection posture, 15 for audit and 20 for the security programme. Product usage counts are on by default, disclosed with an opt-out and without prompts, code or files. Remote traffic is end-to-end encrypted and relays carry ciphertext. Local use needs no account. The daemon updates itself from a checksummed manifest without asking (18). Agents may start harnesses only after the person turns on an account switch that refuses an agent, with four live harnesses at most and closes limited to their own. Against that, installing Harness adds its commands to Claude Code's and Codex's allow rules, Codex runs them outside its sandbox, there is no sandbox of its own, and the device page lists spoken tasks as auto-allowed (13). The instructions tell an agent never to answer a harness's question or permission prompt and never to ask one to publish, deploy, delete or push. Harness output is another agent's text, and no further guidance on it was found (9). Every harness shows in the person's app with who started it, and the device key log keeps an add and remove history. No per-call audit log found (9). SECURITY.md with an email and a three-working-day acknowledgement, and a documented trust model. No security.txt, bug bounty or certification found (8)."
        },
        "scores": {
          "a": 62,
          "b": 57
        }
      }
    ],
    "facts": [
      {
        "a": "Agent harness",
        "b": "Agent harness",
        "name": "Kind"
      },
      {
        "a": "Underpass AI",
        "b": "Autonomous, Inc.",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "",
        "b": "stdio",
        "name": "Transports"
      },
      {
        "a": "OAuth or key",
        "b": "OAuth",
        "name": "Auth"
      },
      {
        "a": "Free",
        "b": "Free",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Apache-2.0, with a NOTICE naming Tirso García Ibáñez as the copyright holder",
        "b": "MIT",
        "name": "Licence"
      },
      {
        "a": "none",
        "b": "7",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "no",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-10-25",
        "b": "2026-10-17",
        "name": "Last release"
      },
      {
        "a": "no document linked",
        "b": "no date given",
        "name": "Terms last updated"
      },
      {
        "a": "no document linked",
        "b": "2026-07-07",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not read yet",
        "b": "not found in the text",
        "name": "Customer content may train models"
      },
      {
        "a": "not read yet",
        "b": "yes",
        "name": "Terms restrict automated access"
      },
      {
        "a": "not read yet",
        "b": "not found in the text",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not read yet",
        "b": "yes",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "not read yet",
        "b": "yes",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "0 stars",
        "b": "1.3k stars",
        "name": "Popularity"
      },
      {
        "a": "none",
        "b": "3/5 (4)",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "AXLR scores 70.6 (BB) on agent readiness against Harness's 60 (C), and leads in 5 of 7 scored categories. Harness leads on schema \u0026 documentation and transparency \u0026 trust.",
        "question": "Which is better for AI agents, AXLR or Harness?"
      },
      {
        "answer": "Yes. AXLR is open source (Apache-2.0, with a NOTICE naming Tirso García Ibáñez as the copyright holder). Harness is open source (MIT).",
        "question": "Are AXLR and Harness open source?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 70 against 35",
          "Security \u0026 auth, 62 against 57",
          "Payments \u0026 pricing, 60 against 40",
          "Maintenance \u0026 community, 79 against 60"
        ],
        "also": [
          "Agent-ready, a grade of BB or better"
        ],
        "goodFor": "A program or bot that needs one governed execution at a time, with a policy, a budget, a sandbox profile and correlation ids it sets itself and a result object it reads back, on a machine it controls, with the model on OpenRouter, a local server or a native Anthropic or OpenAI key.",
        "slug": "axlr",
        "watchFor": "The setup assistant turns autonomy on and leaves the exec sandbox off, so after setup the model's commands run with the person's rights, bar the destructive list"
      },
      {
        "aheadOn": [
          "Schema \u0026 documentation, 85 against 80",
          "Transparency \u0026 trust, 64 against 55"
        ],
        "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"
      }
    ],
    "history": {
      "axlr": null,
      "harness-autonomous": [
        {
          "causes": [
            "method"
          ],
          "date": "2026-10-30",
          "delta": -0.3,
          "from": 60.3,
          "fromGrade": "C",
          "to": 60,
          "toGrade": "C"
        }
      ]
    },
    "job": {
      "capability": "agent.multi-agent",
      "name": "Multi-agent orchestration"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/agent-zero-vs-axlr.json",
        "title": "Agent Zero vs AXLR",
        "url": "https://www.anchorterminal.com/compare/agent-zero-vs-axlr"
      },
      {
        "json": "https://www.anchorterminal.com/compare/aider-vs-axlr.json",
        "title": "Aider vs AXLR",
        "url": "https://www.anchorterminal.com/compare/aider-vs-axlr"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amp-vs-axlr.json",
        "title": "Amp vs AXLR",
        "url": "https://www.anchorterminal.com/compare/amp-vs-axlr"
      },
      {
        "json": "https://www.anchorterminal.com/compare/antigravity-cli-vs-axlr.json",
        "title": "Antigravity CLI vs AXLR",
        "url": "https://www.anchorterminal.com/compare/antigravity-cli-vs-axlr"
      },
      {
        "json": "https://www.anchorterminal.com/compare/auggie-vs-axlr.json",
        "title": "Auggie CLI vs AXLR",
        "url": "https://www.anchorterminal.com/compare/auggie-vs-axlr"
      },
      {
        "json": "https://www.anchorterminal.com/compare/axlr-vs-claude-code.json",
        "title": "AXLR vs Claude Code",
        "url": "https://www.anchorterminal.com/compare/axlr-vs-claude-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/axlr-vs-cline.json",
        "title": "AXLR vs Cline",
        "url": "https://www.anchorterminal.com/compare/axlr-vs-cline"
      },
      {
        "json": "https://www.anchorterminal.com/compare/axlr-vs-crush.json",
        "title": "AXLR vs Crush",
        "url": "https://www.anchorterminal.com/compare/axlr-vs-crush"
      },
      {
        "json": "https://www.anchorterminal.com/compare/axlr-vs-cursor-cli.json",
        "title": "AXLR vs Cursor CLI",
        "url": "https://www.anchorterminal.com/compare/axlr-vs-cursor-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/axlr-vs-deepseek-harness.json",
        "title": "AXLR vs DeepSeek Harness (dsh)",
        "url": "https://www.anchorterminal.com/compare/axlr-vs-deepseek-harness"
      },
      {
        "json": "https://www.anchorterminal.com/compare/axlr-vs-deepseek-superagent.json",
        "title": "AXLR vs dsh-superagent (DeepSeek)",
        "url": "https://www.anchorterminal.com/compare/axlr-vs-deepseek-superagent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/axlr-vs-devin.json",
        "title": "AXLR vs Devin",
        "url": "https://www.anchorterminal.com/compare/axlr-vs-devin"
      },
      {
        "json": "https://www.anchorterminal.com/compare/axlr-vs-droid-cli.json",
        "title": "AXLR vs Droid CLI",
        "url": "https://www.anchorterminal.com/compare/axlr-vs-droid-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/axlr-vs-earendil-pi.json",
        "title": "AXLR vs Pi",
        "url": "https://www.anchorterminal.com/compare/axlr-vs-earendil-pi"
      },
      {
        "json": "https://www.anchorterminal.com/compare/axlr-vs-gemini-cli.json",
        "title": "AXLR vs Gemini CLI",
        "url": "https://www.anchorterminal.com/compare/axlr-vs-gemini-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/axlr-vs-github-copilot-cli.json",
        "title": "AXLR vs GitHub Copilot CLI",
        "url": "https://www.anchorterminal.com/compare/axlr-vs-github-copilot-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/axlr-vs-goose.json",
        "title": "AXLR vs goose",
        "url": "https://www.anchorterminal.com/compare/axlr-vs-goose"
      },
      {
        "json": "https://www.anchorterminal.com/compare/axlr-vs-harness2.json",
        "title": "AXLR vs Harness²",
        "url": "https://www.anchorterminal.com/compare/axlr-vs-harness2"
      },
      {
        "json": "https://www.anchorterminal.com/compare/axlr-vs-harnessrouter.json",
        "title": "AXLR vs HarnessRouter",
        "url": "https://www.anchorterminal.com/compare/axlr-vs-harnessrouter"
      },
      {
        "json": "https://www.anchorterminal.com/compare/axlr-vs-jules.json",
        "title": "AXLR vs Jules",
        "url": "https://www.anchorterminal.com/compare/axlr-vs-jules"
      },
      {
        "json": "https://www.anchorterminal.com/compare/axlr-vs-junie.json",
        "title": "AXLR vs Junie CLI",
        "url": "https://www.anchorterminal.com/compare/axlr-vs-junie"
      },
      {
        "json": "https://www.anchorterminal.com/compare/axlr-vs-kilo-code-cli.json",
        "title": "AXLR vs Kilo Code CLI",
        "url": "https://www.anchorterminal.com/compare/axlr-vs-kilo-code-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/axlr-vs-kimi-code-cli.json",
        "title": "AXLR vs Kimi Code CLI",
        "url": "https://www.anchorterminal.com/compare/axlr-vs-kimi-code-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/axlr-vs-kiro-cli.json",
        "title": "AXLR vs Kiro CLI",
        "url": "https://www.anchorterminal.com/compare/axlr-vs-kiro-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/axlr-vs-mini-swe-agent.json",
        "title": "AXLR vs mini-swe-agent",
        "url": "https://www.anchorterminal.com/compare/axlr-vs-mini-swe-agent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/axlr-vs-minimax-code.json",
        "title": "AXLR vs MiniMax Code",
        "url": "https://www.anchorterminal.com/compare/axlr-vs-minimax-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/axlr-vs-mistral-vibe-cli.json",
        "title": "AXLR vs Mistral Vibe CLI",
        "url": "https://www.anchorterminal.com/compare/axlr-vs-mistral-vibe-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/axlr-vs-muse-code.json",
        "title": "AXLR vs Muse Code",
        "url": "https://www.anchorterminal.com/compare/axlr-vs-muse-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/axlr-vs-openai-codex.json",
        "title": "AXLR vs OpenAI Codex",
        "url": "https://www.anchorterminal.com/compare/axlr-vs-openai-codex"
      },
      {
        "json": "https://www.anchorterminal.com/compare/axlr-vs-opencode.json",
        "title": "AXLR vs OpenCode",
        "url": "https://www.anchorterminal.com/compare/axlr-vs-opencode"
      },
      {
        "json": "https://www.anchorterminal.com/compare/axlr-vs-openhands.json",
        "title": "AXLR vs OpenHands",
        "url": "https://www.anchorterminal.com/compare/axlr-vs-openhands"
      },
      {
        "json": "https://www.anchorterminal.com/compare/axlr-vs-openmausbot.json",
        "title": "AXLR vs OpenMausBot",
        "url": "https://www.anchorterminal.com/compare/axlr-vs-openmausbot"
      },
      {
        "json": "https://www.anchorterminal.com/compare/axlr-vs-prime-agent.json",
        "title": "AXLR vs Prime Agent",
        "url": "https://www.anchorterminal.com/compare/axlr-vs-prime-agent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/axlr-vs-qoder-cli.json",
        "title": "AXLR vs Qoder CLI",
        "url": "https://www.anchorterminal.com/compare/axlr-vs-qoder-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/axlr-vs-qwen-code.json",
        "title": "AXLR vs Qwen Code",
        "url": "https://www.anchorterminal.com/compare/axlr-vs-qwen-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/axlr-vs-reflection-mirror.json",
        "title": "AXLR vs Mirror CLI",
        "url": "https://www.anchorterminal.com/compare/axlr-vs-reflection-mirror"
      },
      {
        "json": "https://www.anchorterminal.com/compare/axlr-vs-rovo-dev-cli.json",
        "title": "AXLR vs Rovo Dev CLI",
        "url": "https://www.anchorterminal.com/compare/axlr-vs-rovo-dev-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/axlr-vs-unstoppable.json",
        "title": "AXLR vs Unstoppable",
        "url": "https://www.anchorterminal.com/compare/axlr-vs-unstoppable"
      },
      {
        "json": "https://www.anchorterminal.com/compare/axlr-vs-vibe-trading.json",
        "title": "AXLR vs Vibe-Trading",
        "url": "https://www.anchorterminal.com/compare/axlr-vs-vibe-trading"
      },
      {
        "json": "https://www.anchorterminal.com/compare/axlr-vs-warp.json",
        "title": "AXLR vs Warp (Warp Agent CLI and the Oz Agent API)",
        "url": "https://www.anchorterminal.com/compare/axlr-vs-warp"
      },
      {
        "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/auggie-vs-harness-autonomous.json",
        "title": "Auggie CLI vs Harness",
        "url": "https://www.anchorterminal.com/compare/auggie-vs-harness-autonomous"
      },
      {
        "json": "https://www.anchorterminal.com/compare/axlr-vs-clawboo.json",
        "title": "AXLR vs Clawboo",
        "url": "https://www.anchorterminal.com/compare/axlr-vs-clawboo"
      },
      {
        "json": "https://www.anchorterminal.com/compare/axlr-vs-cli-manager.json",
        "title": "AXLR vs CLI Manager",
        "url": "https://www.anchorterminal.com/compare/axlr-vs-cli-manager"
      },
      {
        "json": "https://www.anchorterminal.com/compare/axlr-vs-paperclip.json",
        "title": "AXLR vs Paperclip",
        "url": "https://www.anchorterminal.com/compare/axlr-vs-paperclip"
      },
      {
        "json": "https://www.anchorterminal.com/compare/axlr-vs-parallax-agents.json",
        "title": "AXLR vs Parallax",
        "url": "https://www.anchorterminal.com/compare/axlr-vs-parallax-agents"
      },
      {
        "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/clawboo-vs-harness-autonomous.json",
        "title": "Clawboo vs Harness",
        "url": "https://www.anchorterminal.com/compare/clawboo-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/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/crush-vs-harness-autonomous.json",
        "title": "Crush vs Harness",
        "url": "https://www.anchorterminal.com/compare/crush-vs-harness-autonomous"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deepseek-harness-vs-harness-autonomous.json",
        "title": "DeepSeek Harness (dsh) vs Harness",
        "url": "https://www.anchorterminal.com/compare/deepseek-harness-vs-harness-autonomous"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deepseek-superagent-vs-harness-autonomous.json",
        "title": "dsh-superagent (DeepSeek) vs Harness",
        "url": "https://www.anchorterminal.com/compare/deepseek-superagent-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-jules.json",
        "title": "Harness vs Jules",
        "url": "https://www.anchorterminal.com/compare/harness-autonomous-vs-jules"
      },
      {
        "json": "https://www.anchorterminal.com/compare/harness-autonomous-vs-junie.json",
        "title": "Harness vs Junie CLI",
        "url": "https://www.anchorterminal.com/compare/harness-autonomous-vs-junie"
      },
      {
        "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-kimi-code-cli.json",
        "title": "Harness vs Kimi Code CLI",
        "url": "https://www.anchorterminal.com/compare/harness-autonomous-vs-kimi-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-minimax-code.json",
        "title": "Harness vs MiniMax Code",
        "url": "https://www.anchorterminal.com/compare/harness-autonomous-vs-minimax-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/harness-autonomous-vs-mistral-vibe-cli.json",
        "title": "Harness vs Mistral Vibe CLI",
        "url": "https://www.anchorterminal.com/compare/harness-autonomous-vs-mistral-vibe-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-openmausbot.json",
        "title": "Harness vs OpenMausBot",
        "url": "https://www.anchorterminal.com/compare/harness-autonomous-vs-openmausbot"
      },
      {
        "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-qoder-cli.json",
        "title": "Harness vs Qoder CLI",
        "url": "https://www.anchorterminal.com/compare/harness-autonomous-vs-qoder-cli"
      },
      {
        "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/harness-autonomous-vs-reflection-mirror.json",
        "title": "Harness vs Mirror CLI",
        "url": "https://www.anchorterminal.com/compare/harness-autonomous-vs-reflection-mirror"
      },
      {
        "json": "https://www.anchorterminal.com/compare/harness-autonomous-vs-rovo-dev-cli.json",
        "title": "Harness vs Rovo Dev CLI",
        "url": "https://www.anchorterminal.com/compare/harness-autonomous-vs-rovo-dev-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/harness-autonomous-vs-unstoppable.json",
        "title": "Harness vs Unstoppable",
        "url": "https://www.anchorterminal.com/compare/harness-autonomous-vs-unstoppable"
      },
      {
        "json": "https://www.anchorterminal.com/compare/harness-autonomous-vs-vibe-trading.json",
        "title": "Harness vs Vibe-Trading",
        "url": "https://www.anchorterminal.com/compare/harness-autonomous-vs-vibe-trading"
      },
      {
        "json": "https://www.anchorterminal.com/compare/harness-autonomous-vs-warp.json",
        "title": "Harness vs Warp (Warp Agent CLI and the Oz Agent API)",
        "url": "https://www.anchorterminal.com/compare/harness-autonomous-vs-warp"
      }
    ],
    "panel": null,
    "scores": [
      {
        "axlr": 70,
        "by": 35,
        "edge": "axlr",
        "harness-autonomous": 35,
        "key": "reliability",
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "axlr": 80,
        "by": 5,
        "edge": "harness-autonomous",
        "harness-autonomous": 85,
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "axlr": 83,
        "by": 1,
        "edge": "axlr",
        "harness-autonomous": 82,
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "axlr": 62,
        "by": 5,
        "edge": "axlr",
        "harness-autonomous": 57,
        "key": "security",
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "axlr": 60,
        "by": 20,
        "edge": "axlr",
        "harness-autonomous": 40,
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "axlr": 79,
        "by": 19,
        "edge": "axlr",
        "harness-autonomous": 60,
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "axlr": 55,
        "by": 9,
        "edge": "harness-autonomous",
        "harness-autonomous": 64,
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "AXLR scores 70.6 (BB) on agent readiness against Harness's 60 (C), and leads in 5 of 7 scored categories. Harness leads on schema \u0026 documentation and transparency \u0026 trust. Both do multi-agent orchestration.",
    "tasks": null,
    "tutorials": [],
    "verdicts": {
      "axlr": "A pre-1.0 Go harness with an unusually complete service contract, mutual TLS with principal roles, required idempotency keys, a policy, budget and sandbox per execution, and a result object a program can read. The console's defaults after setup are autonomy on and no sandbox, the project has one maintainer and no outside users yet, and releases carry no notes.",
      "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."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/axlr-vs-harness-autonomous",
    "json": "https://www.anchorterminal.com/compare/axlr-vs-harness-autonomous.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/axlr-vs-harness-autonomous.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/axlr-vs-harness-autonomous.min.md"
  },
  "markdown": "AXLR scores 70.6 (BB) on agent readiness against Harness's 60 (C), and leads in 5 of 7 scored categories. Harness leads on schema \u0026 documentation and transparency \u0026 trust. Both do multi-agent orchestration.\n\n- AXLR: grade BB, 70.6/100, rank #168 of 1253. Markdown https://www.anchorterminal.com/tools/axlr.md · JSON https://www.anchorterminal.com/api/v1/tools/axlr.json\n- Harness: grade C, 60/100, rank #620 of 1253. Markdown https://www.anchorterminal.com/tools/harness-autonomous.md · JSON https://www.anchorterminal.com/api/v1/tools/harness-autonomous.json\n- Best agent harnesses and coding agents: https://www.anchorterminal.com/best/agent-harnesses/index.md\n- All 1000 harnesses comparisons: https://www.anchorterminal.com/compare/agent-harnesses/index.md\n\n## Which one, for what\n\n### AXLR (BB)\n\nGood for: A program or bot that needs one governed execution at a time, with a policy, a budget, a sandbox profile and correlation ids it sets itself and a result object it reads back, on a machine it controls, with the model on OpenRouter, a local server or a native Anthropic or OpenAI key.\n\nAhead on:\n- Reliability, 70 against 35\n- Security \u0026 auth, 62 against 57\n- Payments \u0026 pricing, 60 against 40\n- Maintenance \u0026 community, 79 against 60\n\nAlso in its favour:\n- Agent-ready, a grade of BB or better\n\nWatch for: The setup assistant turns autonomy on and leaves the exec sandbox off, so after setup the model's commands run with the person's rights, bar the destructive list\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 80\n- Transparency \u0026 trust, 64 against 55\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\n## Why the edge\n\n### Reliability: AXLR +35\n\n- AXLR (70): Read as a local package, as claude-code, goose, opencode and openhands were. Release archives for Linux, macOS and Windows on amd64 and arm64 with a `.sha256` beside each, a GHCR image, an OCI Helm chart and source builds with Go 1.26, all stated in the docs; no Homebrew, npm or apt route (20). CI on main runs vet, race tests and a coverage gate above 80 per cent for both modules, with the sandbox tests required under bubblewrap, and the last ten runs on main to 1 November 2026 all passed; the release workflow tests on six native runners (25). 10 open issues, all opened by the founder on 19 and 21 October 2026 as trackers for service work (work modes, plugins, the sandbox setting, cost limits), none from an outside user and none a crash report, 0 open pull requests and about 100 merged; with 0 stars there is nobody else to report, so the handling of outside reports is untested (20). Tags are semver 0.x and the docs date each behaviour change inline (\"until 14 October 2026…\"), but the 21 releases have empty notes, there is no CHANGELOG.md, and the product contract records one retirement (the seven 1.0 skill definitions on 5 October 2026) without a notice period (5). Pre-1.0, which the README calls an evolving project (0). 20+25+20+5+0 = 70.\n- Harness (35): Read as local software, since the agents run on the owner's machines. A one-line installer from Autonomous's CDN, DMG and AppImage builds, and App Store and Google Play apps, with macOS and Linux stated as supported and Node managed by the installer. Not on npm or a package registry (20). A public CI workflow runs the CLI suite in four shards, the desktop suite and typechecks, and the vendor's reliability run of 16 September 2026 reports 2,325 CLI, 370 backend and 1,686 desktop tests passing. We could not read CI run results, so credit for the suite only (10). Open issues could not be read, because GitHub's web pages and API were not reachable from our network. Unchecked, so scored absent (0). Tags follow semver per component, but there is no changelog for the app or CLI and breaking changes are not marked in the repository (5). The CLI agents call is 0.4.18 and the npm MCP package is 0.1.0 and unpublished. The desktop app is 1.2.89, but the agent surface is pre-1.0, and Agents can start other agents is an experiment (0). Accounts and the relay are hosted by Autonomous with no status page found.\n\n### Payments \u0026 pricing: AXLR +20\n\n- AXLR (60): No payment protocol (0). Free and Apache-2.0 with nothing to buy, so 20, 20 and 20 on the last three lines by the self-hosted rule, since the docs say what you pay your model provider, the free route needs no card, and it runs local models with no signup at all, the JSON worker without any model. 0+20+20+20 = 60.\n- Harness (40): No payment protocol (0). Read with the self-hosted rule. The software is free and the optional hardware prices are public (20). Free with no card (20). An agent cannot start harnesses until the person signs in with Google or Apple in a browser and turns on the experimental switch, so 0 for autonomous onboarding, as the other harnesses that need an account were read (0).\n\n### Maintenance \u0026 community: AXLR +19\n\n- AXLR (79): v0.15.0 on 2026-10-25, with commits on main to 2026-11-01 (30). 21 releases between 4 and 25 October 2026 (20). One maintainer (368 of 399 commits, the rest by two agent accounts), 10 open issues that are his own trackers with no comments, about 100 merged pull requests and no outside report to measure a reply against (15). Not in the MCP registry; the Go module and a proto to generate clients from are the only client code, beside the GHCR image and Helm chart (5). Go 1.26 toolchain pinned, release actions pinned by commit SHA, a go-licenses check that the third-party bundle matches the dependency graph, and CI passing on main (9). 30+20+15+5+9 = 79.\n- Harness (60): v0.4.18_cli and v1.2.89_desktop on 17 October 2026 (30). 548 tags since 9 September 2026 (20). Pull requests numbered past #1,390 merge daily by the team, but issues and outside pull requests could not be read (5). Not in the official MCP registry, which returned nothing for autonomous-ai, although the repository has a server.json. The npm package it names was never published (0). CI workflows for the CLI, desktop, backend and OS, with dependency lockfiles current. Run results unread (5).\n\n### Transparency \u0026 trust: Harness +9\n\n- AXLR (55): Apache-2.0 with a NOTICE (30). No privacy policy or terms on underpassai.com or axlr.underpassai.com; the docs' 'Where data goes' and 'Diagnostics and privacy' sections say that model requests go to OpenRouter, the local server or the native API, that Jev sends text to TypeSafe only when on, that sessions live under `$XDG_STATE_HOME/axlr`, that payload capture is off by default and redacted when on, and that traces are deleted after 30 days; nothing covers the engine downloads' or the catalog registry's handling of a client's requests (15). No deprecation policy; pre-1.0 changes are dated inline in the docs and the product contract records the 5 October 2026 retirement of the first skill catalogue after the fact (6). No telemetry to disclose, and the docs say in two places what leaves the machine and how to stop payload capture, though no single page says there is no telemetry (17). 30+15+6+17 = 68.\n- Harness (64): MIT licence for the whole repository under Autonomous, Inc., with third-party Store covers under their own licences (30). The repository documents what usage counts contain, a 10-day pseudonymous activity mark and the encrypted relay in detail. Autonomous's privacy policy of 7 July 2026 is general to its stores and sites and does not mention Harness (14). The provider protocol promises both revisions side by side for a deprecation window after a breaking change. Nothing similar for the app or CLI (6). Telemetry is disclosed with an opt-out in the app and CLI, but it is on by default and described in the repository rather than in the privacy policy (14).\n\n### Schema \u0026 documentation: Harness +5\n\n- AXLR (80): An OpenAPI 3.1 file for the service (15 paths, 23 schemas, `mutualTLS` security scheme, `additionalProperties: false` on request bodies), a checked proto for the gRPC service, and the 19 MCP tools built from the same shared schemas (25). No llms.txt on either site (404), and the docs site renders HTML; the Markdown sources are in the repository (5). The product contract tables what each of the four interfaces can and cannot do, the work-mode table states each mode's purpose and tool policy, the transport parity ledger names every verb's arguments and behaviour, and `axlr_tools` tells the model to look for a tool before forging one (15). Typed inputs throughout, `Idempotency-Key` 16 to 128 safe ASCII characters, `expected_revision` a positive integer, policy levels, sandbox profiles and egress values enumerated, budgets as four integers, and the service rejects unknown fields, invalid types and bodies over 4 MiB (14). Examples in every guide, an error shape of `code`, `message` and `request_id`, named codes (`409 idempotency_conflict`, `400 invalid_cursor`, `422 invalid_policy`, `invalid_budget`, `sandbox_unavailable`, `not_ready`, `invalid_id`), a gRPC status mapping, and the worker's five statuses and three exit codes; no single error reference page (14). `/v1` routes and an OpenAPI version of 0.1.0 against a 0.15.0 release, and no changelog beyond the dated notes inside the docs (7). 25+5+15+14+14+7 = 80.\n- Harness (85): Read as an MCP server and CLI. Seven tools with typed JSON Schema inputs, `additionalProperties: false` and required fields marked, plus `--json` on every command. No OpenAPI, which a stdio server does not need (23). llms.txt and a Markdown-like agents page written for agents (10). The server instructions and llms.txt say when to use Harness rather than `claude -p` or `codex exec`, when to do the work yourself, and never to answer a harness's prompt or ask one to push or deploy (20). An enum on `agent`, `minItems` on wait names, minimum and maximum on `timeout_seconds` and `chars`. `machine`, `folder` and `project` are free strings (12). Worked examples for parallel runs, handing a task to Codex and waiting, an exit code table, and a `Next:` line after every answer (13). Per-component semver tags, but the only CHANGELOG.md covers the provider protocol, and we could not read the GitHub release notes (7).\n\n### Security \u0026 auth: AXLR +5\n\n- AXLR (62): Harness reading of the framework checklist, as for the other four harnesses. 30 for what leaves the machine by default, 20 for approvals and sandboxing, 15 for prompt-injection posture, 15 for audit and 20 for the security programme. No product telemetry in the console source (the outbound hosts are openrouter.ai, api.anthropic.com, api.openai.com, a configured local server, api.github.com and github.com for engine downloads, and registry.underpassai.com for the signed catalog index) or in the docs; payload capture is off by default since 9 October 2026, traces omit prompts and credentials, model keys are never given to commands or plugins, and Jev sends requests and answers to TypeSafe only when on, which the setup assistant does when `TYPESAFE_API_KEY` is set, with a notice on stderr (27). Approval cards, a destructive list that always asks, four work modes, a policy level per execution, a bubblewrap or container sandbox with an enforced egress allow list, and a service that approves nothing but reads. Against that, the setup assistant writes `autonomous: true`, `exec_sandbox` is off by default, forged tools run with the person's rights, and the README says the console and worker are not sandboxes (13). Forged tools are refused when a file changes since the forge, a policy forbids calls outside the model, and the docs say MCP tools keep their own side effects, but no prompt-injection guidance was found and MCP results reach the model unmarked (6). The service keeps an event journal, audit records, a receipt with the SHA-256 of every call's arguments and outcome, and correlation ids on every event; the console keeps session records, a redacted app log and `/session` (14). No SECURITY.md, no security.txt on either host, no advisories, no bug bounty; release checksums and a minisign-signed catalog are integrity, not a programme (2). 27+13+6+14+2 = 62.\n- Harness (57): Harness reading of the framework checklist, as for the other harnesses. 30 for what leaves the machine by default, 20 for approvals and sandboxing, 15 for prompt-injection posture, 15 for audit and 20 for the security programme. Product usage counts are on by default, disclosed with an opt-out and without prompts, code or files. Remote traffic is end-to-end encrypted and relays carry ciphertext. Local use needs no account. The daemon updates itself from a checksummed manifest without asking (18). Agents may start harnesses only after the person turns on an account switch that refuses an agent, with four live harnesses at most and closes limited to their own. Against that, installing Harness adds its commands to Claude Code's and Codex's allow rules, Codex runs them outside its sandbox, there is no sandbox of its own, and the device page lists spoken tasks as auto-allowed (13). The instructions tell an agent never to answer a harness's question or permission prompt and never to ask one to publish, deploy, delete or push. Harness output is another agent's text, and no further guidance on it was found (9). Every harness shows in the person's app with who started it, and the device key log keeps an add and remove history. No per-call audit log found (9). SECURITY.md with an email and a three-working-day acknowledgement, and a documented trust model. No security.txt, bug bounty or certification found (8).\n\n## Score by category\n\n| Category | Weight | AXLR | Harness | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 70 | 35 | AXLR +35 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 80 | 85 | Harness +5 |\n| Agent ergonomics | 13% (16.2 this run) | 83 | 82 | AXLR +1 |\n| Security \u0026 auth | 14% (17.5 this run) | 62 | 57 | AXLR +5 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 60 | 40 | AXLR +20 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 79 | 60 | AXLR +19 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 55 | 64 | Harness +9 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **70.6 · BB** | **60 · C** | |\n\n## Facts side by side\n\n| Fact | AXLR | Harness |\n| --- | --- | --- |\n| Kind | Agent harness | Agent harness |\n| Vendor | Underpass AI | Autonomous, Inc. |\n| Hosted endpoint | no (local only) | no (local only) |\n| Transports |  | stdio |\n| Auth | OAuth or key | OAuth |\n| Pricing | Free | Free |\n| x402 | no | no |\n| Licence | Apache-2.0, with a NOTICE naming Tirso García Ibáñez as the copyright holder | MIT |\n| Tools exposed | none | 7 |\n| Read-only variant documented | no | no |\n| llms.txt | no | yes |\n| Last release | 2026-10-25 | 2026-10-17 |\n| Terms last updated | no document linked | no date given |\n| Privacy policy last updated | no document linked | 2026-07-07 |\n| Customer content may train models | not read yet | not found in the text |\n| Terms restrict automated access | not read yet | yes |\n| Terms restrict benchmarking | not read yet | not found in the text |\n| Terms or service can change without notice | not read yet | yes |\n| Arbitration or class-action waiver | not read yet | yes |\n| Popularity | 0 stars | 1.3k stars |\n| Agent reviews | none | 3/5 (4) |\n\n## How the scores have moved\n\n### AXLR\n\nNo score change since it was listed.\n\n### Harness\n\n- -0.3 on 30 October 2026: checklist\n\n## Verdicts\n\n**AXLR.** A pre-1.0 Go harness with an unusually complete service contract, mutual TLS with principal roles, required idempotency keys, a policy, budget and sandbox per execution, and a result object a program can read. The console's defaults after setup are autonomy on and no sandbox, the project has one maintainer and no outside users yet, and releases carry no notes.\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## Before you call either\n\n### AXLR\n\n1. Before the first prompt, set `approvals.autonomous` to false or run with `--approve none`, and turn `exec_sandbox.mode` to `auto` or `required` on Linux; after setup both default the other way\n2. Drive a run with `axlr-tui --exec --json --policy \u003cfile\u003e --budget \u003cfile\u003e --sandbox \u003cfile\u003e` and read only the last `result` line; exit 3 means a call waits for `--decide approve|deny` with `--session \u003cid\u003e`\n3. On the service, send `Idempotency-Key` (16 to 128 safe ASCII characters) on every turn, approval and direct call, and pass the session's `expected_revision`; a reused key with a different body answers 409\n4. A local model must return native tool calls (llama.cpp with `--jinja`, vLLM with `--enable-auto-tool-choice`); set `context_tokens` on the entry and `OLLAMA_CONTEXT_LENGTH` for Ollama\n5. Leave `TYPESAFE_API_KEY` unset unless you want the setup assistant to switch Jev on, which sends requests and final answers to TypeSafe\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## Questions\n\n### Which is better for AI agents, AXLR or Harness?\n\nAXLR scores 70.6 (BB) on agent readiness against Harness's 60 (C), and leads in 5 of 7 scored categories. Harness leads on schema \u0026 documentation and transparency \u0026 trust.\n\n### Are AXLR and Harness open source?\n\nYes. AXLR is open source (Apache-2.0, with a NOTICE naming Tirso García Ibáñez as the copyright holder). Harness is open source (MIT).\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/axlr-vs-harness-autonomous.json, and with the fewest tokens: https://www.anchorterminal.com/compare/axlr-vs-harness-autonomous.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"axlr\", \"b\": \"harness-autonomous\"}`. From a terminal: `anchor compare axlr harness-autonomous`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/axlr.json and https://www.anchorterminal.com/api/v1/tools/harness-autonomous.json\n\n## Other comparisons with AXLR or Harness\n\n- [Agent Zero vs AXLR](https://www.anchorterminal.com/compare/agent-zero-vs-axlr.md)\n- [Aider vs AXLR](https://www.anchorterminal.com/compare/aider-vs-axlr.md)\n- [Amp vs AXLR](https://www.anchorterminal.com/compare/amp-vs-axlr.md)\n- [Antigravity CLI vs AXLR](https://www.anchorterminal.com/compare/antigravity-cli-vs-axlr.md)\n- [Auggie CLI vs AXLR](https://www.anchorterminal.com/compare/auggie-vs-axlr.md)\n- [AXLR vs Claude Code](https://www.anchorterminal.com/compare/axlr-vs-claude-code.md)\n- [AXLR vs Cline](https://www.anchorterminal.com/compare/axlr-vs-cline.md)\n- [AXLR vs Crush](https://www.anchorterminal.com/compare/axlr-vs-crush.md)\n- [AXLR vs Cursor CLI](https://www.anchorterminal.com/compare/axlr-vs-cursor-cli.md)\n- [AXLR vs DeepSeek Harness (dsh)](https://www.anchorterminal.com/compare/axlr-vs-deepseek-harness.md)\n- [AXLR vs dsh-superagent (DeepSeek)](https://www.anchorterminal.com/compare/axlr-vs-deepseek-superagent.md)\n- [AXLR vs Devin](https://www.anchorterminal.com/compare/axlr-vs-devin.md)\n- [AXLR vs Droid CLI](https://www.anchorterminal.com/compare/axlr-vs-droid-cli.md)\n- [AXLR vs Pi](https://www.anchorterminal.com/compare/axlr-vs-earendil-pi.md)\n- [AXLR vs Gemini CLI](https://www.anchorterminal.com/compare/axlr-vs-gemini-cli.md)\n- [AXLR vs GitHub Copilot CLI](https://www.anchorterminal.com/compare/axlr-vs-github-copilot-cli.md)\n- [AXLR vs goose](https://www.anchorterminal.com/compare/axlr-vs-goose.md)\n- [AXLR vs Harness²](https://www.anchorterminal.com/compare/axlr-vs-harness2.md)\n- [AXLR vs HarnessRouter](https://www.anchorterminal.com/compare/axlr-vs-harnessrouter.md)\n- [AXLR vs Jules](https://www.anchorterminal.com/compare/axlr-vs-jules.md)\n- [AXLR vs Junie CLI](https://www.anchorterminal.com/compare/axlr-vs-junie.md)\n- [AXLR vs Kilo Code CLI](https://www.anchorterminal.com/compare/axlr-vs-kilo-code-cli.md)\n- [AXLR vs Kimi Code CLI](https://www.anchorterminal.com/compare/axlr-vs-kimi-code-cli.md)\n- [AXLR vs Kiro CLI](https://www.anchorterminal.com/compare/axlr-vs-kiro-cli.md)\n- [AXLR vs mini-swe-agent](https://www.anchorterminal.com/compare/axlr-vs-mini-swe-agent.md)\n- [AXLR vs MiniMax Code](https://www.anchorterminal.com/compare/axlr-vs-minimax-code.md)\n- [AXLR vs Mistral Vibe CLI](https://www.anchorterminal.com/compare/axlr-vs-mistral-vibe-cli.md)\n- [AXLR vs Muse Code](https://www.anchorterminal.com/compare/axlr-vs-muse-code.md)\n- [AXLR vs OpenAI Codex](https://www.anchorterminal.com/compare/axlr-vs-openai-codex.md)\n- [AXLR vs OpenCode](https://www.anchorterminal.com/compare/axlr-vs-opencode.md)\n- [AXLR vs OpenHands](https://www.anchorterminal.com/compare/axlr-vs-openhands.md)\n- [AXLR vs OpenMausBot](https://www.anchorterminal.com/compare/axlr-vs-openmausbot.md)\n- [AXLR vs Prime Agent](https://www.anchorterminal.com/compare/axlr-vs-prime-agent.md)\n- [AXLR vs Qoder CLI](https://www.anchorterminal.com/compare/axlr-vs-qoder-cli.md)\n- [AXLR vs Qwen Code](https://www.anchorterminal.com/compare/axlr-vs-qwen-code.md)\n- [AXLR vs Mirror CLI](https://www.anchorterminal.com/compare/axlr-vs-reflection-mirror.md)\n- [AXLR vs Rovo Dev CLI](https://www.anchorterminal.com/compare/axlr-vs-rovo-dev-cli.md)\n- [AXLR vs Unstoppable](https://www.anchorterminal.com/compare/axlr-vs-unstoppable.md)\n- [AXLR vs Vibe-Trading](https://www.anchorterminal.com/compare/axlr-vs-vibe-trading.md)\n- [AXLR vs Warp (Warp Agent CLI and the Oz Agent API)](https://www.anchorterminal.com/compare/axlr-vs-warp.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- [Auggie CLI vs Harness](https://www.anchorterminal.com/compare/auggie-vs-harness-autonomous.md)\n- [AXLR vs Clawboo](https://www.anchorterminal.com/compare/axlr-vs-clawboo.md)\n- [AXLR vs CLI Manager](https://www.anchorterminal.com/compare/axlr-vs-cli-manager.md)\n- [AXLR vs Paperclip](https://www.anchorterminal.com/compare/axlr-vs-paperclip.md)\n- [AXLR vs Parallax](https://www.anchorterminal.com/compare/axlr-vs-parallax-agents.md)\n- [Claude Code vs Harness](https://www.anchorterminal.com/compare/claude-code-vs-harness-autonomous.md)\n- [Clawboo vs Harness](https://www.anchorterminal.com/compare/clawboo-vs-harness-autonomous.md)\n- [CLI Manager vs Harness](https://www.anchorterminal.com/compare/cli-manager-vs-harness-autonomous.md)\n- [Cline vs Harness](https://www.anchorterminal.com/compare/cline-vs-harness-autonomous.md)\n- [Crush vs Harness](https://www.anchorterminal.com/compare/crush-vs-harness-autonomous.md)\n- [DeepSeek Harness (dsh) vs Harness](https://www.anchorterminal.com/compare/deepseek-harness-vs-harness-autonomous.md)\n- [dsh-superagent (DeepSeek) vs Harness](https://www.anchorterminal.com/compare/deepseek-superagent-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 Jules](https://www.anchorterminal.com/compare/harness-autonomous-vs-jules.md)\n- [Harness vs Junie CLI](https://www.anchorterminal.com/compare/harness-autonomous-vs-junie.md)\n- [Harness vs Kilo Code CLI](https://www.anchorterminal.com/compare/harness-autonomous-vs-kilo-code-cli.md)\n- [Harness vs Kimi Code CLI](https://www.anchorterminal.com/compare/harness-autonomous-vs-kimi-code-cli.md)\n- [Harness vs Kiro CLI](https://www.anchorterminal.com/compare/harness-autonomous-vs-kiro-cli.md)\n- [Harness vs MiniMax Code](https://www.anchorterminal.com/compare/harness-autonomous-vs-minimax-code.md)\n- [Harness vs Mistral Vibe CLI](https://www.anchorterminal.com/compare/harness-autonomous-vs-mistral-vibe-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 OpenMausBot](https://www.anchorterminal.com/compare/harness-autonomous-vs-openmausbot.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 Qoder CLI](https://www.anchorterminal.com/compare/harness-autonomous-vs-qoder-cli.md)\n- [Harness vs Qwen Code](https://www.anchorterminal.com/compare/harness-autonomous-vs-qwen-code.md)\n- [Harness vs Mirror CLI](https://www.anchorterminal.com/compare/harness-autonomous-vs-reflection-mirror.md)\n- [Harness vs Rovo Dev CLI](https://www.anchorterminal.com/compare/harness-autonomous-vs-rovo-dev-cli.md)\n- [Harness vs Unstoppable](https://www.anchorterminal.com/compare/harness-autonomous-vs-unstoppable.md)\n- [Harness vs Vibe-Trading](https://www.anchorterminal.com/compare/harness-autonomous-vs-vibe-trading.md)\n- [Harness vs Warp (Warp Agent CLI and the Oz Agent API)](https://www.anchorterminal.com/compare/harness-autonomous-vs-warp.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "attributionRequired": true,
    "credit": "CC BY 4.0, credit Anchor Terminal and link the page or API address you took it from (https://www.anchorterminal.com/terms/#data)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-11-01",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.7",
    "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": "AXLR vs Harness",
        "url": ""
      }
    ],
    "description": "AXLR scores 70.6 (BB) to Harness's 60 (C) for multi-agent orchestration. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "AXLR BB 70.6",
      "Harness C 60",
      "scores"
    ],
    "h1": "AXLR vs Harness",
    "image": "https://www.anchorterminal.com/assets/og/default.png",
    "path": "/compare/axlr-vs-harness-autonomous",
    "published": "2026-10-01",
    "section": "tools",
    "title": "AXLR vs Harness for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-11-01",
    "url": "https://www.anchorterminal.com/compare/axlr-vs-harness-autonomous"
  },
  "tokens": {
    "markdown": 6850,
    "slim": 3680
  },
  "version": 1
}
