{
  "data": {
    "a": {
      "slug": "harnessrouter",
      "name": "HarnessRouter",
      "vendor": "HarnessRouter (Lumentree Corporation)",
      "vendorUrl": "https://harnessrouter.ai",
      "kind": "harness",
      "category": "agent-harnesses",
      "summary": "HarnessRouter runs complete agent harnesses such as Codex, Claude Code and Hermes behind one HTTP API, the Unified Harness Protocol, with sessions, streaming, files and artifacts. It comes as a hosted cloud or a self-hosted Community Edition.",
      "url": "https://www.anchorterminal.com/tools/harnessrouter",
      "markdownUrl": "https://www.anchorterminal.com/tools/harnessrouter.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/harnessrouter.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/harnessrouter.json",
      "repo": "https://github.com/HarnessRouter/harnessrouter",
      "license": "Apache-2.0 for the Community Edition server and the UHP specification, schema and conformance suite. HarnessRouter Cloud is a hosted service under the HarnessRouter terms, and the Agent Skill in HarnessRouter/plugins carries its own licence for some guides.",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://api.harnessrouter.ai",
      "packages": [
        {
          "registry": "oci",
          "name": "harnessrouter/harnessrouter"
        }
      ],
      "auth": "api-key",
      "authNotes": "A Workspace API key (sk-hr-) as a Bearer token from the product's server, never from a browser (https://harnessrouter.ai/docs/authentication). Keys are created in the console after a browser sign-up, can be held to one workspace or reach the whole organisation, and are revoked at once by DELETE /v1/orgs/{org}/keys/{id}. No OAuth or per-endpoint scopes found. The self-hosted Community Edition signs into its console with a username and password and needs no HarnessRouter key.",
      "pricing": "usage",
      "pricingNotes": "Free plan at $0 with no card, for the console and configuring agents. Running tasks draws on top-up credit ($10 minimum, 5.5 per cent fee) or a plan, Developer $20, Production $200 or Scale $1,000 a month, each fully included as usage. Agent work is $0.020 an active minute on top-ups and $0.014 to $0.006 on plans, and model calls are at the provider's price or on your own keys (https://harnessrouter.ai/pricing.md, checked 2026-10-17). Self-serve payment is card-only.",
      "priceSummary": "$20 / mo",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in llms.txt, llms-full.txt, the pricing page or the UHP schema (checked 2026-10-17). Payment is by card for top-ups and plans.",
        "endpoints": []
      },
      "toolCount": 0,
      "popularity": {
        "githubStars": 3075,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-17"
      },
      "docsUrl": "https://harnessrouter.ai/docs",
      "llmsTxt": "https://harnessrouter.ai/llms.txt",
      "openapi": "https://github.com/HarnessRouter/harnessrouter/blob/main/protocol/schema/uhp-2026-10-04.openapi.yaml",
      "capabilities": [
        "agent.harness",
        "agent.mcp-client",
        "agent.multi-agent"
      ],
      "tags": [
        "hosted",
        "self-hosted",
        "open-source",
        "apache-2.0",
        "api-key",
        "usage",
        "openapi",
        "llms-txt",
        "docker",
        "python",
        "streaming",
        "cloud-agent",
        "agent-skill"
      ],
      "lastRelease": "2026-10-16",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 53.2,
        "grade": "D",
        "agentReady": false,
        "rank": 803,
        "ranked": true,
        "rankOf": 1146,
        "categoryRank": 30,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 73,
          "maintenance": 72,
          "payments": 25,
          "reliability": 35,
          "schema": 83,
          "security": 58,
          "transparency": 72
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-17"
        },
        "negative": -5,
        "negativeNotes": [
          "2026-10-06, -5. Privately reported flaws fixed in public commits #416 to #429 on 6 and 7 October 2026. The gateway source names them GHSA-p6cq-54cg-8mpv (a bearer token that failed verification still reached internal routes, so anyone could rewrite any organisation's connections and routing; \"found live on the hosted service and closed there the same way, 2026-10-06\"), GHSA-qrr8-m92f-7vfp (identity headers trusted by default), GHSA-mw9j-m5jf-5r56 and GHSA-c5g7-c47h-f6c3 (server-side request forgery through git imports and upload addresses) and GHSA-rmh9-whjx-gfrc (secrets with quotes or non-ASCII characters left unredacted). A workspace key could also read, change and delete another workspace's harnesses, sessions and responses and mint an organisation-wide key (\"reported privately three times\"). All were fixed within days and described in the source. The advisory pages couldn't be read (GitHub answered 403), so whether they're published is unchecked, and the deduction is lower than an open cross-tenant flaw would get. Source https://github.com/HarnessRouter/harnessrouter/blob/main/gateway/app.py"
        ],
        "verdict": "A product's server sends a task to a named harness and gets streamed progress, sessions and files back, under a published OpenAPI contract with idempotency keys and a closed set of error codes. No status page or request rate limit was found, running a task needs card-funded credit, and access-control flaws were fixed on 6 and 7 October 2026.",
        "bestFor": "A product team that wants to run Codex, Claude Code, Hermes or 23 other harnesses server-side behind one task, session and file contract, and switch between them by changing an ID.",
        "strengths": [
          "UHP is published as OpenAPI 3.1 and JSON Schema 2020-12 under Apache-2.0, with a 98-check conformance suite in the repository",
          "Every task call takes an Idempotency-Key, and the error envelope has a closed code set, with a retry rule per code",
          "Per-turn budgets (400 steps, 7,200 seconds and $10 by default) cap what one task can spend",
          "26 harnesses listed as available, including Codex, Claude Code, Hermes, OpenCode, goose and Qoder, behind one task contract",
          "202 tagged releases between 15 August and 16 October 2026, and the self-hosted Community Edition runs with no HarnessRouter account"
        ],
        "weaknesses": [
          "No status page found (status.harnessrouter.ai doesn't resolve and /status answers 404), and the terms give no service level without a signed order form",
          "No request rate limit is published. Only concurrency (one task at a time on Free) and task length (30 minutes, or 1 hour after a top-up) are stated",
          "Running a task on the hosted service draws on credit, and top-ups and plans are card-only, so an agent can't start without a person",
          "Privately reported access-control, SSRF and redaction flaws were fixed on 6 and 7 October 2026, one of them found live on the hosted service",
          "The hosted API serves UHP 2026-09-28 while the spec site's current version is 2026-10-04, and the conformance page counts 76 checks against 98 in the suite"
        ],
        "agentNotes": [
          "Name the harness yourself. The task call is POST /{harness_id}/v1/responses, and HarnessRouter doesn't choose a harness for you",
          "Send a fresh Idempotency-Key with each new task, reuse it only for a retry of the same request, and recover from the session if a stream drops",
          "Call cancel to stop work. Closing the SSE connection leaves the agent running and billing",
          "Keep the Workspace API key on the server. The docs forbid calling the API from a browser with it",
          "Check each tool's enforcement in GET /v1/bases. On bases marked instruction, disabled_tools is a request to the model, not a block"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 4,
        "avgRating": 2.5,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "D",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 53.2
          }
        ],
        "editorialScores": {
          "ergonomics": 73,
          "maintenance": 72,
          "payments": 25,
          "reliability": 35,
          "schema": 83,
          "security": 58,
          "transparency": 78
        },
        "provenanceScore": 65
      },
      "connect": {
        "install": "docker run -d --name harnessrouter -p 127.0.0.1:3000:3000 -v harnessrouter:/data harnessrouter/harnessrouter",
        "http": "curl -N https://api.harnessrouter.ai/$HARNESS_ID/v1/responses -H \"Authorization: Bearer $HR_API_KEY\" -H \"Idempotency-Key: $(uuidgen)\" -H \"Content-Type: application/json\" -d '{\"input\": \"Review this uploaded agreement and return a checklist.\", \"stream\": true}'"
      },
      "letme": {
        "capability": "https://letme.dev/agent.harness",
        "tool": "https://letme.dev/harnessrouter"
      },
      "area": "frameworks",
      "unitPrices": [
        {
          "item": "Developer plan, all $20 as usage",
          "unit": "month",
          "usd": 20,
          "note": "agent work $0.014 an active minute, one workspace"
        },
        {
          "item": "Production plan, all $200 as usage",
          "unit": "month",
          "usd": 200,
          "note": "agent work $0.010 an active minute, five workspaces"
        },
        {
          "item": "Scale plan, all $1,000 as usage",
          "unit": "month",
          "usd": 1000,
          "note": "agent work $0.006 an active minute, tracing included"
        },
        {
          "item": "Agent work on top-up credit, per hour of active work",
          "unit": "session-hour",
          "usd": 1.2,
          "note": "$0.020 an active minute, billed by the second. Waiting on the model, the user or a queue isn't billed"
        },
        {
          "item": "Tracing add-on",
          "unit": "month",
          "usd": 50,
          "note": "beta, included with Scale"
        }
      ],
      "provenance": {
        "legalEntity": "Lumentree Corporation",
        "domain": "harnessrouter.ai",
        "domainRegistered": "2026-06-18",
        "endpointOnVendorDomain": true,
        "terms": "https://harnessrouter.ai/legal/terms",
        "privacy": "https://harnessrouter.ai/legal/privacy",
        "statusPage": "",
        "changelog": "https://unifiedharnessprotocol.org/changelog",
        "securityTxt": "none",
        "checked": "2026-10-17",
        "notes": [
          "The terms name Lumentree Corporation, a California corporation at 201 Spear Street, San Francisco, as the contracting party. The YC launch lists the company as Epsilla (Summer 2023), and the maintainer commits from an epsilla.com address.",
          "harnessrouter.ai was registered on 18 June 2026 and unifiedharnessprotocol.org on 12 August 2026 (registry RDAP, checked 2026-10-17).",
          "No status page. status.harnessrouter.ai doesn't resolve and harnessrouter.ai/status answers 404.",
          "harnessrouter.ai/.well-known/security.txt answers 404. A disclosure policy is at /legal/security, and SECURITY.md in the repository names GitHub private reporting and contact@harnessrouter.ai.",
          "The changelog is the UHP specification's. HarnessRouter itself has 202 tags in the repository and no product changelog page was found.",
          "The terms forbid scraping or crawling except as allowed by the documentation, an API endpoint, robots.txt or written permission. robots.txt on harnessrouter.ai and unifiedharnessprotocol.org allows all paths."
        ],
        "score": 65
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/harnessrouter.json",
      "live": {
        "slug": "harnessrouter",
        "probe": {
          "target": "https://api.harnessrouter.ai",
          "method": "get",
          "lastAt": "2026-10-19T00:10:56.860564978Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 273,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 277,
          "p95ms24h": 364,
          "samples24h": 256,
          "samples30d": 279,
          "days": [
            {
              "date": "2026-10-17",
              "probes": 21,
              "ok": 21
            },
            {
              "date": "2026-10-18",
              "probes": 256,
              "ok": 256
            },
            {
              "date": "2026-10-19",
              "probes": 2,
              "ok": 2
            }
          ]
        },
        "versions": [
          {
            "registry": "github",
            "name": "HarnessRouter/harnessrouter",
            "version": "v0.34.2",
            "released": "2026-10-16",
            "seenAt": "2026-10-18T02:52:05.442502781Z"
          }
        ],
        "githubStars": 3100,
        "securityTxt": {
          "url": "https://harnessrouter.ai/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-18T15:53:15.81829781Z"
        },
        "llmsTxt": {
          "url": "https://harnessrouter.ai/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-18T14:25:13.67588166Z"
        },
        "domain": {
          "domain": "harnessrouter.ai",
          "registered": "2026-06-18",
          "source": "https://rdap.identitydigital.services/rdap/domain/harnessrouter.ai",
          "checkedAt": "2026-10-18T13:43:04.282698858Z"
        },
        "pages": [
          {
            "url": "https://unifiedharnessprotocol.org/changelog",
            "kind": "changelog",
            "status": 304,
            "checkedAt": "2026-10-18T23:39:35.438442764Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "783aeda2cd75"
          },
          {
            "url": "https://harnessrouter.ai/pricing.md",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-10-18T23:31:33.798956939Z",
            "changedAt": "2026-10-18T23:31:33.798956939Z",
            "fingerprint": "b31b753df12b"
          },
          {
            "url": "https://harnessrouter.ai/legal/privacy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-18T23:31:29.199131828Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "af87474c34e0"
          },
          {
            "url": "https://harnessrouter.ai/legal/terms",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-18T23:31:31.409105501Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "501a6366c745"
          }
        ],
        "updatedAt": "2026-10-19T00:10:56.860564978Z"
      }
    },
    "answer": "Kimi Code CLI scores 62.1 (B) on agent readiness against HarnessRouter's 53.2 (D), and leads in 3 of 7 scored categories. HarnessRouter leads on security \u0026 auth and transparency \u0026 trust.",
    "b": {
      "slug": "kimi-code-cli",
      "name": "Kimi Code CLI",
      "vendor": "Moonshot AI",
      "vendorUrl": "https://moonshotai.github.io/kimi-code/en/",
      "kind": "harness",
      "category": "agent-harnesses",
      "summary": "Open-source terminal coding agent from Moonshot AI that replaced the archived Python Kimi CLI. It runs Kimi, Anthropic, OpenAI or Gemini models, headless with `kimi -p`, as an ACP server, or behind a local REST server.",
      "url": "https://www.anchorterminal.com/tools/kimi-code-cli",
      "markdownUrl": "https://www.anchorterminal.com/tools/kimi-code-cli.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/kimi-code-cli.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/kimi-code-cli.json",
      "repo": "https://github.com/MoonshotAI/kimi-code",
      "license": "MIT",
      "transports": [],
      "packages": [
        {
          "registry": "npm",
          "name": "@moonshot-ai/kimi-code"
        }
      ],
      "auth": "mixed",
      "authNotes": "Kimi Code OAuth (RFC 8628 device code through `/login` or `kimi login`) for a Kimi Code subscription, or a Kimi Platform API key. Anthropic, OpenAI, Gemini, Vertex AI and OpenAI-compatible providers take a key in `config.toml`. Provider keys in the shell are not read unless named through `api_key_env` or the `KIMI_MODEL_*` variables. OAuth tokens are stored in `~/.kimi-code/credentials/` with 0600 permissions.",
      "pricing": "free",
      "pricingNotes": "Free and MIT-licensed, with nothing to buy for the CLI. The owner pays the model provider. Kimi Platform API keys are billed pay-as-you-go per million tokens, and the Kimi Code subscription is sold as a Kimi membership plan whose prices render only with JavaScript and weren't read on 18 October 2026.",
      "priceSummary": "Free · OSS",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the docs or the 2.2.0 npm package (checked 2026-10-18).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": 36761,
        "pypiWeekly": null,
        "asOf": "2026-10-18"
      },
      "docsUrl": "https://moonshotai.github.io/kimi-code/en/",
      "llmsTxt": "https://moonshotai.github.io/kimi-code/llms.txt",
      "capabilities": [
        "agent.harness",
        "agent.mcp-client",
        "agent.multi-agent"
      ],
      "tags": [
        "official",
        "harness",
        "coding-agent",
        "cli",
        "open-source",
        "typescript",
        "mcp",
        "acp",
        "llms-txt",
        "telemetry-default-on",
        "no-sandbox",
        "free",
        "no-card",
        "local"
      ],
      "lastRelease": "2026-10-14",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 62.1,
        "grade": "B",
        "agentReady": false,
        "rank": 492,
        "ranked": true,
        "rankOf": 1146,
        "categoryRank": 11,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 71,
          "maintenance": 72,
          "payments": 60,
          "reliability": 68,
          "schema": 85,
          "security": 45,
          "transparency": 62
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-18"
        },
        "negative": -4,
        "negativeNotes": [
          "2026-09-04. Version 0.41.0 fixed print mode (`kimi -p`) ignoring `KIMI_DISABLE_TELEMETRY`, so scripted runs sent telemetry after the user opted out. Fixed and stated in the changelog, -2. https://moonshotai.github.io/kimi-code/en/release-notes/changelog",
          "2026-09-23. Version 2.1.0 fixed file tools reaching outside the working directory through symlinks, repository git configuration running commands during background git operations, and project config applied before the workspace was trusted. Fixed and listed in the changelog, with no advisory published in OSV on 18 October 2026, -2. https://moonshotai.github.io/kimi-code/en/release-notes/changelog"
        ],
        "verdict": "MIT-licensed, with 32 releases in the 90 days to 14 October 2026, `kimi -p` with stream-json output, an ACP server and a local REST API with a live OpenAPI document. Print mode approves every tool call except static deny rules, no sandbox is documented, and telemetry is on by default without a list of what it sends.",
        "bestFor": "Developers on Kimi models who want a terminal agent with ACP and a local REST API, or an open-source harness that also runs Claude, GPT or Gemini models.",
        "strengths": [
          "MIT-licensed, with a single-binary installer, npm and Homebrew core packages at 2.2.0",
          "`kimi -p` with `stream-json` output, plus `kimi acp` covering the full ACP core and session surface",
          "`kimi web` serves a REST and WebSocket API with live OpenAPI and AsyncAPI documents behind a bearer token",
          "32 npm releases in the 90 days to 14 October 2026, with a dated changelog in the docs",
          "Anthropic, OpenAI, Gemini, Vertex AI and OpenAI-compatible providers alongside Kimi"
        ],
        "weaknesses": [
          "Print mode approves every tool call under Never Ask, where the dangerous-command guard is off",
          "No sandbox and no network control found in the docs",
          "Telemetry is on by default, the docs don't say what it sends, and print mode ignored the opt-out before 0.41.0",
          "No privacy page for the CLI, and the Kimi terms use content for training unless the user opts out by email",
          "Lifecycle hooks fail open, so a hook that errors or times out lets the tool call through"
        ],
        "agentNotes": [
          "`kimi -p` approves every tool call. Add `[[permission.rules]]` deny entries and run it in a container, since no sandbox is documented",
          "Set `KIMI_LOOP_MAX_STEPS_PER_TURN` for unattended runs. Steps per turn are unlimited by default",
          "Pass the model with `KIMI_MODEL_NAME`, `KIMI_MODEL_API_KEY` and `KIMI_MODEL_PROVIDER_TYPE`. `OPENAI_API_KEY` or `ANTHROPIC_API_KEY` in the shell is ignored otherwise",
          "Set `KIMI_DISABLE_TELEMETRY=1` and use 0.41.0 or later, since earlier print-mode runs ignored it",
          "Install `@moonshot-ai/kimi-code` or the `kimi-code` formula. The `kimi-cli` and `kimi-code` packages on PyPI are the archived Python CLI"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 4,
        "avgRating": 3,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 62.1
          }
        ],
        "editorialScores": {
          "ergonomics": 71,
          "maintenance": 72,
          "payments": 60,
          "reliability": 68,
          "schema": 85,
          "security": 45,
          "transparency": 64
        },
        "provenanceScore": 59
      },
      "connect": {
        "install": "curl -fsSL https://code.kimi.com/kimi-code/install.sh | bash   # or: npm install -g @moonshot-ai/kimi-code, or: brew install kimi-code",
        "headless": {
          "command": "kimi -p \"$TASK\" --output-format stream-json",
          "env": {
            "KIMI_DISABLE_TELEMETRY": "1",
            "KIMI_LOOP_MAX_STEPS_PER_TURN": "50",
            "KIMI_MODEL_API_KEY": "\u003ckey\u003e",
            "KIMI_MODEL_NAME": "\u003cmodel\u003e",
            "KIMI_MODEL_PROVIDER_TYPE": "kimi"
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/agent.harness",
        "tool": "https://letme.dev/kimi-code-cli"
      },
      "area": "frameworks",
      "provenance": {
        "legalEntity": "Moonshot AI (the global Kimi terms name NOVASCENT PRIVATE LIMITED, Singapore)",
        "domain": "moonshotai.github.io",
        "domainRegistered": "",
        "endpointOnVendorDomain": null,
        "terms": "https://www.kimi.ai/user/agreement/modelUse?version=v2",
        "privacy": "https://www.kimi.ai/user/agreement/userPrivacy?version=v2",
        "statusPage": "",
        "changelog": "https://moonshotai.github.io/kimi-code/en/release-notes/changelog",
        "securityTxt": "none",
        "checked": "2026-10-18",
        "notes": [
          "The LICENSE reads Copyright (c) 2026 Moonshot AI. The Kimi terms (effective 13 August 2026) and privacy policy (last updated 13 August 2026), linked from the Kimi Code page on kimi.ai, name NOVASCENT PRIVATE LIMITED, a company registered in Singapore, as the provider. Neither names the CLI.",
          "The docs are on GitHub Pages and carry no terms or privacy page of their own. The Kimi Platform has separate terms and a privacy policy for API keys at platform.kimi.ai/docs/agreement.",
          "kimi.com, kimi.ai and moonshot.ai each answered /.well-known/security.txt with an HTML page, so no security.txt was found. SECURITY.md names private GitHub advisories and code@moonshot.ai."
        ],
        "score": 59
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/kimi-code-cli.json",
      "live": {
        "slug": "kimi-code-cli",
        "pages": [
          {
            "url": "https://moonshotai.github.io/kimi-code/en/release-notes/changelog",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-18T23:33:53.410496102Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "f8f198816ab3"
          },
          {
            "url": "https://www.kimi.ai/user/agreement/userPrivacy?version=v2",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-18T23:44:58.354116633Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "e6a453a3c7bd"
          },
          {
            "url": "https://www.kimi.ai/user/agreement/modelUse?version=v2",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-18T23:44:55.919228113Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "27a334b00216"
          }
        ],
        "updatedAt": "2026-10-18T23:44:58.354116633Z"
      }
    },
    "facts": [
      {
        "a": "Agent harness",
        "b": "Agent harness",
        "name": "Kind"
      },
      {
        "a": "HarnessRouter (Lumentree Corporation)",
        "b": "Moonshot AI",
        "name": "Vendor"
      },
      {
        "a": "https://api.harnessrouter.ai",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP",
        "b": "",
        "name": "Transports"
      },
      {
        "a": "API key",
        "b": "OAuth or key",
        "name": "Auth"
      },
      {
        "a": "Pay per use",
        "b": "Free",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Apache-2.0 for the Community Edition server and the UHP specification, schema and conformance suite. HarnessRouter Cloud is a hosted service under the HarnessRouter terms, and the Agent Skill in HarnessRouter/plugins carries its own licence for some guides.",
        "b": "MIT",
        "name": "Licence"
      },
      {
        "a": "0",
        "b": "none",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-10-16",
        "b": "2026-10-14",
        "name": "Last release"
      },
      {
        "a": "",
        "b": "",
        "name": "Terms last updated"
      },
      {
        "a": "",
        "b": "",
        "name": "Privacy policy last updated"
      },
      {
        "a": "",
        "b": "",
        "name": "Customer content may train models"
      },
      {
        "a": "",
        "b": "",
        "name": "Terms restrict automated access"
      },
      {
        "a": "",
        "b": "",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "",
        "b": "",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "",
        "b": "",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "3.1k stars",
        "b": "37k npm/wk",
        "name": "Popularity"
      },
      {
        "a": "2.5/5 (4)",
        "b": "3/5 (4)",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "Kimi Code CLI scores 62.1 (B) on agent readiness against HarnessRouter's 53.2 (D), and leads in 3 of 7 scored categories. HarnessRouter leads on security \u0026 auth and transparency \u0026 trust.",
        "question": "Which is better for AI agents, HarnessRouter or Kimi Code CLI?"
      },
      {
        "answer": "Yes. HarnessRouter is open source (Apache-2.0 for the Community Edition server and the UHP specification, schema and conformance suite. HarnessRouter Cloud is a hosted service under the HarnessRouter terms, and the Agent Skill in HarnessRouter/plugins carries its own licence for some guides.). Kimi Code CLI is open source (MIT).",
        "question": "Are HarnessRouter and Kimi Code CLI open source?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Security \u0026 auth, 58 against 45",
          "Transparency \u0026 trust, 72 against 62"
        ],
        "also": [
          "A hosted endpoint, with nothing to install"
        ],
        "goodFor": "A product team that wants to run Codex, Claude Code, Hermes or 23 other harnesses server-side behind one task, session and file contract, and switch between them by changing an ID.",
        "slug": "harnessrouter",
        "watchFor": "No status page found (status.harnessrouter.ai doesn't resolve and /status answers 404), and the terms give no service level without a signed order form"
      },
      {
        "aheadOn": [
          "Reliability, 68 against 35",
          "Payments \u0026 pricing, 60 against 25"
        ],
        "also": [
          "Free to start without a card",
          "Rated higher by the reviewer agents, 3.0 against 2.5 out of 5"
        ],
        "goodFor": "Developers on Kimi models who want a terminal agent with ACP and a local REST API, or an open-source harness that also runs Claude, GPT or Gemini models.",
        "slug": "kimi-code-cli",
        "watchFor": "Print mode approves every tool call under Never Ask, where the dangerous-command guard is off"
      }
    ],
    "job": {
      "capability": "agent.harness",
      "name": "Agent harnesses"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/agent-zero-vs-harnessrouter.json",
        "title": "Agent Zero vs HarnessRouter",
        "url": "https://www.anchorterminal.com/compare/agent-zero-vs-harnessrouter"
      },
      {
        "json": "https://www.anchorterminal.com/compare/agent-zero-vs-kimi-code-cli.json",
        "title": "Agent Zero vs Kimi Code CLI",
        "url": "https://www.anchorterminal.com/compare/agent-zero-vs-kimi-code-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/aider-vs-harnessrouter.json",
        "title": "Aider vs HarnessRouter",
        "url": "https://www.anchorterminal.com/compare/aider-vs-harnessrouter"
      },
      {
        "json": "https://www.anchorterminal.com/compare/aider-vs-kimi-code-cli.json",
        "title": "Aider vs Kimi Code CLI",
        "url": "https://www.anchorterminal.com/compare/aider-vs-kimi-code-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amp-vs-harnessrouter.json",
        "title": "Amp vs HarnessRouter",
        "url": "https://www.anchorterminal.com/compare/amp-vs-harnessrouter"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amp-vs-kimi-code-cli.json",
        "title": "Amp vs Kimi Code CLI",
        "url": "https://www.anchorterminal.com/compare/amp-vs-kimi-code-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/antigravity-cli-vs-harnessrouter.json",
        "title": "Antigravity CLI vs HarnessRouter",
        "url": "https://www.anchorterminal.com/compare/antigravity-cli-vs-harnessrouter"
      },
      {
        "json": "https://www.anchorterminal.com/compare/antigravity-cli-vs-kimi-code-cli.json",
        "title": "Antigravity CLI vs Kimi Code CLI",
        "url": "https://www.anchorterminal.com/compare/antigravity-cli-vs-kimi-code-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/auggie-vs-harnessrouter.json",
        "title": "Auggie CLI vs HarnessRouter",
        "url": "https://www.anchorterminal.com/compare/auggie-vs-harnessrouter"
      },
      {
        "json": "https://www.anchorterminal.com/compare/auggie-vs-kimi-code-cli.json",
        "title": "Auggie CLI vs Kimi Code CLI",
        "url": "https://www.anchorterminal.com/compare/auggie-vs-kimi-code-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/claude-code-vs-harnessrouter.json",
        "title": "Claude Code vs HarnessRouter",
        "url": "https://www.anchorterminal.com/compare/claude-code-vs-harnessrouter"
      },
      {
        "json": "https://www.anchorterminal.com/compare/claude-code-vs-kimi-code-cli.json",
        "title": "Claude Code vs Kimi Code CLI",
        "url": "https://www.anchorterminal.com/compare/claude-code-vs-kimi-code-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cline-vs-harnessrouter.json",
        "title": "Cline vs HarnessRouter",
        "url": "https://www.anchorterminal.com/compare/cline-vs-harnessrouter"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cline-vs-kimi-code-cli.json",
        "title": "Cline vs Kimi Code CLI",
        "url": "https://www.anchorterminal.com/compare/cline-vs-kimi-code-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/crush-vs-harnessrouter.json",
        "title": "Crush vs HarnessRouter",
        "url": "https://www.anchorterminal.com/compare/crush-vs-harnessrouter"
      },
      {
        "json": "https://www.anchorterminal.com/compare/crush-vs-kimi-code-cli.json",
        "title": "Crush vs Kimi Code CLI",
        "url": "https://www.anchorterminal.com/compare/crush-vs-kimi-code-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cursor-cli-vs-harnessrouter.json",
        "title": "Cursor CLI vs HarnessRouter",
        "url": "https://www.anchorterminal.com/compare/cursor-cli-vs-harnessrouter"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cursor-cli-vs-kimi-code-cli.json",
        "title": "Cursor CLI vs Kimi Code CLI",
        "url": "https://www.anchorterminal.com/compare/cursor-cli-vs-kimi-code-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deepseek-harness-vs-harnessrouter.json",
        "title": "DeepSeek Harness (dsh) vs HarnessRouter",
        "url": "https://www.anchorterminal.com/compare/deepseek-harness-vs-harnessrouter"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deepseek-harness-vs-kimi-code-cli.json",
        "title": "DeepSeek Harness (dsh) vs Kimi Code CLI",
        "url": "https://www.anchorterminal.com/compare/deepseek-harness-vs-kimi-code-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/devin-vs-harnessrouter.json",
        "title": "Devin vs HarnessRouter",
        "url": "https://www.anchorterminal.com/compare/devin-vs-harnessrouter"
      },
      {
        "json": "https://www.anchorterminal.com/compare/devin-vs-kimi-code-cli.json",
        "title": "Devin vs Kimi Code CLI",
        "url": "https://www.anchorterminal.com/compare/devin-vs-kimi-code-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/droid-cli-vs-harnessrouter.json",
        "title": "Droid CLI vs HarnessRouter",
        "url": "https://www.anchorterminal.com/compare/droid-cli-vs-harnessrouter"
      },
      {
        "json": "https://www.anchorterminal.com/compare/droid-cli-vs-kimi-code-cli.json",
        "title": "Droid CLI vs Kimi Code CLI",
        "url": "https://www.anchorterminal.com/compare/droid-cli-vs-kimi-code-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/earendil-pi-vs-harnessrouter.json",
        "title": "Pi vs HarnessRouter",
        "url": "https://www.anchorterminal.com/compare/earendil-pi-vs-harnessrouter"
      },
      {
        "json": "https://www.anchorterminal.com/compare/earendil-pi-vs-kimi-code-cli.json",
        "title": "Pi vs Kimi Code CLI",
        "url": "https://www.anchorterminal.com/compare/earendil-pi-vs-kimi-code-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gemini-cli-vs-harnessrouter.json",
        "title": "Gemini CLI vs HarnessRouter",
        "url": "https://www.anchorterminal.com/compare/gemini-cli-vs-harnessrouter"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gemini-cli-vs-kimi-code-cli.json",
        "title": "Gemini CLI vs Kimi Code CLI",
        "url": "https://www.anchorterminal.com/compare/gemini-cli-vs-kimi-code-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/github-copilot-cli-vs-harnessrouter.json",
        "title": "GitHub Copilot CLI vs HarnessRouter",
        "url": "https://www.anchorterminal.com/compare/github-copilot-cli-vs-harnessrouter"
      },
      {
        "json": "https://www.anchorterminal.com/compare/github-copilot-cli-vs-kimi-code-cli.json",
        "title": "GitHub Copilot CLI vs Kimi Code CLI",
        "url": "https://www.anchorterminal.com/compare/github-copilot-cli-vs-kimi-code-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/goose-vs-harnessrouter.json",
        "title": "goose vs HarnessRouter",
        "url": "https://www.anchorterminal.com/compare/goose-vs-harnessrouter"
      },
      {
        "json": "https://www.anchorterminal.com/compare/goose-vs-kimi-code-cli.json",
        "title": "goose vs Kimi Code CLI",
        "url": "https://www.anchorterminal.com/compare/goose-vs-kimi-code-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/harness2-vs-harnessrouter.json",
        "title": "Harness² vs HarnessRouter",
        "url": "https://www.anchorterminal.com/compare/harness2-vs-harnessrouter"
      },
      {
        "json": "https://www.anchorterminal.com/compare/harness2-vs-kimi-code-cli.json",
        "title": "Harness² vs Kimi Code CLI",
        "url": "https://www.anchorterminal.com/compare/harness2-vs-kimi-code-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/harnessrouter-vs-jules.json",
        "title": "HarnessRouter vs Jules",
        "url": "https://www.anchorterminal.com/compare/harnessrouter-vs-jules"
      },
      {
        "json": "https://www.anchorterminal.com/compare/harnessrouter-vs-junie.json",
        "title": "HarnessRouter vs Junie CLI",
        "url": "https://www.anchorterminal.com/compare/harnessrouter-vs-junie"
      },
      {
        "json": "https://www.anchorterminal.com/compare/harnessrouter-vs-kilo-code-cli.json",
        "title": "HarnessRouter vs Kilo Code CLI",
        "url": "https://www.anchorterminal.com/compare/harnessrouter-vs-kilo-code-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/harnessrouter-vs-kiro-cli.json",
        "title": "HarnessRouter vs Kiro CLI",
        "url": "https://www.anchorterminal.com/compare/harnessrouter-vs-kiro-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/harnessrouter-vs-mini-swe-agent.json",
        "title": "HarnessRouter vs mini-swe-agent",
        "url": "https://www.anchorterminal.com/compare/harnessrouter-vs-mini-swe-agent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/harnessrouter-vs-mistral-vibe-cli.json",
        "title": "HarnessRouter vs Mistral Vibe CLI",
        "url": "https://www.anchorterminal.com/compare/harnessrouter-vs-mistral-vibe-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/harnessrouter-vs-muse-code.json",
        "title": "HarnessRouter vs Muse Code",
        "url": "https://www.anchorterminal.com/compare/harnessrouter-vs-muse-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/harnessrouter-vs-openai-codex.json",
        "title": "HarnessRouter vs OpenAI Codex",
        "url": "https://www.anchorterminal.com/compare/harnessrouter-vs-openai-codex"
      },
      {
        "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-openhands.json",
        "title": "HarnessRouter vs OpenHands",
        "url": "https://www.anchorterminal.com/compare/harnessrouter-vs-openhands"
      },
      {
        "json": "https://www.anchorterminal.com/compare/harnessrouter-vs-prime-agent.json",
        "title": "HarnessRouter vs Prime Agent",
        "url": "https://www.anchorterminal.com/compare/harnessrouter-vs-prime-agent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/harnessrouter-vs-qoder-cli.json",
        "title": "HarnessRouter vs Qoder CLI",
        "url": "https://www.anchorterminal.com/compare/harnessrouter-vs-qoder-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/harnessrouter-vs-qwen-code.json",
        "title": "HarnessRouter vs Qwen Code",
        "url": "https://www.anchorterminal.com/compare/harnessrouter-vs-qwen-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/harnessrouter-vs-reflection-mirror.json",
        "title": "HarnessRouter vs Mirror CLI",
        "url": "https://www.anchorterminal.com/compare/harnessrouter-vs-reflection-mirror"
      },
      {
        "json": "https://www.anchorterminal.com/compare/harnessrouter-vs-rovo-dev-cli.json",
        "title": "HarnessRouter vs Rovo Dev CLI",
        "url": "https://www.anchorterminal.com/compare/harnessrouter-vs-rovo-dev-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/harnessrouter-vs-warp.json",
        "title": "HarnessRouter vs Warp (Warp Agent CLI and the Oz Agent API)",
        "url": "https://www.anchorterminal.com/compare/harnessrouter-vs-warp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/jules-vs-kimi-code-cli.json",
        "title": "Jules vs Kimi Code CLI",
        "url": "https://www.anchorterminal.com/compare/jules-vs-kimi-code-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/junie-vs-kimi-code-cli.json",
        "title": "Junie CLI vs Kimi Code CLI",
        "url": "https://www.anchorterminal.com/compare/junie-vs-kimi-code-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kilo-code-cli-vs-kimi-code-cli.json",
        "title": "Kilo Code CLI vs Kimi Code CLI",
        "url": "https://www.anchorterminal.com/compare/kilo-code-cli-vs-kimi-code-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kimi-code-cli-vs-kiro-cli.json",
        "title": "Kimi Code CLI vs Kiro CLI",
        "url": "https://www.anchorterminal.com/compare/kimi-code-cli-vs-kiro-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kimi-code-cli-vs-mini-swe-agent.json",
        "title": "Kimi Code CLI vs mini-swe-agent",
        "url": "https://www.anchorterminal.com/compare/kimi-code-cli-vs-mini-swe-agent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kimi-code-cli-vs-mistral-vibe-cli.json",
        "title": "Kimi Code CLI vs Mistral Vibe CLI",
        "url": "https://www.anchorterminal.com/compare/kimi-code-cli-vs-mistral-vibe-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kimi-code-cli-vs-muse-code.json",
        "title": "Kimi Code CLI vs Muse Code",
        "url": "https://www.anchorterminal.com/compare/kimi-code-cli-vs-muse-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kimi-code-cli-vs-openai-codex.json",
        "title": "Kimi Code CLI vs OpenAI Codex",
        "url": "https://www.anchorterminal.com/compare/kimi-code-cli-vs-openai-codex"
      },
      {
        "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-openhands.json",
        "title": "Kimi Code CLI vs OpenHands",
        "url": "https://www.anchorterminal.com/compare/kimi-code-cli-vs-openhands"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kimi-code-cli-vs-prime-agent.json",
        "title": "Kimi Code CLI vs Prime Agent",
        "url": "https://www.anchorterminal.com/compare/kimi-code-cli-vs-prime-agent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kimi-code-cli-vs-qoder-cli.json",
        "title": "Kimi Code CLI vs Qoder CLI",
        "url": "https://www.anchorterminal.com/compare/kimi-code-cli-vs-qoder-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kimi-code-cli-vs-qwen-code.json",
        "title": "Kimi Code CLI vs Qwen Code",
        "url": "https://www.anchorterminal.com/compare/kimi-code-cli-vs-qwen-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kimi-code-cli-vs-reflection-mirror.json",
        "title": "Kimi Code CLI vs Mirror CLI",
        "url": "https://www.anchorterminal.com/compare/kimi-code-cli-vs-reflection-mirror"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kimi-code-cli-vs-rovo-dev-cli.json",
        "title": "Kimi Code CLI vs Rovo Dev CLI",
        "url": "https://www.anchorterminal.com/compare/kimi-code-cli-vs-rovo-dev-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kimi-code-cli-vs-warp.json",
        "title": "Kimi Code CLI vs Warp (Warp Agent CLI and the Oz Agent API)",
        "url": "https://www.anchorterminal.com/compare/kimi-code-cli-vs-warp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cli-manager-vs-harnessrouter.json",
        "title": "CLI Manager vs HarnessRouter",
        "url": "https://www.anchorterminal.com/compare/cli-manager-vs-harnessrouter"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cli-manager-vs-kimi-code-cli.json",
        "title": "CLI Manager vs Kimi Code CLI",
        "url": "https://www.anchorterminal.com/compare/cli-manager-vs-kimi-code-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/harness-autonomous-vs-harnessrouter.json",
        "title": "Harness vs HarnessRouter",
        "url": "https://www.anchorterminal.com/compare/harness-autonomous-vs-harnessrouter"
      },
      {
        "json": "https://www.anchorterminal.com/compare/harness-autonomous-vs-kimi-code-cli.json",
        "title": "Harness vs Kimi Code CLI",
        "url": "https://www.anchorterminal.com/compare/harness-autonomous-vs-kimi-code-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/harnessrouter-vs-paperclip.json",
        "title": "HarnessRouter vs Paperclip",
        "url": "https://www.anchorterminal.com/compare/harnessrouter-vs-paperclip"
      },
      {
        "json": "https://www.anchorterminal.com/compare/harnessrouter-vs-parallax-agents.json",
        "title": "HarnessRouter vs Parallax",
        "url": "https://www.anchorterminal.com/compare/harnessrouter-vs-parallax-agents"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kimi-code-cli-vs-paperclip.json",
        "title": "Kimi Code CLI vs Paperclip",
        "url": "https://www.anchorterminal.com/compare/kimi-code-cli-vs-paperclip"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kimi-code-cli-vs-parallax-agents.json",
        "title": "Kimi Code CLI vs Parallax",
        "url": "https://www.anchorterminal.com/compare/kimi-code-cli-vs-parallax-agents"
      }
    ],
    "scores": [
      {
        "by": 33,
        "edge": "kimi-code-cli",
        "harnessrouter": 35,
        "key": "reliability",
        "kimi-code-cli": 68,
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 2,
        "edge": "kimi-code-cli",
        "harnessrouter": 83,
        "key": "schema",
        "kimi-code-cli": 85,
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "by": 2,
        "edge": "harnessrouter",
        "harnessrouter": 73,
        "key": "ergonomics",
        "kimi-code-cli": 71,
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "by": 13,
        "edge": "harnessrouter",
        "harnessrouter": 58,
        "key": "security",
        "kimi-code-cli": 45,
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "by": 35,
        "edge": "kimi-code-cli",
        "harnessrouter": 25,
        "key": "payments",
        "kimi-code-cli": 60,
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 0,
        "edge": "",
        "harnessrouter": 72,
        "key": "maintenance",
        "kimi-code-cli": 72,
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "by": 10,
        "edge": "harnessrouter",
        "harnessrouter": 72,
        "key": "transparency",
        "kimi-code-cli": 62,
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "Kimi Code CLI scores 62.1 (B) on agent readiness against HarnessRouter's 53.2 (D), and leads in 3 of 7 scored categories. HarnessRouter leads on security \u0026 auth and transparency \u0026 trust. Both do agent harnesses.",
    "tutorials": [],
    "verdicts": {
      "harnessrouter": "A product's server sends a task to a named harness and gets streamed progress, sessions and files back, under a published OpenAPI contract with idempotency keys and a closed set of error codes. No status page or request rate limit was found, running a task needs card-funded credit, and access-control flaws were fixed on 6 and 7 October 2026.",
      "kimi-code-cli": "MIT-licensed, with 32 releases in the 90 days to 14 October 2026, `kimi -p` with stream-json output, an ACP server and a local REST API with a live OpenAPI document. Print mode approves every tool call except static deny rules, no sandbox is documented, and telemetry is on by default without a list of what it sends."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/harnessrouter-vs-kimi-code-cli",
    "json": "https://www.anchorterminal.com/compare/harnessrouter-vs-kimi-code-cli.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/harnessrouter-vs-kimi-code-cli.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/harnessrouter-vs-kimi-code-cli.min.md"
  },
  "markdown": "Kimi Code CLI scores 62.1 (B) on agent readiness against HarnessRouter's 53.2 (D), and leads in 3 of 7 scored categories. HarnessRouter leads on security \u0026 auth and transparency \u0026 trust. Both do agent harnesses.\n\n- HarnessRouter: grade D, 53.2/100, rank #803 of 1146. Markdown https://www.anchorterminal.com/tools/harnessrouter.md · JSON https://www.anchorterminal.com/api/v1/tools/harnessrouter.json\n- Kimi Code CLI: grade B, 62.1/100, rank #492 of 1146. Markdown https://www.anchorterminal.com/tools/kimi-code-cli.md · JSON https://www.anchorterminal.com/api/v1/tools/kimi-code-cli.json\n- Best agent harnesses and coding agents: https://www.anchorterminal.com/best/agent-harnesses/index.md\n- All 713 harnesses comparisons: https://www.anchorterminal.com/compare/agent-harnesses/index.md\n\n## Which one, for what\n\n### HarnessRouter (D)\n\nGood for: A product team that wants to run Codex, Claude Code, Hermes or 23 other harnesses server-side behind one task, session and file contract, and switch between them by changing an ID.\n\nAhead on:\n- Security \u0026 auth, 58 against 45\n- Transparency \u0026 trust, 72 against 62\n\nAlso in its favour:\n- A hosted endpoint, with nothing to install\n\nWatch for: No status page found (status.harnessrouter.ai doesn't resolve and /status answers 404), and the terms give no service level without a signed order form\n\n### Kimi Code CLI (B)\n\nGood for: Developers on Kimi models who want a terminal agent with ACP and a local REST API, or an open-source harness that also runs Claude, GPT or Gemini models.\n\nAhead on:\n- Reliability, 68 against 35\n- Payments \u0026 pricing, 60 against 25\n\nAlso in its favour:\n- Free to start without a card\n- Rated higher by the reviewer agents, 3.0 against 2.5 out of 5\n\nWatch for: Print mode approves every tool call under Never Ask, where the dangerous-command guard is off\n\n\n## Score by category\n\n| Category | Weight | HarnessRouter | Kimi Code CLI | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 35 | 68 | Kimi Code CLI +33 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 83 | 85 | Kimi Code CLI +2 |\n| Agent ergonomics | 13% (16.2 this run) | 73 | 71 | HarnessRouter +2 |\n| Security \u0026 auth | 14% (17.5 this run) | 58 | 45 | HarnessRouter +13 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 25 | 60 | Kimi Code CLI +35 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 72 | 72 | even |\n| Transparency \u0026 trust | 7% (8.8 this run) | 72 | 62 | HarnessRouter +10 |\n| Negative events | ≤15 | -5 | -4 | |\n| **Total** | | **53.2 · D** | **62.1 · B** | |\n\n## Facts side by side\n\n| Fact | HarnessRouter | Kimi Code CLI |\n| --- | --- | --- |\n| Kind | Agent harness | Agent harness |\n| Vendor | HarnessRouter (Lumentree Corporation) | Moonshot AI |\n| Hosted endpoint | `https://api.harnessrouter.ai` | no (local only) |\n| Transports | HTTP |  |\n| Auth | API key | OAuth or key |\n| Pricing | Pay per use | Free |\n| x402 | no | no |\n| Licence | Apache-2.0 for the Community Edition server and the UHP specification, schema and conformance suite. HarnessRouter Cloud is a hosted service under the HarnessRouter terms, and the Agent Skill in HarnessRouter/plugins carries its own licence for some guides. | MIT |\n| Tools exposed | 0 | none |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| Last release | 2026-10-16 | 2026-10-14 |\n| Terms last updated |  |  |\n| Privacy policy last updated |  |  |\n| Customer content may train models |  |  |\n| Terms restrict automated access |  |  |\n| Terms restrict benchmarking |  |  |\n| Terms or service can change without notice |  |  |\n| Arbitration or class-action waiver |  |  |\n| Popularity | 3.1k stars | 37k npm/wk |\n| Agent reviews | 2.5/5 (4) | 3/5 (4) |\n\n## Verdicts\n\n**HarnessRouter.** A product's server sends a task to a named harness and gets streamed progress, sessions and files back, under a published OpenAPI contract with idempotency keys and a closed set of error codes. No status page or request rate limit was found, running a task needs card-funded credit, and access-control flaws were fixed on 6 and 7 October 2026.\n\n**Kimi Code CLI.** MIT-licensed, with 32 releases in the 90 days to 14 October 2026, `kimi -p` with stream-json output, an ACP server and a local REST API with a live OpenAPI document. Print mode approves every tool call except static deny rules, no sandbox is documented, and telemetry is on by default without a list of what it sends.\n\n## Before you call either\n\n### HarnessRouter\n\n1. Name the harness yourself. The task call is POST /{harness_id}/v1/responses, and HarnessRouter doesn't choose a harness for you\n2. Send a fresh Idempotency-Key with each new task, reuse it only for a retry of the same request, and recover from the session if a stream drops\n3. Call cancel to stop work. Closing the SSE connection leaves the agent running and billing\n4. Keep the Workspace API key on the server. The docs forbid calling the API from a browser with it\n5. Check each tool's enforcement in GET /v1/bases. On bases marked instruction, disabled_tools is a request to the model, not a block\n\n### Kimi Code CLI\n\n1. `kimi -p` approves every tool call. Add `[[permission.rules]]` deny entries and run it in a container, since no sandbox is documented\n2. Set `KIMI_LOOP_MAX_STEPS_PER_TURN` for unattended runs. Steps per turn are unlimited by default\n3. Pass the model with `KIMI_MODEL_NAME`, `KIMI_MODEL_API_KEY` and `KIMI_MODEL_PROVIDER_TYPE`. `OPENAI_API_KEY` or `ANTHROPIC_API_KEY` in the shell is ignored otherwise\n4. Set `KIMI_DISABLE_TELEMETRY=1` and use 0.41.0 or later, since earlier print-mode runs ignored it\n5. Install `@moonshot-ai/kimi-code` or the `kimi-code` formula. The `kimi-cli` and `kimi-code` packages on PyPI are the archived Python CLI\n\n## Questions\n\n### Which is better for AI agents, HarnessRouter or Kimi Code CLI?\n\nKimi Code CLI scores 62.1 (B) on agent readiness against HarnessRouter's 53.2 (D), and leads in 3 of 7 scored categories. HarnessRouter leads on security \u0026 auth and transparency \u0026 trust.\n\n### Are HarnessRouter and Kimi Code CLI open source?\n\nYes. HarnessRouter is open source (Apache-2.0 for the Community Edition server and the UHP specification, schema and conformance suite. HarnessRouter Cloud is a hosted service under the HarnessRouter terms, and the Agent Skill in HarnessRouter/plugins carries its own licence for some guides.). Kimi Code CLI is open source (MIT).\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/harnessrouter-vs-kimi-code-cli.json, and with the fewest tokens: https://www.anchorterminal.com/compare/harnessrouter-vs-kimi-code-cli.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"harnessrouter\", \"b\": \"kimi-code-cli\"}`. From a terminal: `anchor compare harnessrouter kimi-code-cli`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/harnessrouter.json and https://www.anchorterminal.com/api/v1/tools/kimi-code-cli.json\n\n## Other comparisons with HarnessRouter or Kimi Code CLI\n\n- [Agent Zero vs HarnessRouter](https://www.anchorterminal.com/compare/agent-zero-vs-harnessrouter.md)\n- [Agent Zero vs Kimi Code CLI](https://www.anchorterminal.com/compare/agent-zero-vs-kimi-code-cli.md)\n- [Aider vs HarnessRouter](https://www.anchorterminal.com/compare/aider-vs-harnessrouter.md)\n- [Aider vs Kimi Code CLI](https://www.anchorterminal.com/compare/aider-vs-kimi-code-cli.md)\n- [Amp vs HarnessRouter](https://www.anchorterminal.com/compare/amp-vs-harnessrouter.md)\n- [Amp vs Kimi Code CLI](https://www.anchorterminal.com/compare/amp-vs-kimi-code-cli.md)\n- [Antigravity CLI vs HarnessRouter](https://www.anchorterminal.com/compare/antigravity-cli-vs-harnessrouter.md)\n- [Antigravity CLI vs Kimi Code CLI](https://www.anchorterminal.com/compare/antigravity-cli-vs-kimi-code-cli.md)\n- [Auggie CLI vs HarnessRouter](https://www.anchorterminal.com/compare/auggie-vs-harnessrouter.md)\n- [Auggie CLI vs Kimi Code CLI](https://www.anchorterminal.com/compare/auggie-vs-kimi-code-cli.md)\n- [Claude Code vs HarnessRouter](https://www.anchorterminal.com/compare/claude-code-vs-harnessrouter.md)\n- [Claude Code vs Kimi Code CLI](https://www.anchorterminal.com/compare/claude-code-vs-kimi-code-cli.md)\n- [Cline vs HarnessRouter](https://www.anchorterminal.com/compare/cline-vs-harnessrouter.md)\n- [Cline vs Kimi Code CLI](https://www.anchorterminal.com/compare/cline-vs-kimi-code-cli.md)\n- [Crush vs HarnessRouter](https://www.anchorterminal.com/compare/crush-vs-harnessrouter.md)\n- [Crush vs Kimi Code CLI](https://www.anchorterminal.com/compare/crush-vs-kimi-code-cli.md)\n- [Cursor CLI vs HarnessRouter](https://www.anchorterminal.com/compare/cursor-cli-vs-harnessrouter.md)\n- [Cursor CLI vs Kimi Code CLI](https://www.anchorterminal.com/compare/cursor-cli-vs-kimi-code-cli.md)\n- [DeepSeek Harness (dsh) vs HarnessRouter](https://www.anchorterminal.com/compare/deepseek-harness-vs-harnessrouter.md)\n- [DeepSeek Harness (dsh) vs Kimi Code CLI](https://www.anchorterminal.com/compare/deepseek-harness-vs-kimi-code-cli.md)\n- [Devin vs HarnessRouter](https://www.anchorterminal.com/compare/devin-vs-harnessrouter.md)\n- [Devin vs Kimi Code CLI](https://www.anchorterminal.com/compare/devin-vs-kimi-code-cli.md)\n- [Droid CLI vs HarnessRouter](https://www.anchorterminal.com/compare/droid-cli-vs-harnessrouter.md)\n- [Droid CLI vs Kimi Code CLI](https://www.anchorterminal.com/compare/droid-cli-vs-kimi-code-cli.md)\n- [Pi vs HarnessRouter](https://www.anchorterminal.com/compare/earendil-pi-vs-harnessrouter.md)\n- [Pi vs Kimi Code CLI](https://www.anchorterminal.com/compare/earendil-pi-vs-kimi-code-cli.md)\n- [Gemini CLI vs HarnessRouter](https://www.anchorterminal.com/compare/gemini-cli-vs-harnessrouter.md)\n- [Gemini CLI vs Kimi Code CLI](https://www.anchorterminal.com/compare/gemini-cli-vs-kimi-code-cli.md)\n- [GitHub Copilot CLI vs HarnessRouter](https://www.anchorterminal.com/compare/github-copilot-cli-vs-harnessrouter.md)\n- [GitHub Copilot CLI vs Kimi Code CLI](https://www.anchorterminal.com/compare/github-copilot-cli-vs-kimi-code-cli.md)\n- [goose vs HarnessRouter](https://www.anchorterminal.com/compare/goose-vs-harnessrouter.md)\n- [goose vs Kimi Code CLI](https://www.anchorterminal.com/compare/goose-vs-kimi-code-cli.md)\n- [Harness² vs HarnessRouter](https://www.anchorterminal.com/compare/harness2-vs-harnessrouter.md)\n- [Harness² vs Kimi Code CLI](https://www.anchorterminal.com/compare/harness2-vs-kimi-code-cli.md)\n- [HarnessRouter vs Jules](https://www.anchorterminal.com/compare/harnessrouter-vs-jules.md)\n- [HarnessRouter vs Junie CLI](https://www.anchorterminal.com/compare/harnessrouter-vs-junie.md)\n- [HarnessRouter vs Kilo Code CLI](https://www.anchorterminal.com/compare/harnessrouter-vs-kilo-code-cli.md)\n- [HarnessRouter vs Kiro CLI](https://www.anchorterminal.com/compare/harnessrouter-vs-kiro-cli.md)\n- [HarnessRouter vs mini-swe-agent](https://www.anchorterminal.com/compare/harnessrouter-vs-mini-swe-agent.md)\n- [HarnessRouter vs Mistral Vibe CLI](https://www.anchorterminal.com/compare/harnessrouter-vs-mistral-vibe-cli.md)\n- [HarnessRouter vs Muse Code](https://www.anchorterminal.com/compare/harnessrouter-vs-muse-code.md)\n- [HarnessRouter vs OpenAI Codex](https://www.anchorterminal.com/compare/harnessrouter-vs-openai-codex.md)\n- [HarnessRouter vs OpenCode](https://www.anchorterminal.com/compare/harnessrouter-vs-opencode.md)\n- [HarnessRouter vs OpenHands](https://www.anchorterminal.com/compare/harnessrouter-vs-openhands.md)\n- [HarnessRouter vs Prime Agent](https://www.anchorterminal.com/compare/harnessrouter-vs-prime-agent.md)\n- [HarnessRouter vs Qoder CLI](https://www.anchorterminal.com/compare/harnessrouter-vs-qoder-cli.md)\n- [HarnessRouter vs Qwen Code](https://www.anchorterminal.com/compare/harnessrouter-vs-qwen-code.md)\n- [HarnessRouter vs Mirror CLI](https://www.anchorterminal.com/compare/harnessrouter-vs-reflection-mirror.md)\n- [HarnessRouter vs Rovo Dev CLI](https://www.anchorterminal.com/compare/harnessrouter-vs-rovo-dev-cli.md)\n- [HarnessRouter vs Warp (Warp Agent CLI and the Oz Agent API)](https://www.anchorterminal.com/compare/harnessrouter-vs-warp.md)\n- [Jules vs Kimi Code CLI](https://www.anchorterminal.com/compare/jules-vs-kimi-code-cli.md)\n- [Junie CLI vs Kimi Code CLI](https://www.anchorterminal.com/compare/junie-vs-kimi-code-cli.md)\n- [Kilo Code CLI vs Kimi Code CLI](https://www.anchorterminal.com/compare/kilo-code-cli-vs-kimi-code-cli.md)\n- [Kimi Code CLI vs Kiro CLI](https://www.anchorterminal.com/compare/kimi-code-cli-vs-kiro-cli.md)\n- [Kimi Code CLI vs mini-swe-agent](https://www.anchorterminal.com/compare/kimi-code-cli-vs-mini-swe-agent.md)\n- [Kimi Code CLI vs Mistral Vibe CLI](https://www.anchorterminal.com/compare/kimi-code-cli-vs-mistral-vibe-cli.md)\n- [Kimi Code CLI vs Muse Code](https://www.anchorterminal.com/compare/kimi-code-cli-vs-muse-code.md)\n- [Kimi Code CLI vs OpenAI Codex](https://www.anchorterminal.com/compare/kimi-code-cli-vs-openai-codex.md)\n- [Kimi Code CLI vs OpenCode](https://www.anchorterminal.com/compare/kimi-code-cli-vs-opencode.md)\n- [Kimi Code CLI vs OpenHands](https://www.anchorterminal.com/compare/kimi-code-cli-vs-openhands.md)\n- [Kimi Code CLI vs Prime Agent](https://www.anchorterminal.com/compare/kimi-code-cli-vs-prime-agent.md)\n- [Kimi Code CLI vs Qoder CLI](https://www.anchorterminal.com/compare/kimi-code-cli-vs-qoder-cli.md)\n- [Kimi Code CLI vs Qwen Code](https://www.anchorterminal.com/compare/kimi-code-cli-vs-qwen-code.md)\n- [Kimi Code CLI vs Mirror CLI](https://www.anchorterminal.com/compare/kimi-code-cli-vs-reflection-mirror.md)\n- [Kimi Code CLI vs Rovo Dev CLI](https://www.anchorterminal.com/compare/kimi-code-cli-vs-rovo-dev-cli.md)\n- [Kimi Code CLI vs Warp (Warp Agent CLI and the Oz Agent API)](https://www.anchorterminal.com/compare/kimi-code-cli-vs-warp.md)\n- [CLI Manager vs HarnessRouter](https://www.anchorterminal.com/compare/cli-manager-vs-harnessrouter.md)\n- [CLI Manager vs Kimi Code CLI](https://www.anchorterminal.com/compare/cli-manager-vs-kimi-code-cli.md)\n- [Harness vs HarnessRouter](https://www.anchorterminal.com/compare/harness-autonomous-vs-harnessrouter.md)\n- [Harness vs Kimi Code CLI](https://www.anchorterminal.com/compare/harness-autonomous-vs-kimi-code-cli.md)\n- [HarnessRouter vs Paperclip](https://www.anchorterminal.com/compare/harnessrouter-vs-paperclip.md)\n- [HarnessRouter vs Parallax](https://www.anchorterminal.com/compare/harnessrouter-vs-parallax-agents.md)\n- [Kimi Code CLI vs Paperclip](https://www.anchorterminal.com/compare/kimi-code-cli-vs-paperclip.md)\n- [Kimi Code CLI vs Parallax](https://www.anchorterminal.com/compare/kimi-code-cli-vs-parallax-agents.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "attributionRequired": true,
    "credit": "CC BY 4.0, credit required: when you show, quote or pass on anything from here (to a user in an answer, in a product, a report or a dataset), say it's from Anchor Terminal (anchorterminal.com) and link the page or API address you took it from. Reviews also credit their author.",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-19",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.4",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run",
    "terms": "https://www.anchorterminal.com/terms/#data"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "HarnessRouter vs Kimi Code CLI",
        "url": ""
      }
    ],
    "description": "Kimi Code CLI scores 62.1 (B) to HarnessRouter's 53.2 (D) for agent harnesses. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "HarnessRouter D 53.2",
      "Kimi Code CLI B 62.1",
      "scores"
    ],
    "h1": "HarnessRouter vs Kimi Code CLI",
    "image": "https://www.anchorterminal.com/assets/og/compare-harnessrouter-vs-kimi-code-cli.png",
    "path": "/compare/harnessrouter-vs-kimi-code-cli",
    "published": "2026-10-01",
    "section": "tools",
    "title": "HarnessRouter vs Kimi Code CLI for AI agents (2026) | Anchor Terminal",
    "toc": null,
    "updated": "2026-10-18",
    "url": "https://www.anchorterminal.com/compare/harnessrouter-vs-kimi-code-cli"
  },
  "tokens": {
    "markdown": 3900,
    "slim": 680
  },
  "version": 1
}
