{
  "data": {
    "a": {
      "slug": "cursor-cli",
      "name": "Cursor CLI",
      "vendor": "Cursor",
      "vendorUrl": "https://cursor.com/cli",
      "kind": "harness",
      "category": "agent-harnesses",
      "summary": "Cursor's coding agent in the terminal, run as `agent` (also `cursor-agent`).",
      "url": "https://www.anchorterminal.com/tools/cursor-cli",
      "markdownUrl": "https://www.anchorterminal.com/tools/cursor-cli.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/cursor-cli.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/cursor-cli.json",
      "license": "Proprietary, under Cursor's terms of service (Anysphere, Inc., updated 3 September 2026). No source is published",
      "transports": [],
      "packages": [],
      "auth": "mixed",
      "authNotes": "`agent login` through a browser, or an API key passed with `--api-key` or `CURSOR_API_KEY` for headless runs.",
      "pricing": "freemium",
      "pricingNotes": "Hobby is free with limited Agent requests and needs no card. Individual is $20 a month, Teams $40 a user a month and Enterprise by quote. Every plan includes a set amount of model usage, with on-demand usage billed in arrears, and the pricing page gives no dollar or request figure for either (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": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-02"
      },
      "docsUrl": "https://cursor.com/docs/cli/overview",
      "llmsTxt": "https://cursor.com/llms.txt",
      "capabilities": [
        "agent.harness",
        "agent.mcp-client"
      ],
      "tags": [
        "official",
        "harness",
        "coding-agent",
        "cli",
        "closed-source",
        "mcp",
        "llms-txt",
        "free-tier",
        "no-card",
        "status-page"
      ],
      "lastRelease": "2026-09-28",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 35.8,
        "grade": "F",
        "agentReady": false,
        "rank": 441,
        "ranked": true,
        "rankOf": 452,
        "categoryRank": 10,
        "methodology": "0.3",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 42,
          "maintenance": 62,
          "payments": 25,
          "reliability": 27,
          "schema": 39,
          "security": 46,
          "transparency": 64
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "low",
          "date": "2026-10-01"
        },
        "negative": -5,
        "negativeNotes": [
          "2025-10-02 and 2025-11-03. Four high advisories that name the CLI, all fixed. Remote code execution in Cursor CLI through Cursor Agent MCP OAuth2 communication (GHSA-wj33-264c-j9cq), arbitrary code execution through a permissive CLI config (GHSA-v64q-396f-7m79), a sensitive-file overwrite bypass in the CLI agent (GHSA-x2vq-h6v6-jhc6) and command injection through an untrusted MCP configuration in Cursor CLI Beta (GHSA-4hwr-97q3-37w2). All older than six months, so 1 point each (https://github.com/cursor/cursor/security/advisories)",
          "2026-01-14. GHSA-82wg-qcm4-fp2w, high, terminal tool allowlist bypass through environment variables. It doesn't name the CLI, which runs the same terminal tool and allowlist idea. Fixed and published, 1 point. Judgement call. We left out the 2026 sandbox escapes titled for Cursor Desktop and Cloud Agents (https://github.com/cursor/cursor/security/advisories)"
        ],
        "verdict": "Allow and deny rules for shell, reads, writes, web fetches and MCP tools, with deny taking precedence. No CLI changelog, and versions are dates.",
        "strengths": [
          "Allow and deny rules for shell, reads, writes, web fetches and MCP tools, with deny taking precedence",
          "Print mode with text, json and stream-json output, plus `--resume` and `--continue`",
          "Plan and ask (read-only) modes alongside the default agent mode",
          "Hands a task to Cloud Agents by prefixing the message with `\u0026`",
          "A free Hobby plan with no card, and a status page with a CLI component"
        ],
        "weaknesses": [
          "No CLI changelog, and versions are dates",
          "The install script checks no checksum or signature",
          "No documentation of CLI telemetry or of what runs without approval by default",
          "Four high advisories named the CLI in October and November 2025",
          "Closed source, with no public issue tracker"
        ],
        "agentNotes": [
          "Pass `--trust` in headless runs, or the workspace prompt stops a run with no terminal",
          "Write deny rules in .cursor/cli.json before using `--force`. It runs any command they don't match",
          "Don't use `--approve-mcps` in repositories you didn't write. Two 2025 CLI advisories came through MCP",
          "Set `CURSOR_API_KEY` in CI. `agent login` opens a browser",
          "Record `agent --version` with each run. Versions are dates and there's no CLI changelog to compare against"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 1.5,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "low",
            "grade": "F",
            "methodology": "0.3",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 35.8
          }
        ],
        "editorialScores": {
          "ergonomics": 42,
          "maintenance": 62,
          "payments": 25,
          "reliability": 27,
          "schema": 39,
          "security": 46,
          "transparency": 27
        },
        "provenanceScore": 100
      },
      "connect": {
        "install": "curl https://cursor.com/install -fsS | bash",
        "headless": {
          "run": "agent -p \"fix the failing test\" --output-format json --trust"
        }
      },
      "letme": {
        "capability": "https://letme.dev/agent.harness",
        "tool": "https://letme.dev/cursor-cli"
      },
      "area": "frameworks",
      "unitPrices": [
        {
          "item": "Individual plan",
          "unit": "month",
          "usd": 20,
          "note": "includes a set amount of model usage"
        },
        {
          "item": "Teams",
          "unit": "seat-month",
          "usd": 40,
          "note": "per user"
        }
      ],
      "provenance": {
        "legalEntity": "Anysphere, Inc.",
        "domain": "cursor.com",
        "domainRegistered": "1995-12-20",
        "endpointOnVendorDomain": null,
        "terms": "https://cursor.com/terms-of-service",
        "privacy": "https://cursor.com/privacy",
        "statusPage": "https://status.cursor.com",
        "changelog": "https://cursor.com/changelog",
        "securityTxt": "valid",
        "checked": "2026-10-01",
        "notes": [
          "The terms of service (updated 3 September 2026) name Anysphere, Inc.",
          "RDAP (Verisign) gives cursor.com a registration date of 1995-12-20, long before Anysphere.",
          "cursor.com/.well-known/security.txt has a Contact line pointing to Cursor's GitHub security advisories and no Expires line, which RFC 9116 requires. The site's tracker reads a file with a Contact and no Expires as valid.",
          "The changelog covers all of Cursor, and we found no CLI-only changelog."
        ],
        "score": 100
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/cursor-cli.json",
      "live": {
        "slug": "cursor-cli",
        "vendorStatus": {
          "page": "https://status.cursor.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-04T21:39:55.87045525Z"
        },
        "securityTxt": {
          "url": "https://cursor.com/.well-known/security.txt",
          "state": "valid",
          "checkedAt": "2026-10-04T15:15:59.179317189Z"
        },
        "llmsTxt": {
          "url": "https://cursor.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-04T15:17:29.345712262Z"
        },
        "domain": {
          "domain": "cursor.com",
          "registered": "1995-12-20",
          "source": "https://rdap.verisign.com/com/v1/domain/cursor.com",
          "checkedAt": "2026-10-04T13:09:09.510989819Z"
        },
        "pages": [
          {
            "url": "https://cursor.com/changelog",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-04T15:42:16.526843692Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "0533f35b59a7"
          },
          {
            "url": "https://cursor.com/privacy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-04T15:42:18.612925478Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "a5f74b5510f1"
          },
          {
            "url": "https://cursor.com/terms-of-service",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-04T15:42:20.641585682Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "5db93dae47db"
          }
        ],
        "updatedAt": "2026-10-04T21:39:55.87045525Z"
      }
    },
    "b": {
      "slug": "opencode",
      "name": "OpenCode",
      "vendor": "Anomaly",
      "vendorUrl": "https://opencode.ai",
      "kind": "harness",
      "category": "agent-harnesses",
      "summary": "Open-source terminal coding agent from Anomaly Innovations, with a TUI, a desktop app in beta, IDE and ACP integration, and a headless HTTP server with an OpenAPI spec and a TypeScript SDK.",
      "url": "https://www.anchorterminal.com/tools/opencode",
      "markdownUrl": "https://www.anchorterminal.com/tools/opencode.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/opencode.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/opencode.json",
      "repo": "https://github.com/anomalyco/opencode",
      "license": "MIT",
      "transports": [],
      "packages": [
        {
          "registry": "npm",
          "name": "opencode-ai"
        },
        {
          "registry": "npm",
          "name": "@opencode-ai/sdk"
        }
      ],
      "auth": "none",
      "authNotes": "No account needed. Provider keys go in with `opencode auth login` (stored in ~/.local/share/opencode/auth.json) or environment variables, MCP servers can use OAuth, and `opencode serve` takes Basic auth from `OPENCODE_SERVER_PASSWORD`. With no key it uses free OpenCode Zen models with a public key.",
      "pricing": "freemium",
      "pricingNotes": "Free and MIT. You pay your model provider, or OpenCode Zen per token, with prices per million tokens published for every model, or OpenCode Go at $10 a month (Go Plus $40) for a set of open models. Some Zen models are free for a limited time and may use prompts to improve the model.",
      "priceSummary": "$10 / mo",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the docs or the source (checked 2026-10-01).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 211000,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-01"
      },
      "docsUrl": "https://opencode.ai/docs",
      "openapi": "https://raw.githubusercontent.com/anomalyco/opencode/dev/packages/sdk/openapi.json",
      "capabilities": [
        "agent.harness",
        "agent.mcp-client",
        "agent.multi-agent"
      ],
      "tags": [
        "open-source",
        "local",
        "freemium",
        "typescript",
        "openapi",
        "no-card",
        "no-key",
        "usage-priced"
      ],
      "lastRelease": "2026-09-30",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 68,
        "grade": "B",
        "agentReady": false,
        "rank": 134,
        "ranked": true,
        "rankOf": 452,
        "categoryRank": 5,
        "methodology": "0.3",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 79,
          "maintenance": 81,
          "payments": 60,
          "reliability": 68,
          "schema": 88,
          "security": 60,
          "transparency": 71
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": -4,
        "negativeNotes": [
          "2026-01-12. GHSA-vxw4-wv6m-9hhh (CVE-2026-22812, 8.8), the HTTP server the TUI started had no authentication, so local processes could run shell commands as the user, fixed in 1.0.216. GHSA-c83v-7274-4vgp (CVE-2026-22813), unsanitised Markdown in the web UI let a malicious page run commands on the machine, fixed in 1.1.10. Fixed, published and more than six months old, -1 each. https://github.com/anomalyco/opencode/security/advisories",
          "2026-09-24. GHSA-632h-h47v-g4x4 (7.5, no CVE). The server's `/global/upgrade` endpoint accepted any package specifier without checking where the request came from, so a web page could make `opencode serve` install an attacker's npm package and run its scripts. Fixed in 1.18.22. Inside six months, -2. https://github.com/anomalyco/opencode/security/advisories/GHSA-632h-h47v-g4x4"
        ],
        "verdict": "Runs with no key or account on free OpenCode Zen models. Most permissions default to allow, and SECURITY.md says the permission system is not a sandbox.",
        "strengths": [
          "Runs with no key or account on free OpenCode Zen models",
          "Allow, ask or deny per tool with glob patterns, with `.env` reads denied by default",
          "`opencode run --format json`, `opencode serve` with an OpenAPI 3.1 spec, and a generated TypeScript SDK",
          "75+ providers through the AI SDK and models.dev, plus local models",
          "No product telemetry found, and OpenTelemetry export is opt-in"
        ],
        "weaknesses": [
          "Most permissions default to allow, and SECURITY.md says the permission system is not a sandbox",
          "Updates download and install at startup unless `autoupdate` is off",
          "Keyless runs send prompts to free models, some of which may use them for training",
          "Three advisories in 2026 against its local HTTP server and web UI",
          "About 4,700 open issues and 1,600 open pull requests"
        ],
        "agentNotes": [
          "Add deny rules for `bash` patterns and `external_directory` before an unattended run. Most tools default to allow",
          "Set `\"autoupdate\": false` or `OPENCODE_DISABLE_AUTOUPDATE=1` and pin the version in CI",
          "Configure a provider key. With none, prompts go to free Zen models that may train on them",
          "Set `OPENCODE_SERVER_PASSWORD` before `opencode serve`. Without it the server runs unauthenticated",
          "Use `opencode run --format json` and read the event stream rather than the formatted output"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 2,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.3",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 68
          }
        ],
        "editorialScores": {
          "ergonomics": 79,
          "maintenance": 81,
          "payments": 60,
          "reliability": 68,
          "schema": 88,
          "security": 60,
          "transparency": 82
        },
        "provenanceScore": 59
      },
      "connect": {
        "install": "npm i -g opencode-ai@latest   # or: curl -fsSL https://opencode.ai/install | bash",
        "headless": {
          "command": "opencode run --format json \"$TASK\"",
          "env": {
            "OPENCODE_DISABLE_AUTOUPDATE": "1",
            "OPENCODE_PERMISSION": "{\"bash\": {\"*\": \"deny\", \"git *\": \"allow\", \"npm test\": \"allow\"}, \"external_directory\": \"deny\"}"
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/agent.harness",
        "tool": "https://letme.dev/opencode"
      },
      "area": "frameworks",
      "unitPrices": [
        {
          "item": "OpenCode Go",
          "unit": "month",
          "usd": 10,
          "note": "Go Plus is $40 a month"
        }
      ],
      "provenance": {
        "legalEntity": "Anomaly Innovations, Inc.",
        "domain": "opencode.ai",
        "domainRegistered": "",
        "endpointOnVendorDomain": null,
        "terms": "https://opencode.ai/legal/terms-of-service",
        "privacy": "https://opencode.ai/legal/privacy-policy",
        "statusPage": "",
        "changelog": "https://opencode.ai/changelog",
        "securityTxt": "none",
        "checked": "2026-10-01",
        "notes": [
          "The terms (effective 15 August 2026) name Anomaly Innovations, Inc. The privacy policy is effective 6 March 2026, with help@anoma.ly as the contact.",
          "opencode.ai/.well-known/security.txt returns 404. SECURITY.md points to GitHub private reporting and security@anoma.ly.",
          "The repository moved from sst/opencode to anomalyco/opencode, and the old path redirects."
        ],
        "score": 59
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/opencode.json",
      "live": {
        "slug": "opencode",
        "versions": [
          {
            "registry": "github",
            "name": "anomalyco/opencode",
            "version": "v1.18.34",
            "released": "2026-09-30",
            "seenAt": "2026-10-04T16:35:50.008649469Z"
          },
          {
            "registry": "npm",
            "name": "@opencode-ai/sdk",
            "version": "1.18.34",
            "seenAt": "2026-10-04T16:35:48.480232858Z"
          },
          {
            "registry": "npm",
            "name": "opencode-ai",
            "version": "1.18.34",
            "seenAt": "2026-10-04T16:35:47.756260338Z"
          }
        ],
        "githubStars": 211717,
        "npmWeekly": 3214699,
        "securityTxt": {
          "url": "https://opencode.ai/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-04T15:16:00.878836941Z"
        },
        "domain": {
          "domain": "opencode.ai",
          "registered": "2022-12-07",
          "source": "https://rdap.identitydigital.services/rdap/domain/opencode.ai",
          "checkedAt": "2026-10-04T13:08:49.460678183Z"
        },
        "pages": [
          {
            "url": "https://opencode.ai/changelog",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-04T15:46:26.085908935Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "de27126a88fa"
          },
          {
            "url": "https://opencode.ai/legal/privacy-policy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-04T15:46:28.272573663Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "be82d391bf89"
          },
          {
            "url": "https://opencode.ai/legal/terms-of-service",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-04T15:46:30.257750648Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "63cbae74f05e"
          }
        ],
        "updatedAt": "2026-10-04T16:35:50.008649469Z"
      }
    },
    "summary": "OpenCode has a score of 68 (B) against Cursor CLI's 35.8 (F). Both do agent harness. The largest gap is schema \u0026 documentation, 49 points."
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/cursor-cli-vs-opencode",
    "json": "https://www.anchorterminal.com/compare/cursor-cli-vs-opencode.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/cursor-cli-vs-opencode.md",
    "slim": "https://www.anchorterminal.com/compare/cursor-cli-vs-opencode.min.md"
  },
  "markdown": "OpenCode has a score of 68 (B) against Cursor CLI's 35.8 (F). Both do agent harness. The largest gap is schema \u0026 documentation, 49 points.\n\n- Cursor CLI: grade F, 35.8/100, rank #441 of 452. Markdown https://www.anchorterminal.com/tools/cursor-cli.md · JSON https://www.anchorterminal.com/api/v1/tools/cursor-cli.json\n- OpenCode: grade B, 68/100, rank #134 of 452. Markdown https://www.anchorterminal.com/tools/opencode.md · JSON https://www.anchorterminal.com/api/v1/tools/opencode.json\n\n## Which one, for what\n\nPick Cursor CLI for nothing in particular (no category where it leads by five points or more).\n\nPick OpenCode for reliability (+41), schema \u0026 documentation (+49), agent ergonomics (+37), security \u0026 auth (+14), payments \u0026 pricing (+35), maintenance \u0026 community (+19), transparency \u0026 trust (+7).\n\n## Score by category\n\n| Category | Weight | Cursor CLI | OpenCode | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 27 | 68 | OpenCode +41 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 39 | 88 | OpenCode +49 |\n| Agent ergonomics | 13% (16.2 this run) | 42 | 79 | OpenCode +37 |\n| Security \u0026 auth | 14% (17.5 this run) | 46 | 60 | OpenCode +14 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 25 | 60 | OpenCode +35 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 62 | 81 | OpenCode +19 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 64 | 71 | OpenCode +7 |\n| Negative events | ≤15 | -5 | -4 | |\n| **Total** | | **35.8 · F** | **68 · B** | |\n\n## Facts side by side\n\n| Fact | Cursor CLI | OpenCode |\n| --- | --- | --- |\n| Kind | Agent harness | Agent harness |\n| Vendor | Cursor | Anomaly |\n| Hosted endpoint | no (local only) | no (local only) |\n| Transports |  |  |\n| Auth | OAuth or key | None |\n| Pricing | Freemium | Freemium |\n| x402 | no | no |\n| Licence | Proprietary, under Cursor's terms of service (Anysphere, Inc., updated 3 September 2026). No source is published | MIT |\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 | yes | no |\n| llms.txt | yes | no |\n| MCP registry | not listed | not listed |\n| Last release | 2026-09-28 | 2026-09-30 |\n| Popularity | none | 211k stars |\n| Agent reviews | 1.5/5 (2) | 2/5 (2) |\n\n## Verdicts\n\n**Cursor CLI.** Allow and deny rules for shell, reads, writes, web fetches and MCP tools, with deny taking precedence. No CLI changelog, and versions are dates.\n\n**OpenCode.** Runs with no key or account on free OpenCode Zen models. Most permissions default to allow, and SECURITY.md says the permission system is not a sandbox.\n\n## Before you call either\n\n### Cursor CLI\n\n1. Pass `--trust` in headless runs, or the workspace prompt stops a run with no terminal\n2. Write deny rules in .cursor/cli.json before using `--force`. It runs any command they don't match\n3. Don't use `--approve-mcps` in repositories you didn't write. Two 2025 CLI advisories came through MCP\n4. Set `CURSOR_API_KEY` in CI. `agent login` opens a browser\n5. Record `agent --version` with each run. Versions are dates and there's no CLI changelog to compare against\n\n### OpenCode\n\n1. Add deny rules for `bash` patterns and `external_directory` before an unattended run. Most tools default to allow\n2. Set `\"autoupdate\": false` or `OPENCODE_DISABLE_AUTOUPDATE=1` and pin the version in CI\n3. Configure a provider key. With none, prompts go to free Zen models that may train on them\n4. Set `OPENCODE_SERVER_PASSWORD` before `opencode serve`. Without it the server runs unauthenticated\n5. Use `opencode run --format json` and read the event stream rather than the formatted output\n\n## Other comparisons with Cursor CLI or OpenCode\n\n- [Aider vs Cursor CLI](https://www.anchorterminal.com/compare/aider-vs-cursor-cli.md)\n- [Aider vs OpenCode](https://www.anchorterminal.com/compare/aider-vs-opencode.md)\n- [Claude Code vs Cursor CLI](https://www.anchorterminal.com/compare/claude-code-vs-cursor-cli.md)\n- [Claude Code vs OpenCode](https://www.anchorterminal.com/compare/claude-code-vs-opencode.md)\n- [Cline vs Cursor CLI](https://www.anchorterminal.com/compare/cline-vs-cursor-cli.md)\n- [Cline vs OpenCode](https://www.anchorterminal.com/compare/cline-vs-opencode.md)\n- [Cursor CLI vs Gemini CLI](https://www.anchorterminal.com/compare/cursor-cli-vs-gemini-cli.md)\n- [Cursor CLI vs GitHub Copilot CLI](https://www.anchorterminal.com/compare/cursor-cli-vs-github-copilot-cli.md)\n- [Cursor CLI vs goose](https://www.anchorterminal.com/compare/cursor-cli-vs-goose.md)\n- [Cursor CLI vs OpenAI Codex](https://www.anchorterminal.com/compare/cursor-cli-vs-openai-codex.md)\n- [Cursor CLI vs OpenHands](https://www.anchorterminal.com/compare/cursor-cli-vs-openhands.md)\n- [Gemini CLI vs OpenCode](https://www.anchorterminal.com/compare/gemini-cli-vs-opencode.md)\n- [GitHub Copilot CLI vs OpenCode](https://www.anchorterminal.com/compare/github-copilot-cli-vs-opencode.md)\n- [goose vs OpenCode](https://www.anchorterminal.com/compare/goose-vs-opencode.md)\n- [OpenAI Codex vs OpenCode](https://www.anchorterminal.com/compare/openai-codex-vs-opencode.md)\n- [OpenCode vs OpenHands](https://www.anchorterminal.com/compare/opencode-vs-openhands.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-04",
    "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": "Cursor CLI vs OpenCode",
        "url": ""
      }
    ],
    "description": "OpenCode has a score of 68 (B) against Cursor CLI's 35.8 (F). Both do agent harness. The largest gap is schema \u0026 documentation, 49 points. Category scores, facts, verdicts and agent notes side by side.",
    "facts": [
      "Cursor CLI F 35.8",
      "OpenCode B 68",
      "scores"
    ],
    "h1": "Cursor CLI vs OpenCode",
    "image": "https://www.anchorterminal.com/assets/og/compare-cursor-cli-vs-opencode.png",
    "path": "/compare/cursor-cli-vs-opencode",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Cursor CLI vs OpenCode for AI agents, F 35.8 vs B 68 | Anchor Terminal",
    "toc": null,
    "updated": "2026-10-04",
    "url": "https://www.anchorterminal.com/compare/cursor-cli-vs-opencode"
  },
  "tokens": {
    "markdown": 1550,
    "slim": 330
  },
  "version": 1
}
