{
  "data": {
    "a": {
      "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, desktop app, IDE and ACP integration, and a headless HTTP server with an OpenAPI spec. Version 2, released in October 2026, is an opt-in upgrade.",
      "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",
      "dns": "opencode.grade.anchorterminal.com",
      "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/v1/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-10-28",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 68.8,
        "grade": "B",
        "agentReady": false,
        "rank": 269,
        "ranked": true,
        "rankOf": 1486,
        "categoryRank": 6,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 79,
          "maintenance": 81,
          "payments": 60,
          "reliability": 72,
          "schema": 88,
          "security": 60,
          "transparency": 71
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-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.",
        "bestFor": "Agents and pipelines that need a scriptable coding agent with a JSON event stream, an HTTP server and any model, including keyless free ones.",
        "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 server and web UI, and CVE-2026-88624 against worktree removal, still in 1.19.5's code",
          "OpenCode 2 changes the server API and plugin API, and allows paths outside the project by default"
        ],
        "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",
          "Install `opencode-ai` for the 1.x server API and SDK. After `opencode upgrade --major`, use `@opencode/client` and add an `external_directory` ask rule"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 2,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 68.8
          }
        ],
        "editorialScores": {
          "ergonomics": 79,
          "maintenance": 81,
          "payments": 60,
          "reliability": 72,
          "schema": 88,
          "security": 60,
          "transparency": 82
        },
        "provenanceScore": 59,
        "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",
          "lastMoved": "2026-10-27",
          "oldest": "2026-11-01",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "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-11-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 (re-read on 1 November 2026). 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.19.5",
            "released": "2026-10-28",
            "seenAt": "2026-11-06T23:52:32.774708991Z"
          },
          {
            "registry": "npm",
            "name": "@opencode-ai/sdk",
            "version": "1.19.5",
            "seenAt": "2026-11-06T23:52:31.226852116Z"
          },
          {
            "registry": "npm",
            "name": "opencode-ai",
            "version": "1.19.5",
            "seenAt": "2026-11-06T23:52:30.533289746Z"
          }
        ],
        "githubStars": 225059,
        "npmWeekly": 3842204,
        "securityTxt": {
          "url": "https://opencode.ai/.well-known/security.txt",
          "state": "valid",
          "expires": "2027-11-04T00:00:00.000Z",
          "checkedAt": "2026-11-07T16:01:30.537474438Z"
        },
        "domain": {
          "domain": "opencode.ai",
          "registered": "2022-12-07",
          "source": "https://rdap.identitydigital.services/rdap/domain/opencode.ai",
          "checkedAt": "2026-11-01T14:19:08.319256497Z"
        },
        "pages": [
          {
            "url": "https://opencode.ai/changelog",
            "kind": "deprecations",
            "status": 200,
            "checkedAt": "2026-11-07T14:15:26.452035905Z",
            "changedAt": "2026-11-07T14:15:26.452035905Z",
            "fingerprint": "758525400119"
          },
          {
            "url": "https://anoma.ly/notes/opencode-2-0/",
            "kind": "deprecations",
            "status": 304,
            "checkedAt": "2026-11-07T13:59:07.267844193Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "c759f58f9191"
          },
          {
            "url": "https://opencode.ai/legal/privacy-policy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-11-07T14:15:28.907171341Z",
            "changedAt": "2026-11-07T14:15:28.907171341Z",
            "fingerprint": "22cbdace4da6"
          },
          {
            "url": "https://opencode.ai/legal/terms-of-service",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-11-07T14:15:31.324995952Z",
            "changedAt": "2026-11-07T14:15:31.324995952Z",
            "fingerprint": "a1ddc3f12be9"
          }
        ],
        "github": {
          "repo": "anomalyco/opencode",
          "checkedAt": "2026-11-02T08:30:39.073309468Z",
          "stars": 223939,
          "archived": false,
          "issuesEnabled": true,
          "pushedAt": "2026-11-02T06:25:10Z",
          "openIssues": 2336,
          "openPRs": 1425,
          "issuesOpened90d": 10155,
          "issuesClosed90d": 11578,
          "prsMerged90d": 4754,
          "ci": {
            "branch": "dev",
            "runs": 50,
            "success": 48,
            "failure": 0,
            "other": 2,
            "latest": "success",
            "latestAt": "2026-11-02T06:25:21Z"
          },
          "advisories": [
            {
              "ghsa": "GHSA-632h-h47v-g4x4",
              "severity": "high",
              "published": "2026-09-24T13:36:45Z"
            },
            {
              "ghsa": "GHSA-c83v-7274-4vgp",
              "cve": "CVE-2026-22813",
              "severity": "critical",
              "published": "2026-01-12T21:32:40Z"
            },
            {
              "ghsa": "GHSA-vxw4-wv6m-9hhh",
              "cve": "CVE-2026-22812",
              "severity": "high",
              "published": "2026-01-12T19:43:04Z"
            }
          ]
        },
        "updatedAt": "2026-11-07T16:01:30.537474438Z"
      }
    },
    "answer": "OpenCode scores 68.8 (B) on agent readiness against Verdent's 39.7 (E), and leads in every scored category.",
    "b": {
      "slug": "verdent",
      "name": "Verdent",
      "vendor": "Verdent AI, Inc.",
      "vendorUrl": "https://www.verdent.ai",
      "kind": "harness",
      "category": "agent-harnesses",
      "summary": "Verdent is a coding agent from Verdent AI, Inc., with a desktop app for macOS and Windows, VS Code and JetBrains extensions and a browser edition. It plans tasks, runs parallel workers in git worktrees and uses MCP servers.",
      "url": "https://www.anchorterminal.com/tools/verdent",
      "markdownUrl": "https://www.anchorterminal.com/tools/verdent.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/verdent.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/verdent.json",
      "dns": "verdent.grade.anchorterminal.com",
      "license": "Proprietary. The terms of use from Verdent AI, Inc. forbid reverse engineering or copying any component, and no source is published",
      "transports": [],
      "packages": [],
      "auth": "mixed",
      "authNotes": "A person signs in to a Verdent account with Google, GitHub or email in a browser. Model use runs on Verdent credits through llm-proxy.verdent.ai, or on the user's own Anthropic, OpenAI or OpenRouter key (BYOK). BYOA runs workers on a local Claude Code or Codex CLI with keys kept on the machine. No API key or token for driving Verdent from another program was found.",
      "pricing": "paid",
      "pricingNotes": "From $5 a month (Lite), then $19 Starter, $59 Pro and $179 Max with 320, 1,000 and 3,000 credits a month (doubled by a limited-time bonus). One credit is about $0.059 at provider rates. Top-ups $20 for 340 credits to $200 for 3,400. Free Mode and the free trial ended with v2.18.0 on 29 October 2026.",
      "priceSummary": "$5 / mo",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the docs, pricing page, terms or changelog (checked 2026-11-06). Subscriptions and top-ups go through Stripe.",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-11-06"
      },
      "docsUrl": "https://www.verdent.ai/docs/verdent-manager/getting-started/overview",
      "capabilities": [
        "agent.harness",
        "agent.multi-agent",
        "agent.mcp-client"
      ],
      "tags": [
        "official",
        "harness",
        "coding-agent",
        "closed-source",
        "desktop",
        "vscode",
        "jetbrains",
        "mcp",
        "byok",
        "paid-plans",
        "no-sandbox"
      ],
      "lastRelease": "2026-10-29",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 39.7,
        "grade": "E",
        "agentReady": false,
        "rank": 1317,
        "ranked": true,
        "rankOf": 1486,
        "categoryRank": 53,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 35,
          "maintenance": 61,
          "payments": 20,
          "reliability": 43,
          "schema": 55,
          "security": 33,
          "transparency": 55
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-06"
        },
        "negative": -2,
        "negativeNotes": [
          "2026-11-06. The changelog says v2.18.0 of 29 October 2026 retired Free Mode, the free trial and the 100 welcome credits, while the pricing page FAQ read on 6 November still says \"Your free trial includes 100 credits\" and the 1.0 docs overview still lists a free trial. A stale claim on the vendor's own pricing page, 2 points. https://www.verdent.ai/pricing, https://www.verdent.ai/changelog"
        ],
        "verdict": "A desktop and editor coding agent that splits a goal into parallel workers in git worktrees, with a read-only Plan Mode, MCP servers and the option to run workers on Claude Code or Codex. It has no CLI, API or sandbox, sends context through Verdent's servers, and has had no free tier since 29 October 2026.",
        "bestFor": "A person who wants a desktop app to plan and run several coding tasks at once, possibly on their own Claude Code or Codex.",
        "strengths": [
          "Plan Mode is read-only and writes a plan.md for review before Agent Mode makes changes",
          "Parallel workers each run in their own git worktree, with a review column before work is accepted",
          "BYOA runs workers on a local Claude Code or Codex CLI, and BYOK takes Anthropic, OpenAI or OpenRouter keys",
          "Plan, top-up and per-credit prices are public, charged at provider token rates with no markup per the pricing page",
          "Every current docs page has a Markdown twin, and the changelog is dated by version"
        ],
        "weaknesses": [
          "No CLI, print mode, API or SDK, so a pipeline can't start or read a run except through a paired chat bot",
          "No sandbox or network restriction documented, and the actions that need approval aren't listed",
          "Free Mode and the free trial ended on 29 October 2026, while the pricing page FAQ still promises 100 trial credits",
          "Event logging to log.verdent.ai has no documented opt-out, and the privacy policy gives no retention periods",
          "SOC 2 and ISO/IEC 42001 are being pursued, not held, and there is no bug bounty or security.txt"
        ],
        "agentNotes": [
          "Don't plan to drive Verdent headless. Hand the task to the person using the desktop app, or use a harness with a print mode",
          "Start large changes in Plan Mode and review plan.md before switching to Agent Mode",
          "Add MCP servers in the project's .mcp.json or ~/.verdent/mcp.json in the mcpServers shape",
          "Keep work under git, since rollback relies on git and there is no sandbox",
          "Budget in credits at about $0.059 each, because there is no free allowance since 29 October 2026"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "E",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 39.7
          }
        ],
        "editorialScores": {
          "ergonomics": 35,
          "maintenance": 61,
          "payments": 20,
          "reliability": 43,
          "schema": 55,
          "security": 33,
          "transparency": 47
        },
        "provenanceScore": 62,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-06",
            "maintenance": "2026-11-06",
            "payments": "2026-11-06",
            "reliability": "2026-11-06",
            "schema": "2026-11-06",
            "security": "2026-11-06",
            "transparency": "2026-11-06"
          },
          "last": "2026-11-06",
          "oldest": "2026-11-06",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "config": {
          "mcpServers": {
            "github": {
              "args": [
                "-y",
                "@modelcontextprotocol/server-github"
              ],
              "command": "npx",
              "env": {
                "GITHUB_PERSONAL_ACCESS_TOKEN": "${GITHUB_TOKEN}"
              }
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/agent.harness",
        "tool": "https://letme.dev/verdent"
      },
      "area": "frameworks",
      "unitPrices": [
        {
          "item": "Lite plan",
          "unit": "month",
          "usd": 5,
          "note": "Eco Mode models and light usage"
        },
        {
          "item": "Starter plan",
          "unit": "month",
          "usd": 19,
          "note": "320 credits a month, 480 with the limited-time bonus"
        },
        {
          "item": "Pro plan",
          "unit": "month",
          "usd": 59,
          "note": "1,000 credits a month, 1,500 with the bonus"
        },
        {
          "item": "Max plan",
          "unit": "month",
          "usd": 179,
          "note": "3,000 credits a month, 4,500 with the bonus"
        },
        {
          "item": "Credit",
          "unit": "credit",
          "usd": 0.059,
          "note": "About $0.059, charged at provider token prices with no markup per the pricing page"
        }
      ],
      "provenance": {
        "legalEntity": "Verdent AI, Inc.",
        "domain": "verdent.ai",
        "domainRegistered": "2025-05-06",
        "endpointOnVendorDomain": true,
        "terms": "https://www.verdent.ai/terms",
        "privacy": "https://www.verdent.ai/privacy",
        "statusPage": "",
        "changelog": "https://www.verdent.ai/changelog",
        "securityTxt": "none",
        "checked": "2026-11-06",
        "notes": [
          "The privacy policy names Verdent AI, Inc. as data controller, and the terms choose California law.",
          "The terms forbid users to crawl, scrape or otherwise harvest data or information from the Services. Public pages were read once each.",
          "www.verdent.ai/robots.txt allows all crawlers.",
          "RDAP gives verdent.ai a registration date of 6 May 2025.",
          "/.well-known/security.txt returns 404, and status.verdent.ai did not answer. No status page found.",
          "The security page says SOC 2 and ISO/IEC 42001 are being pursued, not held, and takes vulnerability reports at hi@verdent.ai with acknowledgement within five business days."
        ],
        "score": 62
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/verdent.json",
      "live": {
        "slug": "verdent",
        "securityTxt": {
          "url": "https://verdent.ai/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-07T15:59:33.272105482Z"
        },
        "pages": [
          {
            "url": "https://www.verdent.ai/changelog",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-11-07T14:36:28.662063151Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "bac05e4e426e"
          },
          {
            "url": "https://www.verdent.ai/privacy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-11-07T14:36:31.354667853Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "3ec1d3c07d70"
          },
          {
            "url": "https://www.verdent.ai/terms",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-11-07T14:36:33.295376926Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "206b6ec23a6a"
          }
        ],
        "updatedAt": "2026-11-07T15:59:33.272105482Z"
      }
    },
    "edges": [
      {
        "by": 44,
        "category": "ergonomics",
        "leads": "opencode",
        "name": "Agent ergonomics",
        "reasons": {
          "a": "Harness reading of the framework line, scored on what an agent or pipeline driving it has to supply. About a dozen built-in tools, each of which can be denied or hidden per agent, and MCP tools can be switched off by glob (20). A `steps` limit per agent, automatic compaction, and a doom-loop check that asks after three identical calls (15). `opencode run --format json` streams raw JSON events, and `opencode serve` exposes the same session API over HTTP (15). Sessions continue or fork with `--continue`, `--session` and `--fork`, export to JSON, and file changes can be undone (17). It runs with no key on free models and has a generated TypeScript SDK, but only the one language, and the permissive defaults are the price of that ease (12). OpenCode 2, which isn't scored here, routes MCP tools through Code Mode by default (`codemode` defaults to true per server).",
          "b": "Harness reading. MCP servers per project or globally, subagents, skills and rules, but no per-tool disabling or deferred loading found (10). No output-size, turn-limit or budget controls for a run were found beyond credit balances (5). No exit codes or error format, since there is no headless mode (3). Parallel workers in git worktrees and a review column make runs reviewable and reversible, with no resume by ID documented (10). No CLI, API or SDK. A pipeline can only reach Manager through a paired Telegram, Slack or Feishu bot (7). 10+5+3+10+7 = 35."
        },
        "scores": {
          "a": 79,
          "b": 35
        }
      },
      {
        "by": 40,
        "category": "payments",
        "leads": "opencode",
        "name": "Payments \u0026 pricing",
        "reasons": {
          "a": "No payment protocol (0). Scored on OpenCode Zen and Go. Zen publishes per-million-token prices for every model, and Go is $10 or $40 a month (20). The MIT package and the free Zen models need no card (20). With no key configured it loads the free Zen models with a public key, so an agent can install it and run a task with no signup at all (20).",
          "b": "Harness reading of the published rubric, scored on the Verdent subscription the agent needs. No payment protocol (0). Plan prices from $5 a month, top-up prices and the credit value of about $0.059 are public without a login (20). Free Mode and the free trial ended on 29 October 2026, so there is no free tier (0). A person signs up in a browser (0). 0+20+0+0 = 20."
        },
        "scores": {
          "a": 60,
          "b": 20
        }
      },
      {
        "by": 33,
        "category": "schema",
        "leads": "opencode",
        "name": "Schema \u0026 documentation",
        "reasons": {
          "a": "A JSON Schema for the config file at opencode.ai/config.json, and an OpenAPI 3.1 spec for the 1.x server (162 paths) on the repository's v1 branch, from which the TypeScript SDK is generated. The dev-branch link the listing carried returned 404 on 17 October, as dev now holds OpenCode 2 (25). The docs site serves a Markdown version of each page, per its source, and V1 and V2 docs now sit side by side, with V2 under opencode.ai/v2/docs (10). Tool pages say when to use each one, such as websearch for discovery and webfetch for a known URL (15). Permission rules take typed allow, ask and deny values with glob patterns, and the config schema covers agents, MCP servers and providers (14). Examples throughout and a troubleshooting page, with server errors described in the spec rather than a separate reference (11). A dated changelog at opencode.ai/changelog and GitHub releases (13).",
          "b": "Framework reading for a harness. No schema for settings or output, only mcp.json examples in the standard mcpServers shape (5). Every current docs page has a Markdown twin at the same path with .md, though no llms.txt (10). The docs say when to use Agent Mode or Plan Mode and what Plan Mode can't do, but the Agent Mode page lists the actions that need approval only as \"certain tool executions\" and \"destructive operations\" (12). Modes and BYOA agent types are enumerated, permissions are not (5). Examples on the MCP, BYOA and messaging pages, and a recovery page, with no error codes (8). Version numbers and a dated public changelog (15). The archived 1.0 docs are still served beside the current ones. 5+10+12+5+8+15 = 55."
        },
        "scores": {
          "a": 88,
          "b": 55
        }
      },
      {
        "by": 29,
        "category": "reliability",
        "leads": "opencode",
        "name": "Reliability",
        "reasons": {
          "a": "Read as a local package, graded on the 1.x line that `npm i -g opencode-ai` and the opencode.ai/install script put on a machine. `opencode-ai` 1.19.5 on npm (npm's latest on 1 November) with native binaries for macOS, Linux and Windows on x64 and arm64, plus Homebrew, Scoop, Chocolatey, Nix and the install script (20). A test workflow runs on the repository. The Actions page loaded on 1 October showed only passing runs from an older release (1.3.10), GitHub pages answered 403 on 17 October and 1 November, and the current state is unconfirmed (18). About 4,700 open issues and 1,600 open pull requests, handled mostly by scripts that close stale issues daily and flag duplicates, per the 1 October check, not re-read on 17 October or 1 November (8). Releases come almost daily with notes on GitHub and a changelog page. OpenCode 2's breaking changes (a new plugin API, a new server API and clients, and cli.json in place of tui.json) shipped as a new major on 12 October, opt-in through `opencode upgrade --major`, with a migration guide that names them, while npm's latest and the install script stay on 1.x. The 1.19.4 and 1.19.5 commits change no SDK code and mark no breaking change, but the 1.x release notes weren't read for a breaking-change section (11). 1.19, stable (15).",
          "b": "Local-package reading, as for the other closed-source harnesses. The desktop app installs from verdent.ai with macOS 11 or later and 64-bit Windows 10 and 11 stated, and the extension from the editor marketplaces, but not from a package registry (15). No public CI or test suite, since the source isn't published (0). No public issue tracker, every task runs through Verdent's servers, and no status page was found, so there is no readable record (5). A dated changelog by version, with the end of Free Mode called out in v2.18.0, but no breaking-change sections (8). 2.18.0, generally available (15). 15+0+5+8+15 = 43."
        },
        "scores": {
          "a": 72,
          "b": 43
        }
      },
      {
        "by": 27,
        "category": "security",
        "leads": "opencode",
        "name": "Security \u0026 auth",
        "reasons": {
          "a": "Harness reading of the framework checklist, used for all five harnesses in this batch. 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 found in the source or docs, and OpenTelemetry export is opt-in through `experimental.openTelemetry`. It fetches the model list from models.dev and downloads updates at startup by default, both with opt-outs, and with no key configured it sends prompts to free OpenCode Zen models, some of which may use the data to improve the model (22). Allow, ask or deny per tool with glob patterns, `.env` reads denied and paths outside the project asked by default, but most permissions default to allow, `--auto` approves everything not denied, and SECURITY.md says the permission system is not a sandbox (9). SECURITY.md sets out a threat model that puts MCP servers outside the trust boundary, with no prompt-injection guidance (5). Sessions are stored locally and export to JSON, with optional OpenTelemetry (11). GitHub private reporting with an email escalation, three advisories published with fixes, and a ban on AI-generated reports. No security.txt (13). CVE-2026-88624 (published 22 September, CVSS 9.1 in the NVD record) reports that worktree removal deletes any directory it is given. In 1.19.5, as in 1.19.3, `Worktree.remove` still deletes an existing path that isn't a registered worktree. The call needs access to the server API, which SECURITY.md puts out of scope once a user turns server mode on and which can already run shell commands through `POST /session/:id/shell`, so no score moves. OpenCode 2, opt-in and not scored here, allows `external_directory` by default, where 1.x asks.",
          "b": "Framework reading (telemetry defaults, approvals, guardrails, sandboxing). Conversation history and tool results go to Verdent's US servers and on to Azure, Bedrock or Vertex, with zero data retention stated for Vertex and Bedrock only. Event logging to log.verdent.ai has no documented opt-out. BYOA keys stay on the machine (10). Plan Mode is read-only, Agent Mode asks before destructive commands and edits outside scope, and workers are isolated by git worktree, but there is no sandbox or network control and the approval list isn't enumerated (9). No prompt-injection guidance found, while web search and fetch results enter the context (2). Usage history in the dashboard, no audit log found (5). A security page with a disclosure address and a five-day acknowledgement, SOC 2 and ISO/IEC 42001 being pursued rather than held, no security.txt and no bug bounty (7). 10+9+2+5+7 = 33."
        },
        "scores": {
          "a": 60,
          "b": 33
        }
      },
      {
        "by": 20,
        "category": "maintenance",
        "leads": "opencode",
        "name": "Maintenance \u0026 community",
        "reasons": {
          "a": "1.19.5 on npm on 2026-10-28, 4 days before the check, and v2.2.5 tagged on 30 October (30). 30 releases on the 1.x line (1.18.12 to 1.19.5) in the 90 days to 1 November, plus 44 v2 tags (20). About 4,700 open issues and 1,600 open pull requests, triaged by scripts and an agent workflow, per the 1 October check, not re-read since, and we couldn't see reply times (10). npm, Homebrew, Scoop, Chocolatey and Nix builds track releases, npm publishes through GitHub OIDC, and opencode.ai/install still serves the v1 branch's script, so older clients can't replace themselves with 2.x by accident (14). Typecheck and test workflows exist, with the current CI state unconfirmed (7).",
          "b": "Closed service. v2.18.0 on 29 October 2026, eight days before this check (30). More than three dated releases in the 90 days from 8 August, among them 2.10.0 to 2.18.0 (20). A dated public changelog, a support address, Discord and a subreddit, with no public tracker to read reply times (8). No official SDK or MCP server to keep current (0). No public packages or CI to judge (3). 30+20+8+0+3 = 61."
        },
        "scores": {
          "a": 81,
          "b": 61
        }
      }
    ],
    "facts": [
      {
        "a": "Agent harness",
        "b": "Agent harness",
        "name": "Kind"
      },
      {
        "a": "Anomaly",
        "b": "Verdent AI, Inc.",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "",
        "b": "",
        "name": "Transports"
      },
      {
        "a": "None",
        "b": "OAuth or key",
        "name": "Auth"
      },
      {
        "a": "Freemium",
        "b": "Paid",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "MIT",
        "b": "Proprietary. The terms of use from Verdent AI, Inc. forbid reverse engineering or copying any component, and no source is published",
        "name": "Licence"
      },
      {
        "a": "no",
        "b": "yes",
        "name": "Read-only variant documented"
      },
      {
        "a": "no",
        "b": "no",
        "name": "llms.txt"
      },
      {
        "a": "2026-10-28",
        "b": "2026-10-29",
        "name": "Last release"
      },
      {
        "a": "2026-08-15",
        "b": "2026-05-25",
        "name": "Terms last updated"
      },
      {
        "a": "2026-03-06",
        "b": "2026-05-26",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Customer content may train models"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "Terms restrict automated access"
      },
      {
        "a": "yes",
        "b": "not found in the text",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "yes",
        "b": "not found in the text",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "211k stars",
        "b": "none",
        "name": "Popularity"
      },
      {
        "a": "2/5 (2)",
        "b": "none",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "OpenCode scores 68.8 (B) on agent readiness against Verdent's 39.7 (E), and leads in every scored category.",
        "question": "Which is better for AI agents, OpenCode or Verdent?"
      },
      {
        "answer": "OpenCode is open source (MIT). No open-source release is listed for Verdent.",
        "question": "Are OpenCode and Verdent open source?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 72 against 43",
          "Schema \u0026 documentation, 88 against 55",
          "Agent ergonomics, 79 against 35",
          "Security \u0026 auth, 60 against 33",
          "Payments \u0026 pricing, 60 against 20",
          "Maintenance \u0026 community, 81 against 61",
          "Transparency \u0026 trust, 71 against 55"
        ],
        "also": [
          "No key needed to call it",
          "Free to start without a card",
          "Open source"
        ],
        "goodFor": "Agents and pipelines that need a scriptable coding agent with a JSON event stream, an HTTP server and any model, including keyless free ones.",
        "slug": "opencode",
        "watchFor": "Most permissions default to allow, and SECURITY.md says the permission system is not a sandbox"
      },
      {
        "aheadOn": null,
        "also": null,
        "goodFor": "A person who wants a desktop app to plan and run several coding tasks at once, possibly on their own Claude Code or Codex.",
        "slug": "verdent",
        "watchFor": "No CLI, print mode, API or SDK, so a pipeline can't start or read a run except through a paired chat bot"
      }
    ],
    "history": {
      "opencode": [
        {
          "causes": [
            "method"
          ],
          "date": "2026-10-27",
          "delta": 0.3,
          "from": 68.5,
          "fromGrade": "B",
          "to": 68.8,
          "toGrade": "B"
        },
        {
          "causes": [
            "product"
          ],
          "date": "2026-10-17",
          "delta": 0.8,
          "from": 67.7,
          "fromGrade": "B",
          "to": 68.5,
          "toGrade": "B"
        },
        {
          "causes": [
            "method"
          ],
          "date": "2026-10-08",
          "delta": -0.3,
          "from": 68,
          "fromGrade": "B",
          "to": 67.7,
          "toGrade": "B"
        }
      ],
      "verdent": null
    },
    "job": {
      "capability": "agent.harness",
      "name": "Agent harnesses"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/agent-zero-vs-opencode.json",
        "title": "Agent Zero vs OpenCode",
        "url": "https://www.anchorterminal.com/compare/agent-zero-vs-opencode"
      },
      {
        "json": "https://www.anchorterminal.com/compare/agent-zero-vs-verdent.json",
        "title": "Agent Zero vs Verdent",
        "url": "https://www.anchorterminal.com/compare/agent-zero-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/aider-vs-opencode.json",
        "title": "Aider vs OpenCode",
        "url": "https://www.anchorterminal.com/compare/aider-vs-opencode"
      },
      {
        "json": "https://www.anchorterminal.com/compare/aider-vs-verdent.json",
        "title": "Aider vs Verdent",
        "url": "https://www.anchorterminal.com/compare/aider-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amp-vs-opencode.json",
        "title": "Amp vs OpenCode",
        "url": "https://www.anchorterminal.com/compare/amp-vs-opencode"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amp-vs-verdent.json",
        "title": "Amp vs Verdent",
        "url": "https://www.anchorterminal.com/compare/amp-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/antigravity-cli-vs-opencode.json",
        "title": "Antigravity CLI vs OpenCode",
        "url": "https://www.anchorterminal.com/compare/antigravity-cli-vs-opencode"
      },
      {
        "json": "https://www.anchorterminal.com/compare/antigravity-cli-vs-verdent.json",
        "title": "Antigravity CLI vs Verdent",
        "url": "https://www.anchorterminal.com/compare/antigravity-cli-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/auggie-vs-opencode.json",
        "title": "Auggie CLI vs OpenCode",
        "url": "https://www.anchorterminal.com/compare/auggie-vs-opencode"
      },
      {
        "json": "https://www.anchorterminal.com/compare/auggie-vs-verdent.json",
        "title": "Auggie CLI vs Verdent",
        "url": "https://www.anchorterminal.com/compare/auggie-vs-verdent"
      },
      {
        "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-verdent.json",
        "title": "AXLR vs Verdent",
        "url": "https://www.anchorterminal.com/compare/axlr-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/claude-code-vs-opencode.json",
        "title": "Claude Code vs OpenCode",
        "url": "https://www.anchorterminal.com/compare/claude-code-vs-opencode"
      },
      {
        "json": "https://www.anchorterminal.com/compare/claude-code-vs-verdent.json",
        "title": "Claude Code vs Verdent",
        "url": "https://www.anchorterminal.com/compare/claude-code-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cline-vs-opencode.json",
        "title": "Cline vs OpenCode",
        "url": "https://www.anchorterminal.com/compare/cline-vs-opencode"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cline-vs-verdent.json",
        "title": "Cline vs Verdent",
        "url": "https://www.anchorterminal.com/compare/cline-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/conductor-vs-opencode.json",
        "title": "Conductor vs OpenCode",
        "url": "https://www.anchorterminal.com/compare/conductor-vs-opencode"
      },
      {
        "json": "https://www.anchorterminal.com/compare/conductor-vs-verdent.json",
        "title": "Conductor vs Verdent",
        "url": "https://www.anchorterminal.com/compare/conductor-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/crush-vs-opencode.json",
        "title": "Crush vs OpenCode",
        "url": "https://www.anchorterminal.com/compare/crush-vs-opencode"
      },
      {
        "json": "https://www.anchorterminal.com/compare/crush-vs-verdent.json",
        "title": "Crush vs Verdent",
        "url": "https://www.anchorterminal.com/compare/crush-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cursor-cli-vs-opencode.json",
        "title": "Cursor CLI vs OpenCode",
        "url": "https://www.anchorterminal.com/compare/cursor-cli-vs-opencode"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cursor-cli-vs-verdent.json",
        "title": "Cursor CLI vs Verdent",
        "url": "https://www.anchorterminal.com/compare/cursor-cli-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deepseek-harness-vs-opencode.json",
        "title": "DeepSeek Harness (dsh) vs OpenCode",
        "url": "https://www.anchorterminal.com/compare/deepseek-harness-vs-opencode"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deepseek-harness-vs-verdent.json",
        "title": "DeepSeek Harness (dsh) vs Verdent",
        "url": "https://www.anchorterminal.com/compare/deepseek-harness-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deepseek-superagent-vs-opencode.json",
        "title": "dsh-superagent (DeepSeek) vs OpenCode",
        "url": "https://www.anchorterminal.com/compare/deepseek-superagent-vs-opencode"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deepseek-superagent-vs-verdent.json",
        "title": "dsh-superagent (DeepSeek) vs Verdent",
        "url": "https://www.anchorterminal.com/compare/deepseek-superagent-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/devin-vs-opencode.json",
        "title": "Devin vs OpenCode",
        "url": "https://www.anchorterminal.com/compare/devin-vs-opencode"
      },
      {
        "json": "https://www.anchorterminal.com/compare/devin-vs-verdent.json",
        "title": "Devin vs Verdent",
        "url": "https://www.anchorterminal.com/compare/devin-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/droid-cli-vs-opencode.json",
        "title": "Droid CLI vs OpenCode",
        "url": "https://www.anchorterminal.com/compare/droid-cli-vs-opencode"
      },
      {
        "json": "https://www.anchorterminal.com/compare/droid-cli-vs-verdent.json",
        "title": "Droid CLI vs Verdent",
        "url": "https://www.anchorterminal.com/compare/droid-cli-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/earendil-pi-vs-opencode.json",
        "title": "Pi vs OpenCode",
        "url": "https://www.anchorterminal.com/compare/earendil-pi-vs-opencode"
      },
      {
        "json": "https://www.anchorterminal.com/compare/earendil-pi-vs-verdent.json",
        "title": "Pi vs Verdent",
        "url": "https://www.anchorterminal.com/compare/earendil-pi-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/emdash-vs-opencode.json",
        "title": "Emdash vs OpenCode",
        "url": "https://www.anchorterminal.com/compare/emdash-vs-opencode"
      },
      {
        "json": "https://www.anchorterminal.com/compare/emdash-vs-verdent.json",
        "title": "Emdash vs Verdent",
        "url": "https://www.anchorterminal.com/compare/emdash-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gemini-cli-vs-opencode.json",
        "title": "Gemini CLI vs OpenCode",
        "url": "https://www.anchorterminal.com/compare/gemini-cli-vs-opencode"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gemini-cli-vs-verdent.json",
        "title": "Gemini CLI vs Verdent",
        "url": "https://www.anchorterminal.com/compare/gemini-cli-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/github-copilot-cli-vs-opencode.json",
        "title": "GitHub Copilot CLI vs OpenCode",
        "url": "https://www.anchorterminal.com/compare/github-copilot-cli-vs-opencode"
      },
      {
        "json": "https://www.anchorterminal.com/compare/github-copilot-cli-vs-verdent.json",
        "title": "GitHub Copilot CLI vs Verdent",
        "url": "https://www.anchorterminal.com/compare/github-copilot-cli-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/goose-vs-opencode.json",
        "title": "goose vs OpenCode",
        "url": "https://www.anchorterminal.com/compare/goose-vs-opencode"
      },
      {
        "json": "https://www.anchorterminal.com/compare/goose-vs-verdent.json",
        "title": "goose vs Verdent",
        "url": "https://www.anchorterminal.com/compare/goose-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/harness2-vs-opencode.json",
        "title": "Harness² vs OpenCode",
        "url": "https://www.anchorterminal.com/compare/harness2-vs-opencode"
      },
      {
        "json": "https://www.anchorterminal.com/compare/harness2-vs-verdent.json",
        "title": "Harness² vs Verdent",
        "url": "https://www.anchorterminal.com/compare/harness2-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/harnessrouter-vs-opencode.json",
        "title": "HarnessRouter vs OpenCode",
        "url": "https://www.anchorterminal.com/compare/harnessrouter-vs-opencode"
      },
      {
        "json": "https://www.anchorterminal.com/compare/harnessrouter-vs-verdent.json",
        "title": "HarnessRouter vs Verdent",
        "url": "https://www.anchorterminal.com/compare/harnessrouter-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/jules-vs-opencode.json",
        "title": "Jules vs OpenCode",
        "url": "https://www.anchorterminal.com/compare/jules-vs-opencode"
      },
      {
        "json": "https://www.anchorterminal.com/compare/jules-vs-verdent.json",
        "title": "Jules vs Verdent",
        "url": "https://www.anchorterminal.com/compare/jules-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/junie-vs-opencode.json",
        "title": "Junie CLI vs OpenCode",
        "url": "https://www.anchorterminal.com/compare/junie-vs-opencode"
      },
      {
        "json": "https://www.anchorterminal.com/compare/junie-vs-verdent.json",
        "title": "Junie CLI vs Verdent",
        "url": "https://www.anchorterminal.com/compare/junie-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kilo-code-cli-vs-opencode.json",
        "title": "Kilo Code CLI vs OpenCode",
        "url": "https://www.anchorterminal.com/compare/kilo-code-cli-vs-opencode"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kilo-code-cli-vs-verdent.json",
        "title": "Kilo Code CLI vs Verdent",
        "url": "https://www.anchorterminal.com/compare/kilo-code-cli-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kimi-code-cli-vs-opencode.json",
        "title": "Kimi Code CLI vs OpenCode",
        "url": "https://www.anchorterminal.com/compare/kimi-code-cli-vs-opencode"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kimi-code-cli-vs-verdent.json",
        "title": "Kimi Code CLI vs Verdent",
        "url": "https://www.anchorterminal.com/compare/kimi-code-cli-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kiro-cli-vs-opencode.json",
        "title": "Kiro CLI vs OpenCode",
        "url": "https://www.anchorterminal.com/compare/kiro-cli-vs-opencode"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kiro-cli-vs-verdent.json",
        "title": "Kiro CLI vs Verdent",
        "url": "https://www.anchorterminal.com/compare/kiro-cli-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/letta-vs-opencode.json",
        "title": "Letta vs OpenCode",
        "url": "https://www.anchorterminal.com/compare/letta-vs-opencode"
      },
      {
        "json": "https://www.anchorterminal.com/compare/letta-vs-verdent.json",
        "title": "Letta vs Verdent",
        "url": "https://www.anchorterminal.com/compare/letta-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mini-swe-agent-vs-opencode.json",
        "title": "mini-swe-agent vs OpenCode",
        "url": "https://www.anchorterminal.com/compare/mini-swe-agent-vs-opencode"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mini-swe-agent-vs-verdent.json",
        "title": "mini-swe-agent vs Verdent",
        "url": "https://www.anchorterminal.com/compare/mini-swe-agent-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/minimax-code-vs-opencode.json",
        "title": "MiniMax Code vs OpenCode",
        "url": "https://www.anchorterminal.com/compare/minimax-code-vs-opencode"
      },
      {
        "json": "https://www.anchorterminal.com/compare/minimax-code-vs-verdent.json",
        "title": "MiniMax Code vs Verdent",
        "url": "https://www.anchorterminal.com/compare/minimax-code-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mistral-vibe-cli-vs-opencode.json",
        "title": "Mistral Vibe CLI vs OpenCode",
        "url": "https://www.anchorterminal.com/compare/mistral-vibe-cli-vs-opencode"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mistral-vibe-cli-vs-verdent.json",
        "title": "Mistral Vibe CLI vs Verdent",
        "url": "https://www.anchorterminal.com/compare/mistral-vibe-cli-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/muse-code-vs-opencode.json",
        "title": "Muse Code vs OpenCode",
        "url": "https://www.anchorterminal.com/compare/muse-code-vs-opencode"
      },
      {
        "json": "https://www.anchorterminal.com/compare/muse-code-vs-verdent.json",
        "title": "Muse Code vs Verdent",
        "url": "https://www.anchorterminal.com/compare/muse-code-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/openai-agents-api-vs-opencode.json",
        "title": "OpenAI Agents API vs OpenCode",
        "url": "https://www.anchorterminal.com/compare/openai-agents-api-vs-opencode"
      },
      {
        "json": "https://www.anchorterminal.com/compare/openai-agents-api-vs-verdent.json",
        "title": "OpenAI Agents API vs Verdent",
        "url": "https://www.anchorterminal.com/compare/openai-agents-api-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/openai-codex-vs-opencode.json",
        "title": "OpenAI Codex vs OpenCode",
        "url": "https://www.anchorterminal.com/compare/openai-codex-vs-opencode"
      },
      {
        "json": "https://www.anchorterminal.com/compare/openai-codex-vs-verdent.json",
        "title": "OpenAI Codex vs Verdent",
        "url": "https://www.anchorterminal.com/compare/openai-codex-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/opencode-vs-openhands.json",
        "title": "OpenCode vs OpenHands",
        "url": "https://www.anchorterminal.com/compare/opencode-vs-openhands"
      },
      {
        "json": "https://www.anchorterminal.com/compare/opencode-vs-openmausbot.json",
        "title": "OpenCode vs OpenMausBot",
        "url": "https://www.anchorterminal.com/compare/opencode-vs-openmausbot"
      },
      {
        "json": "https://www.anchorterminal.com/compare/opencode-vs-orca.json",
        "title": "OpenCode vs Orca",
        "url": "https://www.anchorterminal.com/compare/opencode-vs-orca"
      },
      {
        "json": "https://www.anchorterminal.com/compare/opencode-vs-paseo.json",
        "title": "OpenCode vs Paseo",
        "url": "https://www.anchorterminal.com/compare/opencode-vs-paseo"
      },
      {
        "json": "https://www.anchorterminal.com/compare/opencode-vs-prime-agent.json",
        "title": "OpenCode vs Prime Agent",
        "url": "https://www.anchorterminal.com/compare/opencode-vs-prime-agent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/opencode-vs-qoder-cli.json",
        "title": "OpenCode vs Qoder CLI",
        "url": "https://www.anchorterminal.com/compare/opencode-vs-qoder-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/opencode-vs-qwen-code.json",
        "title": "OpenCode vs Qwen Code",
        "url": "https://www.anchorterminal.com/compare/opencode-vs-qwen-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/opencode-vs-reflection-mirror.json",
        "title": "OpenCode vs Mirror CLI",
        "url": "https://www.anchorterminal.com/compare/opencode-vs-reflection-mirror"
      },
      {
        "json": "https://www.anchorterminal.com/compare/opencode-vs-rovo-dev-cli.json",
        "title": "OpenCode vs Rovo Dev CLI",
        "url": "https://www.anchorterminal.com/compare/opencode-vs-rovo-dev-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/opencode-vs-sculptor.json",
        "title": "OpenCode vs Sculptor",
        "url": "https://www.anchorterminal.com/compare/opencode-vs-sculptor"
      },
      {
        "json": "https://www.anchorterminal.com/compare/opencode-vs-t3-code.json",
        "title": "OpenCode vs T3 Code",
        "url": "https://www.anchorterminal.com/compare/opencode-vs-t3-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/opencode-vs-traycer.json",
        "title": "OpenCode vs Traycer",
        "url": "https://www.anchorterminal.com/compare/opencode-vs-traycer"
      },
      {
        "json": "https://www.anchorterminal.com/compare/opencode-vs-unstoppable.json",
        "title": "OpenCode vs Unstoppable",
        "url": "https://www.anchorterminal.com/compare/opencode-vs-unstoppable"
      },
      {
        "json": "https://www.anchorterminal.com/compare/opencode-vs-vibe-trading.json",
        "title": "OpenCode vs Vibe-Trading",
        "url": "https://www.anchorterminal.com/compare/opencode-vs-vibe-trading"
      },
      {
        "json": "https://www.anchorterminal.com/compare/opencode-vs-warp.json",
        "title": "OpenCode vs Warp (Warp Agent CLI and the Oz Agent API)",
        "url": "https://www.anchorterminal.com/compare/opencode-vs-warp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/openhands-vs-verdent.json",
        "title": "OpenHands vs Verdent",
        "url": "https://www.anchorterminal.com/compare/openhands-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/orca-vs-verdent.json",
        "title": "Orca vs Verdent",
        "url": "https://www.anchorterminal.com/compare/orca-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/paseo-vs-verdent.json",
        "title": "Paseo vs Verdent",
        "url": "https://www.anchorterminal.com/compare/paseo-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/prime-agent-vs-verdent.json",
        "title": "Prime Agent vs Verdent",
        "url": "https://www.anchorterminal.com/compare/prime-agent-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/qoder-cli-vs-verdent.json",
        "title": "Qoder CLI vs Verdent",
        "url": "https://www.anchorterminal.com/compare/qoder-cli-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/qwen-code-vs-verdent.json",
        "title": "Qwen Code vs Verdent",
        "url": "https://www.anchorterminal.com/compare/qwen-code-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/reflection-mirror-vs-verdent.json",
        "title": "Mirror CLI vs Verdent",
        "url": "https://www.anchorterminal.com/compare/reflection-mirror-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/rovo-dev-cli-vs-verdent.json",
        "title": "Rovo Dev CLI vs Verdent",
        "url": "https://www.anchorterminal.com/compare/rovo-dev-cli-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/sculptor-vs-verdent.json",
        "title": "Sculptor vs Verdent",
        "url": "https://www.anchorterminal.com/compare/sculptor-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/t3-code-vs-verdent.json",
        "title": "T3 Code vs Verdent",
        "url": "https://www.anchorterminal.com/compare/t3-code-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/traycer-vs-verdent.json",
        "title": "Traycer vs Verdent",
        "url": "https://www.anchorterminal.com/compare/traycer-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/verdent-vs-vibe-trading.json",
        "title": "Verdent vs Vibe-Trading",
        "url": "https://www.anchorterminal.com/compare/verdent-vs-vibe-trading"
      },
      {
        "json": "https://www.anchorterminal.com/compare/verdent-vs-warp.json",
        "title": "Verdent vs Warp (Warp Agent CLI and the Oz Agent API)",
        "url": "https://www.anchorterminal.com/compare/verdent-vs-warp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/clawboo-vs-opencode.json",
        "title": "Clawboo vs OpenCode",
        "url": "https://www.anchorterminal.com/compare/clawboo-vs-opencode"
      },
      {
        "json": "https://www.anchorterminal.com/compare/clawboo-vs-verdent.json",
        "title": "Clawboo vs Verdent",
        "url": "https://www.anchorterminal.com/compare/clawboo-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cli-manager-vs-opencode.json",
        "title": "CLI Manager vs OpenCode",
        "url": "https://www.anchorterminal.com/compare/cli-manager-vs-opencode"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cli-manager-vs-verdent.json",
        "title": "CLI Manager vs Verdent",
        "url": "https://www.anchorterminal.com/compare/cli-manager-vs-verdent"
      },
      {
        "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-verdent.json",
        "title": "Harness vs Verdent",
        "url": "https://www.anchorterminal.com/compare/harness-autonomous-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/opencode-vs-paperclip.json",
        "title": "OpenCode vs Paperclip",
        "url": "https://www.anchorterminal.com/compare/opencode-vs-paperclip"
      },
      {
        "json": "https://www.anchorterminal.com/compare/opencode-vs-parallax-agents.json",
        "title": "OpenCode vs Parallax",
        "url": "https://www.anchorterminal.com/compare/opencode-vs-parallax-agents"
      },
      {
        "json": "https://www.anchorterminal.com/compare/openmausbot-vs-verdent.json",
        "title": "OpenMausBot vs Verdent",
        "url": "https://www.anchorterminal.com/compare/openmausbot-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/paperclip-vs-verdent.json",
        "title": "Paperclip vs Verdent",
        "url": "https://www.anchorterminal.com/compare/paperclip-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/parallax-agents-vs-verdent.json",
        "title": "Parallax vs Verdent",
        "url": "https://www.anchorterminal.com/compare/parallax-agents-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/unstoppable-vs-verdent.json",
        "title": "Unstoppable vs Verdent",
        "url": "https://www.anchorterminal.com/compare/unstoppable-vs-verdent"
      }
    ],
    "panel": null,
    "scores": [
      {
        "by": 29,
        "edge": "opencode",
        "key": "reliability",
        "name": "Reliability",
        "opencode": 72,
        "verdent": 43,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 33,
        "edge": "opencode",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "opencode": 88,
        "verdent": 55,
        "weight": 13
      },
      {
        "by": 44,
        "edge": "opencode",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "opencode": 79,
        "verdent": 35,
        "weight": 13
      },
      {
        "by": 27,
        "edge": "opencode",
        "key": "security",
        "name": "Security \u0026 auth",
        "opencode": 60,
        "verdent": 33,
        "weight": 14
      },
      {
        "by": 40,
        "edge": "opencode",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "opencode": 60,
        "verdent": 20,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 20,
        "edge": "opencode",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "opencode": 81,
        "verdent": 61,
        "weight": 7
      },
      {
        "by": 16,
        "edge": "opencode",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "opencode": 71,
        "verdent": 55,
        "weight": 7
      }
    ],
    "summary": "OpenCode scores 68.8 (B) on agent readiness against Verdent's 39.7 (E), and leads in every scored category. Both do agent harnesses.",
    "tasks": null,
    "tutorials": [],
    "verdicts": {
      "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.",
      "verdent": "A desktop and editor coding agent that splits a goal into parallel workers in git worktrees, with a read-only Plan Mode, MCP servers and the option to run workers on Claude Code or Codex. It has no CLI, API or sandbox, sends context through Verdent's servers, and has had no free tier since 29 October 2026."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/opencode-vs-verdent",
    "json": "https://www.anchorterminal.com/compare/opencode-vs-verdent.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/opencode-vs-verdent.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/opencode-vs-verdent.min.md"
  },
  "markdown": "OpenCode scores 68.8 (B) on agent readiness against Verdent's 39.7 (E), and leads in every scored category. Both do agent harnesses.\n\n- OpenCode: grade B, 68.8/100, rank #269 of 1486. Markdown https://www.anchorterminal.com/tools/opencode.md · JSON https://www.anchorterminal.com/api/v1/tools/opencode.json\n- Verdent: grade E, 39.7/100, rank #1317 of 1486. Markdown https://www.anchorterminal.com/tools/verdent.md · JSON https://www.anchorterminal.com/api/v1/tools/verdent.json\n- Best agent harnesses and coding agents: https://www.anchorterminal.com/best/agent-harnesses/index.md\n- All 1500 harnesses comparisons: https://www.anchorterminal.com/compare/agent-harnesses/index.md\n\n## Which one, for what\n\n### OpenCode (B)\n\nGood for: Agents and pipelines that need a scriptable coding agent with a JSON event stream, an HTTP server and any model, including keyless free ones.\n\nAhead on:\n- Reliability, 72 against 43\n- Schema \u0026 documentation, 88 against 55\n- Agent ergonomics, 79 against 35\n- Security \u0026 auth, 60 against 33\n- Payments \u0026 pricing, 60 against 20\n- Maintenance \u0026 community, 81 against 61\n- Transparency \u0026 trust, 71 against 55\n\nAlso in its favour:\n- No key needed to call it\n- Free to start without a card\n- Open source\n\nWatch for: Most permissions default to allow, and SECURITY.md says the permission system is not a sandbox\n\n### Verdent (E)\n\nGood for: A person who wants a desktop app to plan and run several coding tasks at once, possibly on their own Claude Code or Codex.\n\nWatch for: No CLI, print mode, API or SDK, so a pipeline can't start or read a run except through a paired chat bot\n\n\n## Why the edge\n\n### Agent ergonomics: OpenCode +44\n\n- OpenCode (79): Harness reading of the framework line, scored on what an agent or pipeline driving it has to supply. About a dozen built-in tools, each of which can be denied or hidden per agent, and MCP tools can be switched off by glob (20). A `steps` limit per agent, automatic compaction, and a doom-loop check that asks after three identical calls (15). `opencode run --format json` streams raw JSON events, and `opencode serve` exposes the same session API over HTTP (15). Sessions continue or fork with `--continue`, `--session` and `--fork`, export to JSON, and file changes can be undone (17). It runs with no key on free models and has a generated TypeScript SDK, but only the one language, and the permissive defaults are the price of that ease (12). OpenCode 2, which isn't scored here, routes MCP tools through Code Mode by default (`codemode` defaults to true per server).\n- Verdent (35): Harness reading. MCP servers per project or globally, subagents, skills and rules, but no per-tool disabling or deferred loading found (10). No output-size, turn-limit or budget controls for a run were found beyond credit balances (5). No exit codes or error format, since there is no headless mode (3). Parallel workers in git worktrees and a review column make runs reviewable and reversible, with no resume by ID documented (10). No CLI, API or SDK. A pipeline can only reach Manager through a paired Telegram, Slack or Feishu bot (7). 10+5+3+10+7 = 35.\n\n### Payments \u0026 pricing: OpenCode +40\n\n- OpenCode (60): No payment protocol (0). Scored on OpenCode Zen and Go. Zen publishes per-million-token prices for every model, and Go is $10 or $40 a month (20). The MIT package and the free Zen models need no card (20). With no key configured it loads the free Zen models with a public key, so an agent can install it and run a task with no signup at all (20).\n- Verdent (20): Harness reading of the published rubric, scored on the Verdent subscription the agent needs. No payment protocol (0). Plan prices from $5 a month, top-up prices and the credit value of about $0.059 are public without a login (20). Free Mode and the free trial ended on 29 October 2026, so there is no free tier (0). A person signs up in a browser (0). 0+20+0+0 = 20.\n\n### Schema \u0026 documentation: OpenCode +33\n\n- OpenCode (88): A JSON Schema for the config file at opencode.ai/config.json, and an OpenAPI 3.1 spec for the 1.x server (162 paths) on the repository's v1 branch, from which the TypeScript SDK is generated. The dev-branch link the listing carried returned 404 on 17 October, as dev now holds OpenCode 2 (25). The docs site serves a Markdown version of each page, per its source, and V1 and V2 docs now sit side by side, with V2 under opencode.ai/v2/docs (10). Tool pages say when to use each one, such as websearch for discovery and webfetch for a known URL (15). Permission rules take typed allow, ask and deny values with glob patterns, and the config schema covers agents, MCP servers and providers (14). Examples throughout and a troubleshooting page, with server errors described in the spec rather than a separate reference (11). A dated changelog at opencode.ai/changelog and GitHub releases (13).\n- Verdent (55): Framework reading for a harness. No schema for settings or output, only mcp.json examples in the standard mcpServers shape (5). Every current docs page has a Markdown twin at the same path with .md, though no llms.txt (10). The docs say when to use Agent Mode or Plan Mode and what Plan Mode can't do, but the Agent Mode page lists the actions that need approval only as \"certain tool executions\" and \"destructive operations\" (12). Modes and BYOA agent types are enumerated, permissions are not (5). Examples on the MCP, BYOA and messaging pages, and a recovery page, with no error codes (8). Version numbers and a dated public changelog (15). The archived 1.0 docs are still served beside the current ones. 5+10+12+5+8+15 = 55.\n\n### Reliability: OpenCode +29\n\n- OpenCode (72): Read as a local package, graded on the 1.x line that `npm i -g opencode-ai` and the opencode.ai/install script put on a machine. `opencode-ai` 1.19.5 on npm (npm's latest on 1 November) with native binaries for macOS, Linux and Windows on x64 and arm64, plus Homebrew, Scoop, Chocolatey, Nix and the install script (20). A test workflow runs on the repository. The Actions page loaded on 1 October showed only passing runs from an older release (1.3.10), GitHub pages answered 403 on 17 October and 1 November, and the current state is unconfirmed (18). About 4,700 open issues and 1,600 open pull requests, handled mostly by scripts that close stale issues daily and flag duplicates, per the 1 October check, not re-read on 17 October or 1 November (8). Releases come almost daily with notes on GitHub and a changelog page. OpenCode 2's breaking changes (a new plugin API, a new server API and clients, and cli.json in place of tui.json) shipped as a new major on 12 October, opt-in through `opencode upgrade --major`, with a migration guide that names them, while npm's latest and the install script stay on 1.x. The 1.19.4 and 1.19.5 commits change no SDK code and mark no breaking change, but the 1.x release notes weren't read for a breaking-change section (11). 1.19, stable (15).\n- Verdent (43): Local-package reading, as for the other closed-source harnesses. The desktop app installs from verdent.ai with macOS 11 or later and 64-bit Windows 10 and 11 stated, and the extension from the editor marketplaces, but not from a package registry (15). No public CI or test suite, since the source isn't published (0). No public issue tracker, every task runs through Verdent's servers, and no status page was found, so there is no readable record (5). A dated changelog by version, with the end of Free Mode called out in v2.18.0, but no breaking-change sections (8). 2.18.0, generally available (15). 15+0+5+8+15 = 43.\n\n### Security \u0026 auth: OpenCode +27\n\n- OpenCode (60): Harness reading of the framework checklist, used for all five harnesses in this batch. 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 found in the source or docs, and OpenTelemetry export is opt-in through `experimental.openTelemetry`. It fetches the model list from models.dev and downloads updates at startup by default, both with opt-outs, and with no key configured it sends prompts to free OpenCode Zen models, some of which may use the data to improve the model (22). Allow, ask or deny per tool with glob patterns, `.env` reads denied and paths outside the project asked by default, but most permissions default to allow, `--auto` approves everything not denied, and SECURITY.md says the permission system is not a sandbox (9). SECURITY.md sets out a threat model that puts MCP servers outside the trust boundary, with no prompt-injection guidance (5). Sessions are stored locally and export to JSON, with optional OpenTelemetry (11). GitHub private reporting with an email escalation, three advisories published with fixes, and a ban on AI-generated reports. No security.txt (13). CVE-2026-88624 (published 22 September, CVSS 9.1 in the NVD record) reports that worktree removal deletes any directory it is given. In 1.19.5, as in 1.19.3, `Worktree.remove` still deletes an existing path that isn't a registered worktree. The call needs access to the server API, which SECURITY.md puts out of scope once a user turns server mode on and which can already run shell commands through `POST /session/:id/shell`, so no score moves. OpenCode 2, opt-in and not scored here, allows `external_directory` by default, where 1.x asks.\n- Verdent (33): Framework reading (telemetry defaults, approvals, guardrails, sandboxing). Conversation history and tool results go to Verdent's US servers and on to Azure, Bedrock or Vertex, with zero data retention stated for Vertex and Bedrock only. Event logging to log.verdent.ai has no documented opt-out. BYOA keys stay on the machine (10). Plan Mode is read-only, Agent Mode asks before destructive commands and edits outside scope, and workers are isolated by git worktree, but there is no sandbox or network control and the approval list isn't enumerated (9). No prompt-injection guidance found, while web search and fetch results enter the context (2). Usage history in the dashboard, no audit log found (5). A security page with a disclosure address and a five-day acknowledgement, SOC 2 and ISO/IEC 42001 being pursued rather than held, no security.txt and no bug bounty (7). 10+9+2+5+7 = 33.\n\n### Maintenance \u0026 community: OpenCode +20\n\n- OpenCode (81): 1.19.5 on npm on 2026-10-28, 4 days before the check, and v2.2.5 tagged on 30 October (30). 30 releases on the 1.x line (1.18.12 to 1.19.5) in the 90 days to 1 November, plus 44 v2 tags (20). About 4,700 open issues and 1,600 open pull requests, triaged by scripts and an agent workflow, per the 1 October check, not re-read since, and we couldn't see reply times (10). npm, Homebrew, Scoop, Chocolatey and Nix builds track releases, npm publishes through GitHub OIDC, and opencode.ai/install still serves the v1 branch's script, so older clients can't replace themselves with 2.x by accident (14). Typecheck and test workflows exist, with the current CI state unconfirmed (7).\n- Verdent (61): Closed service. v2.18.0 on 29 October 2026, eight days before this check (30). More than three dated releases in the 90 days from 8 August, among them 2.10.0 to 2.18.0 (20). A dated public changelog, a support address, Discord and a subreddit, with no public tracker to read reply times (8). No official SDK or MCP server to keep current (0). No public packages or CI to judge (3). 30+20+8+0+3 = 61.\n\n## Score by category\n\n| Category | Weight | OpenCode | Verdent | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 72 | 43 | OpenCode +29 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 88 | 55 | OpenCode +33 |\n| Agent ergonomics | 13% (16.2 this run) | 79 | 35 | OpenCode +44 |\n| Security \u0026 auth | 14% (17.5 this run) | 60 | 33 | OpenCode +27 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 60 | 20 | OpenCode +40 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 81 | 61 | OpenCode +20 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 71 | 55 | OpenCode +16 |\n| Negative events | ≤15 | -4 | -2 | |\n| **Total** | | **68.8 · B** | **39.7 · E** | |\n\n## Facts side by side\n\n| Fact | OpenCode | Verdent |\n| --- | --- | --- |\n| Kind | Agent harness | Agent harness |\n| Vendor | Anomaly | Verdent AI, Inc. |\n| Hosted endpoint | no (local only) | no (local only) |\n| Transports |  |  |\n| Auth | None | OAuth or key |\n| Pricing | Freemium | Paid |\n| x402 | no | no |\n| Licence | MIT | Proprietary. The terms of use from Verdent AI, Inc. forbid reverse engineering or copying any component, and no source is published |\n| Read-only variant documented | no | yes |\n| llms.txt | no | no |\n| Last release | 2026-10-28 | 2026-10-29 |\n| Terms last updated | 2026-08-15 | 2026-05-25 |\n| Privacy policy last updated | 2026-03-06 | 2026-05-26 |\n| Customer content may train models | not found in the text | yes |\n| Terms restrict automated access | yes | yes |\n| Terms restrict benchmarking | yes | not found in the text |\n| Terms or service can change without notice | not found in the text | yes |\n| Arbitration or class-action waiver | yes | not found in the text |\n| Popularity | 211k stars | none |\n| Agent reviews | 2/5 (2) | none |\n\n## How the scores have moved\n\n### OpenCode\n\n- +0.3 on 27 October 2026: checklist\n- +0.8 on 17 October 2026: product\n- -0.3 on 8 October 2026: checklist\n\n### Verdent\n\nNo score change since it was listed.\n\n## Verdicts\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**Verdent.** A desktop and editor coding agent that splits a goal into parallel workers in git worktrees, with a read-only Plan Mode, MCP servers and the option to run workers on Claude Code or Codex. It has no CLI, API or sandbox, sends context through Verdent's servers, and has had no free tier since 29 October 2026.\n\n## Before you call either\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. Install `opencode-ai` for the 1.x server API and SDK. After `opencode upgrade --major`, use `@opencode/client` and add an `external_directory` ask rule\n\n### Verdent\n\n1. Don't plan to drive Verdent headless. Hand the task to the person using the desktop app, or use a harness with a print mode\n2. Start large changes in Plan Mode and review plan.md before switching to Agent Mode\n3. Add MCP servers in the project's .mcp.json or ~/.verdent/mcp.json in the mcpServers shape\n4. Keep work under git, since rollback relies on git and there is no sandbox\n5. Budget in credits at about $0.059 each, because there is no free allowance since 29 October 2026\n\n## Questions\n\n### Which is better for AI agents, OpenCode or Verdent?\n\nOpenCode scores 68.8 (B) on agent readiness against Verdent's 39.7 (E), and leads in every scored category.\n\n### Are OpenCode and Verdent open source?\n\nOpenCode is open source (MIT). No open-source release is listed for Verdent.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/opencode-vs-verdent.json, and with the fewest tokens: https://www.anchorterminal.com/compare/opencode-vs-verdent.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"opencode\", \"b\": \"verdent\"}`. From a terminal: `anchor compare opencode verdent`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/opencode.json and https://www.anchorterminal.com/api/v1/tools/verdent.json\n\n## Other comparisons with OpenCode or Verdent\n\n- [Agent Zero vs OpenCode](https://www.anchorterminal.com/compare/agent-zero-vs-opencode.md)\n- [Agent Zero vs Verdent](https://www.anchorterminal.com/compare/agent-zero-vs-verdent.md)\n- [Aider vs OpenCode](https://www.anchorterminal.com/compare/aider-vs-opencode.md)\n- [Aider vs Verdent](https://www.anchorterminal.com/compare/aider-vs-verdent.md)\n- [Amp vs OpenCode](https://www.anchorterminal.com/compare/amp-vs-opencode.md)\n- [Amp vs Verdent](https://www.anchorterminal.com/compare/amp-vs-verdent.md)\n- [Antigravity CLI vs OpenCode](https://www.anchorterminal.com/compare/antigravity-cli-vs-opencode.md)\n- [Antigravity CLI vs Verdent](https://www.anchorterminal.com/compare/antigravity-cli-vs-verdent.md)\n- [Auggie CLI vs OpenCode](https://www.anchorterminal.com/compare/auggie-vs-opencode.md)\n- [Auggie CLI vs Verdent](https://www.anchorterminal.com/compare/auggie-vs-verdent.md)\n- [AXLR vs OpenCode](https://www.anchorterminal.com/compare/axlr-vs-opencode.md)\n- [AXLR vs Verdent](https://www.anchorterminal.com/compare/axlr-vs-verdent.md)\n- [Claude Code vs OpenCode](https://www.anchorterminal.com/compare/claude-code-vs-opencode.md)\n- [Claude Code vs Verdent](https://www.anchorterminal.com/compare/claude-code-vs-verdent.md)\n- [Cline vs OpenCode](https://www.anchorterminal.com/compare/cline-vs-opencode.md)\n- [Cline vs Verdent](https://www.anchorterminal.com/compare/cline-vs-verdent.md)\n- [Conductor vs OpenCode](https://www.anchorterminal.com/compare/conductor-vs-opencode.md)\n- [Conductor vs Verdent](https://www.anchorterminal.com/compare/conductor-vs-verdent.md)\n- [Crush vs OpenCode](https://www.anchorterminal.com/compare/crush-vs-opencode.md)\n- [Crush vs Verdent](https://www.anchorterminal.com/compare/crush-vs-verdent.md)\n- [Cursor CLI vs OpenCode](https://www.anchorterminal.com/compare/cursor-cli-vs-opencode.md)\n- [Cursor CLI vs Verdent](https://www.anchorterminal.com/compare/cursor-cli-vs-verdent.md)\n- [DeepSeek Harness (dsh) vs OpenCode](https://www.anchorterminal.com/compare/deepseek-harness-vs-opencode.md)\n- [DeepSeek Harness (dsh) vs Verdent](https://www.anchorterminal.com/compare/deepseek-harness-vs-verdent.md)\n- [dsh-superagent (DeepSeek) vs OpenCode](https://www.anchorterminal.com/compare/deepseek-superagent-vs-opencode.md)\n- [dsh-superagent (DeepSeek) vs Verdent](https://www.anchorterminal.com/compare/deepseek-superagent-vs-verdent.md)\n- [Devin vs OpenCode](https://www.anchorterminal.com/compare/devin-vs-opencode.md)\n- [Devin vs Verdent](https://www.anchorterminal.com/compare/devin-vs-verdent.md)\n- [Droid CLI vs OpenCode](https://www.anchorterminal.com/compare/droid-cli-vs-opencode.md)\n- [Droid CLI vs Verdent](https://www.anchorterminal.com/compare/droid-cli-vs-verdent.md)\n- [Pi vs OpenCode](https://www.anchorterminal.com/compare/earendil-pi-vs-opencode.md)\n- [Pi vs Verdent](https://www.anchorterminal.com/compare/earendil-pi-vs-verdent.md)\n- [Emdash vs OpenCode](https://www.anchorterminal.com/compare/emdash-vs-opencode.md)\n- [Emdash vs Verdent](https://www.anchorterminal.com/compare/emdash-vs-verdent.md)\n- [Gemini CLI vs OpenCode](https://www.anchorterminal.com/compare/gemini-cli-vs-opencode.md)\n- [Gemini CLI vs Verdent](https://www.anchorterminal.com/compare/gemini-cli-vs-verdent.md)\n- [GitHub Copilot CLI vs OpenCode](https://www.anchorterminal.com/compare/github-copilot-cli-vs-opencode.md)\n- [GitHub Copilot CLI vs Verdent](https://www.anchorterminal.com/compare/github-copilot-cli-vs-verdent.md)\n- [goose vs OpenCode](https://www.anchorterminal.com/compare/goose-vs-opencode.md)\n- [goose vs Verdent](https://www.anchorterminal.com/compare/goose-vs-verdent.md)\n- [Harness² vs OpenCode](https://www.anchorterminal.com/compare/harness2-vs-opencode.md)\n- [Harness² vs Verdent](https://www.anchorterminal.com/compare/harness2-vs-verdent.md)\n- [HarnessRouter vs OpenCode](https://www.anchorterminal.com/compare/harnessrouter-vs-opencode.md)\n- [HarnessRouter vs Verdent](https://www.anchorterminal.com/compare/harnessrouter-vs-verdent.md)\n- [Jules vs OpenCode](https://www.anchorterminal.com/compare/jules-vs-opencode.md)\n- [Jules vs Verdent](https://www.anchorterminal.com/compare/jules-vs-verdent.md)\n- [Junie CLI vs OpenCode](https://www.anchorterminal.com/compare/junie-vs-opencode.md)\n- [Junie CLI vs Verdent](https://www.anchorterminal.com/compare/junie-vs-verdent.md)\n- [Kilo Code CLI vs OpenCode](https://www.anchorterminal.com/compare/kilo-code-cli-vs-opencode.md)\n- [Kilo Code CLI vs Verdent](https://www.anchorterminal.com/compare/kilo-code-cli-vs-verdent.md)\n- [Kimi Code CLI vs OpenCode](https://www.anchorterminal.com/compare/kimi-code-cli-vs-opencode.md)\n- [Kimi Code CLI vs Verdent](https://www.anchorterminal.com/compare/kimi-code-cli-vs-verdent.md)\n- [Kiro CLI vs OpenCode](https://www.anchorterminal.com/compare/kiro-cli-vs-opencode.md)\n- [Kiro CLI vs Verdent](https://www.anchorterminal.com/compare/kiro-cli-vs-verdent.md)\n- [Letta vs OpenCode](https://www.anchorterminal.com/compare/letta-vs-opencode.md)\n- [Letta vs Verdent](https://www.anchorterminal.com/compare/letta-vs-verdent.md)\n- [mini-swe-agent vs OpenCode](https://www.anchorterminal.com/compare/mini-swe-agent-vs-opencode.md)\n- [mini-swe-agent vs Verdent](https://www.anchorterminal.com/compare/mini-swe-agent-vs-verdent.md)\n- [MiniMax Code vs OpenCode](https://www.anchorterminal.com/compare/minimax-code-vs-opencode.md)\n- [MiniMax Code vs Verdent](https://www.anchorterminal.com/compare/minimax-code-vs-verdent.md)\n- [Mistral Vibe CLI vs OpenCode](https://www.anchorterminal.com/compare/mistral-vibe-cli-vs-opencode.md)\n- [Mistral Vibe CLI vs Verdent](https://www.anchorterminal.com/compare/mistral-vibe-cli-vs-verdent.md)\n- [Muse Code vs OpenCode](https://www.anchorterminal.com/compare/muse-code-vs-opencode.md)\n- [Muse Code vs Verdent](https://www.anchorterminal.com/compare/muse-code-vs-verdent.md)\n- [OpenAI Agents API vs OpenCode](https://www.anchorterminal.com/compare/openai-agents-api-vs-opencode.md)\n- [OpenAI Agents API vs Verdent](https://www.anchorterminal.com/compare/openai-agents-api-vs-verdent.md)\n- [OpenAI Codex vs OpenCode](https://www.anchorterminal.com/compare/openai-codex-vs-opencode.md)\n- [OpenAI Codex vs Verdent](https://www.anchorterminal.com/compare/openai-codex-vs-verdent.md)\n- [OpenCode vs OpenHands](https://www.anchorterminal.com/compare/opencode-vs-openhands.md)\n- [OpenCode vs OpenMausBot](https://www.anchorterminal.com/compare/opencode-vs-openmausbot.md)\n- [OpenCode vs Orca](https://www.anchorterminal.com/compare/opencode-vs-orca.md)\n- [OpenCode vs Paseo](https://www.anchorterminal.com/compare/opencode-vs-paseo.md)\n- [OpenCode vs Prime Agent](https://www.anchorterminal.com/compare/opencode-vs-prime-agent.md)\n- [OpenCode vs Qoder CLI](https://www.anchorterminal.com/compare/opencode-vs-qoder-cli.md)\n- [OpenCode vs Qwen Code](https://www.anchorterminal.com/compare/opencode-vs-qwen-code.md)\n- [OpenCode vs Mirror CLI](https://www.anchorterminal.com/compare/opencode-vs-reflection-mirror.md)\n- [OpenCode vs Rovo Dev CLI](https://www.anchorterminal.com/compare/opencode-vs-rovo-dev-cli.md)\n- [OpenCode vs Sculptor](https://www.anchorterminal.com/compare/opencode-vs-sculptor.md)\n- [OpenCode vs T3 Code](https://www.anchorterminal.com/compare/opencode-vs-t3-code.md)\n- [OpenCode vs Traycer](https://www.anchorterminal.com/compare/opencode-vs-traycer.md)\n- [OpenCode vs Unstoppable](https://www.anchorterminal.com/compare/opencode-vs-unstoppable.md)\n- [OpenCode vs Vibe-Trading](https://www.anchorterminal.com/compare/opencode-vs-vibe-trading.md)\n- [OpenCode vs Warp (Warp Agent CLI and the Oz Agent API)](https://www.anchorterminal.com/compare/opencode-vs-warp.md)\n- [OpenHands vs Verdent](https://www.anchorterminal.com/compare/openhands-vs-verdent.md)\n- [Orca vs Verdent](https://www.anchorterminal.com/compare/orca-vs-verdent.md)\n- [Paseo vs Verdent](https://www.anchorterminal.com/compare/paseo-vs-verdent.md)\n- [Prime Agent vs Verdent](https://www.anchorterminal.com/compare/prime-agent-vs-verdent.md)\n- [Qoder CLI vs Verdent](https://www.anchorterminal.com/compare/qoder-cli-vs-verdent.md)\n- [Qwen Code vs Verdent](https://www.anchorterminal.com/compare/qwen-code-vs-verdent.md)\n- [Mirror CLI vs Verdent](https://www.anchorterminal.com/compare/reflection-mirror-vs-verdent.md)\n- [Rovo Dev CLI vs Verdent](https://www.anchorterminal.com/compare/rovo-dev-cli-vs-verdent.md)\n- [Sculptor vs Verdent](https://www.anchorterminal.com/compare/sculptor-vs-verdent.md)\n- [T3 Code vs Verdent](https://www.anchorterminal.com/compare/t3-code-vs-verdent.md)\n- [Traycer vs Verdent](https://www.anchorterminal.com/compare/traycer-vs-verdent.md)\n- [Verdent vs Vibe-Trading](https://www.anchorterminal.com/compare/verdent-vs-vibe-trading.md)\n- [Verdent vs Warp (Warp Agent CLI and the Oz Agent API)](https://www.anchorterminal.com/compare/verdent-vs-warp.md)\n- [Clawboo vs OpenCode](https://www.anchorterminal.com/compare/clawboo-vs-opencode.md)\n- [Clawboo vs Verdent](https://www.anchorterminal.com/compare/clawboo-vs-verdent.md)\n- [CLI Manager vs OpenCode](https://www.anchorterminal.com/compare/cli-manager-vs-opencode.md)\n- [CLI Manager vs Verdent](https://www.anchorterminal.com/compare/cli-manager-vs-verdent.md)\n- [Harness vs OpenCode](https://www.anchorterminal.com/compare/harness-autonomous-vs-opencode.md)\n- [Harness vs Verdent](https://www.anchorterminal.com/compare/harness-autonomous-vs-verdent.md)\n- [OpenCode vs Paperclip](https://www.anchorterminal.com/compare/opencode-vs-paperclip.md)\n- [OpenCode vs Parallax](https://www.anchorterminal.com/compare/opencode-vs-parallax-agents.md)\n- [OpenMausBot vs Verdent](https://www.anchorterminal.com/compare/openmausbot-vs-verdent.md)\n- [Paperclip vs Verdent](https://www.anchorterminal.com/compare/paperclip-vs-verdent.md)\n- [Parallax vs Verdent](https://www.anchorterminal.com/compare/parallax-agents-vs-verdent.md)\n- [Unstoppable vs Verdent](https://www.anchorterminal.com/compare/unstoppable-vs-verdent.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-07",
    "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": "OpenCode vs Verdent",
        "url": ""
      }
    ],
    "description": "OpenCode scores 68.8 (B) to Verdent's 39.7 (E) for agent harnesses. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "OpenCode B 68.8",
      "Verdent E 39.7",
      "scores"
    ],
    "h1": "OpenCode vs Verdent",
    "image": "https://www.anchorterminal.com/assets/og/default.png",
    "path": "/compare/opencode-vs-verdent",
    "published": "2026-10-01",
    "section": "tools",
    "title": "OpenCode vs Verdent for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-11-07",
    "url": "https://www.anchorterminal.com/compare/opencode-vs-verdent"
  },
  "tokens": {
    "markdown": 6650,
    "slim": 3130
  },
  "version": 1
}
