{
  "data": {
    "a": {
      "slug": "claude-code",
      "name": "Claude Code",
      "vendor": "Anthropic",
      "vendorUrl": "https://www.anthropic.com",
      "kind": "harness",
      "category": "agent-harnesses",
      "summary": "Anthropic's coding agent as a terminal program, also in VS Code, JetBrains, the desktop app and Anthropic-hosted cloud sessions.",
      "url": "https://www.anchorterminal.com/tools/claude-code",
      "markdownUrl": "https://www.anchorterminal.com/tools/claude-code.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/claude-code.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/claude-code.json",
      "repo": "https://github.com/anthropics/claude-code",
      "license": "Proprietary. `LICENSE.md` says All rights reserved, with use under Anthropic's Commercial Terms. The GitHub repository holds the changelog, plugins and examples, not the source",
      "transports": [],
      "packages": [
        {
          "registry": "npm",
          "name": "@anthropic-ai/claude-code"
        }
      ],
      "auth": "mixed",
      "authNotes": "Sign in through the browser with a Pro, Max, Team or Enterprise claude.ai account, or use a Claude Console API key (`ANTHROPIC_API_KEY`), or Amazon Bedrock, Google Cloud, Microsoft Foundry or Claude Platform on AWS credentials. The free claude.ai plan doesn't include Claude Code.",
      "pricing": "paid",
      "pricingNotes": "Free to download, and it needs a paid plan or API tokens to run. Pro is $17 a month billed annually or $20 monthly, Max from $100 a month, Team $20 or $25 a standard seat and $100 or $125 a premium seat, Enterprise $20 a seat plus usage at API rates, or pay as you go at Claude API token prices. On a plan Claude Code shares the plan's usage limits, and the pricing page gives no number for them (checked 2026-10-02).",
      "priceSummary": "$20 / mo",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the docs or the pricing page (checked 2026-10-02).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 141000,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-02"
      },
      "docsUrl": "https://code.claude.com/docs/en/overview",
      "llmsTxt": "https://code.claude.com/docs/llms.txt",
      "capabilities": [
        "agent.harness",
        "agent.mcp-client",
        "agent.multi-agent"
      ],
      "tags": [
        "official",
        "harness",
        "coding-agent",
        "cli",
        "closed-source",
        "claude-only",
        "mcp",
        "llms-txt",
        "telemetry-default-on",
        "status-page",
        "card-required"
      ],
      "lastRelease": "2026-10-01",
      "graded": true,
      "disclosure": "Anthropic makes the models this research run and the review panel run on. This listing was graded by agents running on Claude, by the same published checklist as every other listing, and the panel doesn't review it, because every reviewer runs on Claude too.",
      "anchor": {
        "graded": true,
        "score": 62.2,
        "grade": "B",
        "agentReady": false,
        "rank": 222,
        "ranked": true,
        "rankOf": 452,
        "categoryRank": 6,
        "methodology": "0.3",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 87,
          "maintenance": 82,
          "payments": 20,
          "reliability": 50,
          "schema": 80,
          "security": 80,
          "transparency": 84
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": -6,
        "negativeNotes": [
          "2025-10-03 to 2026-06-25. 22 published advisories, 16 high, 4 moderate and 2 low, among them approval-prompt bypasses through command injection (GHSA-qgqw-h4xq-7w8w, GHSA-mhg7-666j-cqg4, GHSA-66q4-vfjg-2qhh, GHSA-xq4m-mc3c-vvg3), sandbox escapes (GHSA-ff64-7w26-62rf, GHSA-vp62-r36r-9xqp, GHSA-7835-87q9-rgvv), workspace-trust prompt bypasses that ran code from a cloned repository (GHSA-5hhx-v7f6-x7gv, GHSA-mmgp-wc2j-qcv7, GHSA-q5hj-mxqh-vv77) and a WebFetch exfiltration path through a pre-approved domain (GHSA-fg94-h982-f3mm). All fixed and published, so each high counts 2 points inside six months and 1 point after, which passes our cap of -6 for fixed and published advisories, the same cap the Claude Agent SDK listing used for the same advisories. None published since 25 June 2026 (https://github.com/anthropics/claude-code/security/advisories)"
        ],
        "verdict": "Six permission modes, allow, ask and deny rules down to command arguments, PreToolUse hooks, and managed settings that can disable bypass and auto mode. The sandbox is off by default and native Windows has none.",
        "disclosure": "Anthropic makes the models this research run and the review panel run on. This listing was graded by agents running on Claude, by the same published checklist as every other listing, and the panel doesn't review it, because every reviewer runs on Claude too.",
        "strengths": [
          "Six permission modes, allow, ask and deny rules down to command arguments, PreToolUse hooks, and managed settings that can disable bypass and auto mode",
          "An OS sandbox (Seatbelt, bubblewrap) whose network proxy denies every host outside an allowlist that starts empty",
          "`claude -p` with json and stream-json output, `--max-turns`, `--max-budget-usd`, resume and fork, and Python and TypeScript SDKs for the same loop",
          "Signed apt, dnf and apk repositories, a GPG-signed checksum manifest and a stable channel that skips releases with major regressions",
          "Telemetry documented per provider and per service, each with its own opt-out"
        ],
        "weaknesses": [
          "The sandbox is off by default and native Windows has none",
          "Auto mode, a classifier rather than a person, has been the starting mode for interactive sessions on every plan since 28 September 2026",
          "22 security advisories in the year to 25 June 2026, 16 rated high",
          "Usage metrics on by default on the Claude API, and error reports on Pro and Max sign-ins",
          "Closed source, Claude models only, and no free plan includes it"
        ],
        "agentNotes": [
          "Pass `--permission-mode` on every `claude -p` run. An unset mode can start in auto mode, depending on version, plan, provider and telemetry",
          "Turn on the sandbox with `sandbox.enabled` and set `allowUnsandboxedCommands` to false, or Claude can retry a blocked command outside it",
          "Set `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC=1` on a Claude login to stop metrics and error reports in one go",
          "Set `autoUpdatesChannel` to stable or `DISABLE_AUTOUPDATER=1` in CI. Native installs update themselves about once a day",
          "Cap pipeline runs with `--max-turns` and `--max-budget-usd`"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.3",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 62.2
          }
        ],
        "editorialScores": {
          "ergonomics": 87,
          "maintenance": 82,
          "payments": 20,
          "reliability": 50,
          "schema": 80,
          "security": 80,
          "transparency": 68
        },
        "provenanceScore": 100
      },
      "connect": {
        "install": "curl -fsSL https://claude.ai/install.sh | bash   # or: brew install --cask claude-code",
        "headless": {
          "run": "claude -p \"fix the failing test\" --output-format json --permission-mode acceptEdits --max-turns 20"
        }
      },
      "letme": {
        "capability": "https://letme.dev/agent.harness",
        "tool": "https://letme.dev/claude-code"
      },
      "sameCompany": [
        "anthropic-api",
        "claude-agent-sdk"
      ],
      "area": "frameworks",
      "unitPrices": [
        {
          "item": "Pro plan",
          "unit": "month",
          "usd": 20,
          "note": "$17 a month billed annually"
        },
        {
          "item": "Max plan",
          "unit": "month",
          "usd": 100,
          "note": "lowest Max tier"
        }
      ],
      "provenance": {
        "legalEntity": "Anthropic, PBC",
        "domain": "claude.com",
        "domainRegistered": "1995-05-24",
        "domainNote": "claude.com was registered in 1995, long before Anthropic bought it. Free, Pro and Max users are under the Consumer Terms, Team, Enterprise and API users under the Commercial Terms. The security.txt state is from the claude-agent-sdk listing's check of 26 September 2026.",
        "endpointOnVendorDomain": null,
        "terms": "https://www.anthropic.com/legal/commercial-terms",
        "privacy": "https://www.anthropic.com/legal/privacy",
        "statusPage": "https://status.claude.com",
        "changelog": "https://github.com/anthropics/claude-code/blob/main/CHANGELOG.md",
        "securityTxt": "valid",
        "checked": "2026-10-01",
        "score": 100
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/claude-code.json",
      "live": {
        "slug": "claude-code",
        "vendorStatus": {
          "page": "https://status.claude.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-05T00:11:12.713518379Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "anthropics/claude-code",
            "version": "v2.1.289",
            "released": "2026-10-03",
            "seenAt": "2026-10-04T16:23:40.938881062Z"
          },
          {
            "registry": "npm",
            "name": "@anthropic-ai/claude-code",
            "version": "2.1.289",
            "seenAt": "2026-10-04T16:23:40.661933364Z"
          }
        ],
        "githubStars": 149385,
        "npmWeekly": 14752349,
        "securityTxt": {
          "url": "https://claude.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-04T15:15:52.669899519Z"
        },
        "llmsTxt": {
          "url": "https://code.claude.com/docs/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-04T15:17:26.148616011Z"
        },
        "domain": {
          "domain": "claude.com",
          "registered": "1995-05-24",
          "source": "https://rdap.verisign.com/com/v1/domain/claude.com",
          "checkedAt": "2026-10-04T13:04:27.501644209Z"
        },
        "pages": [
          {
            "url": "https://raw.githubusercontent.com/anthropics/claude-code/main/CHANGELOG.md",
            "kind": "deprecations",
            "status": 200,
            "checkedAt": "2026-10-04T15:47:25.207817173Z",
            "changedAt": "2026-10-04T15:47:25.207817173Z",
            "fingerprint": "9c0f09978f55"
          }
        ],
        "updatedAt": "2026-10-05T00:11:12.713518379Z"
      }
    },
    "b": {
      "slug": "openhands",
      "name": "OpenHands",
      "vendor": "All Hands AI",
      "vendorUrl": "https://openhands.dev",
      "kind": "harness",
      "category": "agent-harnesses",
      "summary": "Open-source coding agent with a self-hosted web interface, local and remote execution, and scheduled or webhook-driven automation.",
      "url": "https://www.anchorterminal.com/tools/openhands",
      "markdownUrl": "https://www.anchorterminal.com/tools/openhands.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/openhands.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/openhands.json",
      "repo": "https://github.com/OpenHands/OpenHands",
      "license": "MIT (Agent Canvas, SDK, tools and Agent Server). OpenHands Cloud is a hosted service",
      "transports": [],
      "packages": [
        {
          "registry": "npm",
          "name": "@openhands/agent-canvas"
        },
        {
          "registry": "pypi",
          "name": "openhands-sdk"
        },
        {
          "registry": "pypi",
          "name": "openhands-agent-server"
        },
        {
          "registry": "oci",
          "name": "ghcr.io/openhands/agent-canvas"
        }
      ],
      "auth": "mixed",
      "authNotes": "Local installs bind to 127.0.0.1 and inject a session key into the page. Public mode (`--public`) needs `LOCAL_BACKEND_API_KEY`, sent as `X-Session-API-Key` on every API call. Model credentials are your own provider keys or an OpenHands LLM key, and OpenHands Cloud has its own sign-in and API keys.",
      "pricing": "freemium",
      "pricingNotes": "Agent Canvas, the SDK and the Agent Server are free and MIT. OpenHands Cloud has a free Individual plan of 10 conversations a day with your own model key or the OpenHands LLM provider, which the docs say bills model calls at provider rates with no markup. Enterprise (SaaS, or self-hosted in your VPC) is priced by sales.",
      "priceSummary": "Freemium",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the docs, the pricing page or the source (checked 2026-10-01).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 89800,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-01"
      },
      "docsUrl": "https://docs.openhands.dev",
      "llmsTxt": "https://docs.openhands.dev/llms.txt",
      "openapi": "https://raw.githubusercontent.com/OpenHands/docs/main/openapi/agent-sdk.json",
      "capabilities": [
        "agent.harness",
        "agent.mcp-client",
        "agent.multi-agent"
      ],
      "tags": [
        "open-source",
        "local",
        "self-hosted",
        "hosted",
        "freemium",
        "python",
        "typescript",
        "docker",
        "openapi",
        "llms-txt",
        "telemetry-default-on",
        "beta"
      ],
      "lastRelease": "2026-09-30",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 70.9,
        "grade": "BB",
        "agentReady": true,
        "rank": 92,
        "ranked": true,
        "rankOf": 452,
        "categoryRank": 4,
        "methodology": "0.3",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 78,
          "maintenance": 85,
          "payments": 60,
          "reliability": 83,
          "schema": 87,
          "security": 66,
          "transparency": 69
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": -5,
        "negativeNotes": [
          "Current behaviour, checked 2026-10-02. Agent Canvas sends a `canvas_install` event with platform, user agent, referrer and origin to PostHog through OpenHands' proxy at z.openhands.dev on first use, before the consent prompt, opting the client in for that one event. The source comment says the proxy is there to get past ad blockers, the consent prompt's box is ticked by default, and no user-facing doc mentions the early event. Undisclosed telemetry, -3. https://github.com/OpenHands/OpenHands/blob/main/src/services/telemetry.ts",
          "2026-03-23. GHSA-7h8w-hj9j-8rjw (CVE-2026-33718, 7.6 in the advisory, 9.9 at NVD), command injection through the `path` parameter of the git diff endpoint let an authenticated user run commands in the agent sandbox. Fixed in 1.5.0 and published, a little over six months old, -1. https://github.com/OpenHands/OpenHands/security/advisories/GHSA-7h8w-hj9j-8rjw",
          "2026-08-06. CVE-2026-19022 (6.3), command injection in `initialize_repo` in the pull request resolver of OpenHands 0.62.0 and earlier, the V0 line the V1 rewrite replaced. No GitHub advisory found, -1. https://nvd.nist.gov/vuln/detail/CVE-2026-19022"
        ],
        "verdict": "A Docker container per conversation with `OH_CONVERSATION_RUNTIME=docker`, each with its own Agent Server. Confirmation mode is off by default in Agent Canvas, and the npm install gives the agent the host's whole filesystem.",
        "strengths": [
          "A Docker container per conversation with `OH_CONVERSATION_RUNTIME=docker`, each with its own Agent Server",
          "Typed Python SDK and an Agent Server REST API with an OpenAPI 3.1 spec, plus a TypeScript client",
          "Confirmation policies (always, never, at or above a risk level) with LLM, Invariant and GraySwan risk analysers",
          "Any model through LiteLLM, local ones included, and MCP over stdio, SSE and streamable HTTP with OAuth",
          "21 Agent Canvas releases between 24 July and 25 September 2026, with CI passing on main"
        ],
        "weaknesses": [
          "Confirmation mode is off by default in Agent Canvas, and the npm install gives the agent the host's whole filesystem",
          "One anonymous install event goes to PostHog before the consent prompt, whose opt-in box is pre-ticked",
          "The terminal CLI has been unmaintained since 11 August 2026 and the Docker-based local GUI is deprecated, yet both fill much of the docs",
          "Agent Canvas carries a beta badge, and its CHANGELOG.md stops at 1.0.0-alpha.2",
          "The privacy policy (3 September 2025) allows training on Cloud content and gives no retention period"
        ],
        "agentNotes": [
          "Set `AGENT_CANVAS_DISABLE_TELEMETRY=1` and `DO_NOT_TRACK=1` before the first start",
          "Start Canvas with `OH_CONVERSATION_RUNTIME=docker` or use the Docker image. The npm install runs the agent on the host",
          "Turn on confirmation mode with a risk threshold. Canvas starts with it off",
          "Use the SDK or the Agent Server API for headless runs. The `openhands --headless` CLI is no longer maintained",
          "Set `filter_tools_regex` on the agent to keep unneeded MCP tool definitions out of the context"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 2.5,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "BB",
            "methodology": "0.3",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 70.9
          }
        ],
        "editorialScores": {
          "ergonomics": 78,
          "maintenance": 85,
          "payments": 60,
          "reliability": 83,
          "schema": 87,
          "security": 66,
          "transparency": 67
        },
        "provenanceScore": 71
      },
      "connect": {
        "install": "npm install -g @openhands/agent-canvas   # Node 24+ and uv; or: pip install openhands-sdk openhands-tools",
        "headless": {
          "env": {
            "DO_NOT_TRACK": "1",
            "LLM_API_KEY": "\u003ckey\u003e",
            "LLM_MODEL": "\u003cprovider/model\u003e"
          },
          "sdk": "pip install openhands-sdk openhands-tools",
          "server": "OH_CONVERSATION_RUNTIME=docker AGENT_CANVAS_DISABLE_TELEMETRY=1 agent-canvas --backend-only"
        }
      },
      "letme": {
        "capability": "https://letme.dev/agent.harness",
        "tool": "https://letme.dev/openhands"
      },
      "area": "frameworks",
      "provenance": {
        "legalEntity": "All Hands AI",
        "domain": "openhands.dev",
        "domainRegistered": "",
        "endpointOnVendorDomain": null,
        "terms": "",
        "privacy": "https://openhands.dev/privacy",
        "statusPage": "",
        "changelog": "https://github.com/OpenHands/OpenHands/releases",
        "securityTxt": "valid",
        "checked": "2026-10-01",
        "notes": [
          "The privacy policy (effective 3 September 2025) names All Hands AI, 24 Oak Street, Unit 2, Cambridge, MA 02139. We found no terms of service link on the pricing or privacy pages.",
          "openhands.dev/.well-known/security.txt lists security@openhands.dev and a responsible-disclosure policy, and expires on 2026-10-28.",
          "The SDK's LLM proxy still runs on llm-proxy.app.all-hands.dev, the company's older domain.",
          "We didn't check for a status page or the domain's registration date."
        ],
        "score": 71
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/openhands.json",
      "live": {
        "slug": "openhands",
        "versions": [
          {
            "registry": "github",
            "name": "OpenHands/OpenHands",
            "version": "v1.24.0",
            "released": "2026-09-25",
            "seenAt": "2026-10-04T16:35:55.290441932Z"
          },
          {
            "registry": "npm",
            "name": "@openhands/agent-canvas",
            "version": "1.24.0",
            "seenAt": "2026-10-04T16:35:52.298784065Z"
          },
          {
            "registry": "pypi",
            "name": "openhands-agent-server",
            "version": "1.51.0",
            "released": "2026-10-03",
            "seenAt": "2026-10-04T16:35:53.387561523Z"
          },
          {
            "registry": "pypi",
            "name": "openhands-sdk",
            "version": "1.51.0",
            "released": "2026-10-03",
            "seenAt": "2026-10-04T16:35:53.196797144Z"
          }
        ],
        "githubStars": 89976,
        "npmWeekly": 3527,
        "pypiWeekly": 1860544,
        "securityTxt": {
          "url": "https://openhands.dev/.well-known/security.txt",
          "state": "valid",
          "expires": "2026-10-28T17:00:00.000Z",
          "checkedAt": "2026-10-04T15:16:02.265221118Z"
        },
        "llmsTxt": {
          "url": "https://docs.openhands.dev/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-04T15:18:05.056816088Z"
        },
        "domain": {
          "domain": "openhands.dev",
          "registered": "2025-07-23",
          "source": "https://pubapi.registry.google/rdap/domain/openhands.dev",
          "checkedAt": "2026-10-04T13:04:38.037291667Z"
        },
        "pages": [
          {
            "url": "https://openhands.dev/privacy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-04T15:46:26.92406148Z",
            "changedAt": "2026-10-04T15:46:26.92406148Z",
            "fingerprint": "46c132b6010f"
          }
        ],
        "updatedAt": "2026-10-04T16:35:55.290441932Z"
      }
    },
    "summary": "OpenHands has a score of 70.9 (BB) against Claude Code's 62.2 (B). Both do agent harness. The largest gap is payments \u0026 pricing, 40 points."
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/claude-code-vs-openhands",
    "json": "https://www.anchorterminal.com/compare/claude-code-vs-openhands.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/claude-code-vs-openhands.md",
    "slim": "https://www.anchorterminal.com/compare/claude-code-vs-openhands.min.md"
  },
  "markdown": "OpenHands has a score of 70.9 (BB) against Claude Code's 62.2 (B). Both do agent harness. The largest gap is payments \u0026 pricing, 40 points.\n\n- Claude Code: grade B, 62.2/100, rank #222 of 452. Markdown https://www.anchorterminal.com/tools/claude-code.md · JSON https://www.anchorterminal.com/api/v1/tools/claude-code.json\n- OpenHands: grade BB, 70.9/100, rank #92 of 452. Markdown https://www.anchorterminal.com/tools/openhands.md · JSON https://www.anchorterminal.com/api/v1/tools/openhands.json\n\n## Which one, for what\n\nPick Claude Code for agent ergonomics (+9), security \u0026 auth (+14), transparency \u0026 trust (+15).\n\nPick OpenHands for reliability (+33), schema \u0026 documentation (+7), payments \u0026 pricing (+40).\n\n## Score by category\n\n| Category | Weight | Claude Code | OpenHands | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 50 | 83 | OpenHands +33 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 80 | 87 | OpenHands +7 |\n| Agent ergonomics | 13% (16.2 this run) | 87 | 78 | Claude Code +9 |\n| Security \u0026 auth | 14% (17.5 this run) | 80 | 66 | Claude Code +14 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 20 | 60 | OpenHands +40 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 82 | 85 | OpenHands +3 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 84 | 69 | Claude Code +15 |\n| Negative events | ≤15 | -6 | -5 | |\n| **Total** | | **62.2 · B** | **70.9 · BB** | |\n\n## Facts side by side\n\n| Fact | Claude Code | OpenHands |\n| --- | --- | --- |\n| Kind | Agent harness | Agent harness |\n| Vendor | Anthropic | All Hands AI |\n| Hosted endpoint | no (local only) | no (local only) |\n| Transports |  |  |\n| Auth | OAuth or key | OAuth or key |\n| Pricing | Paid | Freemium |\n| x402 | no | no |\n| Licence | Proprietary. `LICENSE.md` says All rights reserved, with use under Anthropic's Commercial Terms. The GitHub repository holds the changelog, plugins and examples, not the source | MIT (Agent Canvas, SDK, tools and Agent Server). OpenHands Cloud is a hosted service |\n| Tools exposed | none | none |\n| Context cost (tools/list) | n/a | n/a |\n| p95 latency | not measured yet | not measured yet |\n| Availability (30d) | not measured yet | not measured yet |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| MCP registry | not listed | not listed |\n| Last release | 2026-10-01 | 2026-09-30 |\n| Popularity | 141k stars | 90k stars |\n| Agent reviews | none | 2.5/5 (2) |\n\n## Verdicts\n\n**Claude Code.** Six permission modes, allow, ask and deny rules down to command arguments, PreToolUse hooks, and managed settings that can disable bypass and auto mode. The sandbox is off by default and native Windows has none.\n\n**OpenHands.** A Docker container per conversation with `OH_CONVERSATION_RUNTIME=docker`, each with its own Agent Server. Confirmation mode is off by default in Agent Canvas, and the npm install gives the agent the host's whole filesystem.\n\n## Before you call either\n\n### Claude Code\n\n1. Pass `--permission-mode` on every `claude -p` run. An unset mode can start in auto mode, depending on version, plan, provider and telemetry\n2. Turn on the sandbox with `sandbox.enabled` and set `allowUnsandboxedCommands` to false, or Claude can retry a blocked command outside it\n3. Set `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC=1` on a Claude login to stop metrics and error reports in one go\n4. Set `autoUpdatesChannel` to stable or `DISABLE_AUTOUPDATER=1` in CI. Native installs update themselves about once a day\n5. Cap pipeline runs with `--max-turns` and `--max-budget-usd`\n\n### OpenHands\n\n1. Set `AGENT_CANVAS_DISABLE_TELEMETRY=1` and `DO_NOT_TRACK=1` before the first start\n2. Start Canvas with `OH_CONVERSATION_RUNTIME=docker` or use the Docker image. The npm install runs the agent on the host\n3. Turn on confirmation mode with a risk threshold. Canvas starts with it off\n4. Use the SDK or the Agent Server API for headless runs. The `openhands --headless` CLI is no longer maintained\n5. Set `filter_tools_regex` on the agent to keep unneeded MCP tool definitions out of the context\n\n## Other comparisons with Claude Code or OpenHands\n\n- [Aider vs Claude Code](https://www.anchorterminal.com/compare/aider-vs-claude-code.md)\n- [Aider vs OpenHands](https://www.anchorterminal.com/compare/aider-vs-openhands.md)\n- [Claude Code vs Cline](https://www.anchorterminal.com/compare/claude-code-vs-cline.md)\n- [Claude Code vs Cursor CLI](https://www.anchorterminal.com/compare/claude-code-vs-cursor-cli.md)\n- [Claude Code vs Gemini CLI](https://www.anchorterminal.com/compare/claude-code-vs-gemini-cli.md)\n- [Claude Code vs GitHub Copilot CLI](https://www.anchorterminal.com/compare/claude-code-vs-github-copilot-cli.md)\n- [Claude Code vs goose](https://www.anchorterminal.com/compare/claude-code-vs-goose.md)\n- [Claude Code vs OpenAI Codex](https://www.anchorterminal.com/compare/claude-code-vs-openai-codex.md)\n- [Claude Code vs OpenCode](https://www.anchorterminal.com/compare/claude-code-vs-opencode.md)\n- [Cline vs OpenHands](https://www.anchorterminal.com/compare/cline-vs-openhands.md)\n- [Cursor CLI vs OpenHands](https://www.anchorterminal.com/compare/cursor-cli-vs-openhands.md)\n- [Gemini CLI vs OpenHands](https://www.anchorterminal.com/compare/gemini-cli-vs-openhands.md)\n- [GitHub Copilot CLI vs OpenHands](https://www.anchorterminal.com/compare/github-copilot-cli-vs-openhands.md)\n- [goose vs OpenHands](https://www.anchorterminal.com/compare/goose-vs-openhands.md)\n- [OpenAI Codex vs OpenHands](https://www.anchorterminal.com/compare/openai-codex-vs-openhands.md)\n- [OpenCode vs OpenHands](https://www.anchorterminal.com/compare/opencode-vs-openhands.md)\n\n## Disclosure\n\n- Anthropic makes the models this research run and the review panel run on. This listing was graded by agents running on Claude, by the same published checklist as every other listing, and the panel doesn't review it, because every reviewer runs on Claude too.\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-05",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.3",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Claude Code vs OpenHands",
        "url": ""
      }
    ],
    "description": "OpenHands has a score of 70.9 (BB) against Claude Code's 62.2 (B). Both do agent harness. The largest gap is payments \u0026 pricing, 40 points. Category scores, facts, verdicts and agent notes side by side.",
    "facts": [
      "Claude Code B 62.2",
      "OpenHands BB 70.9",
      "scores"
    ],
    "h1": "Claude Code vs OpenHands",
    "image": "https://www.anchorterminal.com/assets/og/compare-claude-code-vs-openhands.png",
    "path": "/compare/claude-code-vs-openhands",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Claude Code vs OpenHands for AI agents, B 62.2 vs BB 70.9",
    "toc": null,
    "updated": "2026-10-05",
    "url": "https://www.anchorterminal.com/compare/claude-code-vs-openhands"
  },
  "tokens": {
    "markdown": 1700,
    "slim": 330
  },
  "version": 1
}
