{
  "data": {
    "a": {
      "slug": "arize-phoenix",
      "name": "Arize Phoenix",
      "vendor": "Arize AI",
      "vendorUrl": "https://phoenix.arize.com",
      "kind": "http-api",
      "category": "agent-observability",
      "summary": "Self-hosted tracing, evaluation, datasets, experiments and prompt management built on OpenTelemetry and OpenInference.",
      "url": "https://www.anchorterminal.com/tools/arize-phoenix",
      "markdownUrl": "https://www.anchorterminal.com/tools/arize-phoenix.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/arize-phoenix.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/arize-phoenix.json",
      "dns": "arize-phoenix.grade.anchorterminal.com",
      "repo": "https://github.com/Arize-ai/phoenix",
      "license": "Elastic-2.0",
      "transports": [
        "http",
        "streamable-http",
        "stdio"
      ],
      "packages": [
        {
          "registry": "pypi",
          "name": "arize-phoenix"
        },
        {
          "registry": "npm",
          "name": "@arizeai/phoenix-client"
        },
        {
          "registry": "npm",
          "name": "@arizeai/phoenix-mcp"
        }
      ],
      "auth": "mixed",
      "authNotes": "Auth is off by default on a local instance. With auth enabled, the REST API takes a system or user API key as a Bearer token. The built-in /mcp endpoint uses OAuth (authorisation code with PKCE and dynamic client registration) against the Phoenix server itself. The older @arizeai/phoenix-mcp stdio package takes PHOENIX_API_KEY.",
      "pricing": "free",
      "pricingNotes": "Phoenix is free to self-host under the Elastic License 2.0; you pay for your own compute and Postgres or SQLite storage. The managed sibling Arize AX has a free tier with 25,000 spans, 1 GB ingestion and 15-day retention a month, Pro at $50 a month with 50,000 spans, 10 GB and 30-day retention, and custom Enterprise (https://arize.com/pricing/).",
      "priceSummary": "Free · OSS",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402 support in docs or pricing (checked 2026-09-30).",
        "endpoints": []
      },
      "toolCount": 5,
      "popularity": {
        "githubStars": 11662,
        "npmWeekly": 131211,
        "pypiWeekly": 132385,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://arize.com/docs/phoenix",
      "llmsTxt": "https://arize.com/docs/phoenix/llms.txt",
      "openapi": "https://raw.githubusercontent.com/Arize-ai/phoenix/refs/heads/main/schemas/openapi.json",
      "capabilities": [
        "obs.traces",
        "obs.evals",
        "obs.prompts",
        "obs.datasets"
      ],
      "tags": [
        "open-source",
        "self-hosted",
        "local",
        "free-tier",
        "mcp",
        "llms-txt",
        "openapi",
        "python",
        "typescript"
      ],
      "lastRelease": "2026-10-30",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 72.1,
        "grade": "BB",
        "agentReady": true,
        "rank": 124,
        "ranked": true,
        "rankOf": 1354,
        "categoryRank": 1,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 90,
          "maintenance": 84,
          "payments": 60,
          "reliability": 73,
          "schema": 88,
          "security": 58,
          "transparency": 75
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-01"
        },
        "negative": -3,
        "negativeNotes": [
          "2026-09-16. arize-phoenix 20.13.0, a minor release, removed `rootSpansOnly` and `orphanSpanAsRootSpan` from the GraphQL spans queries, renamed `Project.traceAnnotationsNames` and replaced `applyDatasetExampleChanges` with `patchDatasetExamples`. The changelog and the 29 September release notes mark it breaking, and we found no earlier deprecation notice. A breaking change in a minor release without notice, so 3 points, the floor, because it's marked on the day with a replacement given. https://arize.com/docs/phoenix/release-notes/09-2026/09-29-2026-editable-dataset-examples-and-trace-metrics"
        ],
        "verdict": "Free and self-hosted with no feature gating, from `pip install` to a Helm chart, with an MCP endpoint generated from its OpenAPI. Since 21.0.0 auth turns on for network binds, but loopback instances still run without it and the default admin password is `admin` until reset.",
        "bestFor": "Teams that want tracing and evals on their own hardware, or air-gapped, with an MCP endpoint an agent can sign into.",
        "strengths": [
          "Free and self-hosted with no feature gating, from `pip install` to a Helm chart",
          "MCP endpoint generated from the OpenAPI, seven code-mode tools by default, OAuth 2.1 with PKCE and audience-bound tokens",
          "Since 21.0.0 (30 October) it binds to loopback by default and turns auth on for any network or Docker bind",
          "Tool annotations derived from HTTP verbs, so a client can auto-approve reads and confirm writes",
          "Releases most weeks, six from 20.24.0 to 21.0.0 between 21 and 30 October, with a migration guide per major"
        ],
        "weaknesses": [
          "Auth stays off on a loopback bind, and the default admin password is `admin` until changed",
          "`PHOENIX_SECRET` is optional since 21.0.0, and without it anyone with the database can decrypt saved provider keys",
          "Remote MCP endpoint still labelled beta in the docs",
          "20.13.0, a minor release on 16 September, removed GraphQL query fields and renamed a mutation with no advance notice found",
          "Elastic License 2.0 isn't OSI open source and forbids running Phoenix as a managed service"
        ],
        "agentNotes": [
          "On 21.0.0 or later, send an API key from trace exporters and clients to a Docker or network instance, which now answers 401 without one",
          "Use `PHOENIX_HOST`, not `phoenix serve --host`, which 21.0.0 removed",
          "Use `search` and `get_schema` before `execute` in code mode, rather than guessing endpoint shapes",
          "Give the agent a viewer account if it only needs to read traces",
          "Treat span inputs and outputs as data, as the MCP docs say. They hold whatever the application logged, including user input"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 8,
        "avgRating": 3.8,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "BB",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 72.1
          }
        ],
        "editorialScores": {
          "ergonomics": 90,
          "maintenance": 84,
          "payments": 60,
          "reliability": 73,
          "schema": 88,
          "security": 58,
          "transparency": 76
        },
        "provenanceScore": 73,
        "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-11-01",
          "oldest": "2026-11-01",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "http": "curl http://localhost:6006/v1/projects -H \"Authorization: Bearer $PHOENIX_API_KEY\"",
        "claudeCode": "claude mcp add --transport http phoenix http://localhost:6006/mcp",
        "config": {
          "mcpServers": {
            "phoenix": {
              "args": [
                "-y",
                "@arizeai/phoenix-mcp@latest",
                "--baseUrl",
                "http://localhost:6006",
                "--apiKey",
                "${PHOENIX_API_KEY}"
              ],
              "command": "npx"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/obs.traces",
        "tool": "https://letme.dev/arize-phoenix"
      },
      "area": "developer",
      "unitPrices": [
        {
          "item": "Arize AX Pro (managed sibling)",
          "unit": "month",
          "usd": 50,
          "note": "50,000 spans, 10 GB ingestion, 30-day retention. Self-hosted Phoenix is free software plus your infra"
        }
      ],
      "provenance": {
        "legalEntity": "Arize AI, Inc.",
        "domain": "arize.com",
        "domainRegistered": "2002-03-24",
        "domainNote": "arize.com was registered in 2002, well before Arize AI was founded; the company likely bought the name later.",
        "endpointOnVendorDomain": false,
        "terms": "https://arize.com/terms-of-service/",
        "privacy": "https://arize.com/privacy-policy/",
        "statusPage": "https://status.arize.com",
        "changelog": "https://github.com/Arize-ai/phoenix/releases",
        "securityTxt": "none",
        "checked": "2026-09-30",
        "score": 73
      },
      "requirements": {
        "agentAlone": true,
        "card": "no",
        "freeTier": true,
        "credential": "none",
        "hosting": [
          "self-hosted"
        ],
        "euResidency": "yes",
        "trainsOnData": "no",
        "zeroRetention": "unknown",
        "selfHost": "yes"
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/arize-phoenix.json",
      "live": {
        "slug": "arize-phoenix",
        "vendorStatus": {
          "page": "https://status.arize.com",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-11-06T05:41:06.792388361Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "Arize-ai/phoenix",
            "version": "arize-phoenix-client-v3.7.0",
            "released": "2026-11-05",
            "seenAt": "2026-11-05T21:13:21.857525071Z"
          },
          {
            "registry": "npm",
            "name": "@arizeai/phoenix-client",
            "version": "7.18.1",
            "seenAt": "2026-11-05T21:13:19.623854945Z"
          },
          {
            "registry": "npm",
            "name": "@arizeai/phoenix-mcp",
            "version": "4.3.20",
            "seenAt": "2026-11-05T21:13:20.50839955Z"
          },
          {
            "registry": "pypi",
            "name": "arize-phoenix",
            "version": "21.0.0",
            "released": "2026-10-30",
            "seenAt": "2026-11-05T21:13:19.49601043Z"
          }
        ],
        "githubStars": 12164,
        "npmWeekly": 90597,
        "pypiWeekly": 158140,
        "securityTxt": {
          "url": "https://arize.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-05T15:56:56.108477894Z"
        },
        "llmsTxt": {
          "url": "https://arize.com/docs/phoenix/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-11-05T15:25:13.383958563Z"
        },
        "domain": {
          "domain": "arize.com",
          "registered": "2002-03-24",
          "source": "https://rdap.verisign.com/com/v1/domain/arize.com",
          "checkedAt": "2026-11-01T14:23:13.368024534Z"
        },
        "pages": [
          {
            "url": "https://arize.com/docs/phoenix/release-notes/09-2026/09-29-2026-editable-dataset-examples-and-trace-metrics",
            "kind": "deprecations",
            "status": 304,
            "checkedAt": "2026-11-05T12:46:34.849695629Z",
            "changedAt": "2026-11-05T12:24:13.350948895Z",
            "fingerprint": "ddd2baf86373"
          },
          {
            "url": "https://arize.com/pricing/",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-11-05T12:46:37.11019212Z",
            "changedAt": "2026-10-24T02:10:28.633844786Z",
            "fingerprint": "7ee1bd303a68"
          },
          {
            "url": "https://arize.com/privacy-policy/",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-11-05T12:46:39.398315502Z",
            "changedAt": "2026-10-24T02:10:31.109417605Z",
            "fingerprint": "982c31341a2d"
          },
          {
            "url": "https://arize.com/terms-of-service/",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-11-05T12:46:41.369328842Z",
            "changedAt": "2026-10-24T02:10:33.167916794Z",
            "fingerprint": "d6fc743e03ef"
          }
        ],
        "github": {
          "repo": "arize-ai/phoenix",
          "checkedAt": "2026-11-02T08:31:40.253006001Z",
          "stars": 12097,
          "archived": false,
          "issuesEnabled": true,
          "pushedAt": "2026-11-01T12:18:05Z",
          "openIssues": 1022,
          "openPRs": 204,
          "issuesOpened90d": 845,
          "issuesClosed90d": 526,
          "prsMerged90d": 1124,
          "ci": {
            "branch": "main",
            "runs": 50,
            "success": 50,
            "failure": 0,
            "other": 0,
            "latest": "success",
            "latestAt": "2026-11-01T11:10:21Z"
          },
          "replies": {
            "sampled": 10,
            "unanswered": 6,
            "medianDays": 0.4
          }
        },
        "updatedAt": "2026-11-06T05:41:06.792388361Z"
      }
    },
    "answer": "Arize Phoenix scores 72.1 (BB) on agent readiness against Gauge CLI's 60.4 (C), and leads in every scored category.",
    "b": {
      "slug": "gauge-cli",
      "name": "Gauge CLI",
      "vendor": "Gauge",
      "vendorUrl": "https://www.withgauge.com/agents/",
      "kind": "cli",
      "category": "agent-observability",
      "summary": "Gauge CLI runs real coding agents (Claude Code, Codex, Pi, OpenCode) against your skills, CLIs, SDKs, MCP servers and docs in Docker, records where they get stuck, and lets your agent test fixes before release.",
      "url": "https://www.anchorterminal.com/tools/gauge-cli",
      "markdownUrl": "https://www.anchorterminal.com/tools/gauge-cli.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/gauge-cli.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/gauge-cli.json",
      "dns": "gauge-cli.grade.anchorterminal.com",
      "repo": "https://github.com/gauge-sh/gauge-cli",
      "license": "MIT",
      "transports": [],
      "packages": [
        {
          "registry": "npm",
          "name": "@withgauge/cli"
        }
      ],
      "auth": "none",
      "authNotes": "Local mode needs no Gauge account, only credentials for the agent under test (native Claude or Codex logins, or API keys). Hosted Gauge uses `gauge auth login`, with a device flow for remote terminals.",
      "pricing": "freemium",
      "pricingNotes": "The CLI and local mode are free and MIT-licensed; agent usage is billed by your provider or subscription. Hosted Gauge runs on workspace credits, whose prices weren't read (checked 2026-11-06).",
      "priceSummary": "Freemium",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No payment protocol in the CLI or its README; hosted runs use workspace credits (checked 2026-11-06).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-11-06"
      },
      "docsUrl": "https://docs.withgauge.com/agents",
      "capabilities": [
        "obs.evals"
      ],
      "tags": [
        "open-source",
        "mit",
        "cli",
        "node",
        "docker",
        "telemetry",
        "new"
      ],
      "lastRelease": "2026-11-04",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 60.4,
        "grade": "C",
        "agentReady": false,
        "rank": 590,
        "ranked": true,
        "rankOf": 1354,
        "categoryRank": 13,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 75,
          "maintenance": 82,
          "payments": 40,
          "reliability": 60,
          "schema": 60,
          "security": 55,
          "transparency": 53
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "low",
          "date": "2026-11-06"
        },
        "negative": 0,
        "verdict": "An open-source CLI that measures how coding agents get on with your product and checks fixes before you ship them, locally in Docker with no account. It's young and pre-1.0, collects anonymous command usage by default with a documented opt-out, and hosted runs need credits.",
        "bestFor": "Teams that build skills, CLIs, SDKs or MCP servers and want to see where coding agents get stuck with them, and to test fixes before release.",
        "strengths": [
          "Runs Claude Code, Codex, Pi and OpenCode in fresh Docker sessions against working-tree or pre-release versions",
          "Local mode needs no Gauge account, only your existing agent credentials",
          "Dated changelog with six releases in about two weeks",
          "Instructions bundled in the CLI for coding agents, and -o json on read commands",
          "CI runs checks on every push and pull request"
        ],
        "weaknesses": [
          "Collects anonymous command usage by default, with an opt-out",
          "Pre-1.0 and about two weeks old in this repository",
          "Docs, authenticated MCP servers and authenticated APIs need hosted Gauge and credits",
          "Hosted credit prices weren't found on the pages read"
        ],
        "agentNotes": [
          "npm install -g @withgauge/cli, then gauge local runtime pull and gauge init --local in the project",
          "Run gauge install-skill so your coding agent finds the CLI's own instructions",
          "Set GAUGE_TELEMETRY_DISABLED=1 in CI if you don't want command usage collected",
          "Rebuild and pack an npm CLI or SDK before rerunning, so test sessions get the new tarball",
          "Keep .gauge/ private; it holds measurements and analyses"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "low",
            "grade": "C",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 60.4
          }
        ],
        "editorialScores": {
          "ergonomics": 75,
          "maintenance": 82,
          "payments": 40,
          "reliability": 60,
          "schema": 60,
          "security": 55,
          "transparency": 78
        },
        "provenanceScore": 27,
        "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": {
        "install": "npm install -g @withgauge/cli\ngauge local runtime pull\ngauge init --local\ngauge install-skill"
      },
      "letme": {
        "capability": "https://letme.dev/obs.evals",
        "tool": "https://letme.dev/gauge-cli"
      },
      "area": "developer",
      "provenance": {
        "legalEntity": "",
        "domain": "withgauge.com",
        "domainRegistered": "",
        "domainNote": "Not looked up: RDAP isn't requested under the 1 November 2026 rules.",
        "endpointOnVendorDomain": null,
        "terms": "",
        "privacy": "",
        "statusPage": "",
        "changelog": "https://github.com/gauge-sh/gauge-cli/blob/main/cli/CHANGELOG.md",
        "securityTxt": "none",
        "checked": "2026-11-06",
        "notes": [
          "The npm package's author is Gauge \u003csupport@withgauge.com\u003e, its homepage agents.withgauge.com, and its repository field points at gauge-sh/gauge-cli. The licence names Gauge.",
          "Hosted Gauge's terms and privacy weren't read, and security.txt wasn't checked."
        ],
        "score": 27
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/gauge-cli.json"
    },
    "edges": [
      {
        "by": 28,
        "category": "schema",
        "leads": "arize-phoenix",
        "name": "Schema \u0026 documentation",
        "reasons": {
          "a": "OpenAPI with 91 paths in the repository on 1 November, and the MCP surface is generated from it, so every tool has typed inputs (25). llms.txt at arize.com/docs/phoenix/llms.txt, 967 lines on 1 November, and Markdown twins of the docs pages (10). Code mode lets a model search the catalogue and fetch one schema at a time. Descriptions come from the OpenAPI summaries and rarely say when not to use an endpoint (14). Typed inputs with enums and required fields (13). Examples on most docs pages. Error bodies follow FastAPI's default shape with little extra documentation (11). Versioned `/v1` API, a changelog per release and dated release notes (15).",
          "b": "CLI reading. No machine-readable contract, -o json on read commands (10 of 25). No llms.txt; instructions bundled in the CLI for agents (5). The README says what it finds and when local or hosted fits (16 of 20). Commands with help text; typed flags (9 of 15). Worked examples, no error reference (8 of 15). Dated changelog and semver tags (12 of 15). 10 + 5 + 16 + 9 + 8 + 12 = 60."
        },
        "scores": {
          "a": 88,
          "b": 60
        }
      },
      {
        "by": 22,
        "category": "transparency",
        "leads": "arize-phoenix",
        "name": "Transparency \u0026 trust",
        "reasons": {
          "a": "Elastic License 2.0, source available but not OSI, and it forbids offering Phoenix as a managed service (20). Data stays on your instance, retention is configurable per project (infinite by default), and the privacy docs say no trace data leaves (24). Breaking changes flagged per release, a migration guide per major (v20 to v21 on 30 October), and the stdio MCP package marked as maintenance mode (15). Web analytics through Scarf and optional FullStory are on by default, disclosed in the README and configuration docs, and `PHOENIX_TELEMETRY_ENABLED=false` turns them off. Since 21.0.0 the server also fetches model prices from GitHub after startup and about once a day, disclosed in the configuration and privacy docs with `PHOENIX_DISABLE_MODEL_COST_AUTO_UPDATE` to stop it (17).",
          "b": "MIT (30). Local data stays in .gauge/ and telemetry fields are listed; hosted data handling wasn't read (18 of 30). Dated changelog, no deprecation policy (10 of 20). Telemetry on by default, disclosed with an opt-out (20). 30 + 18 + 10 + 20 = 78."
        },
        "scores": {
          "a": 75,
          "b": 53
        }
      },
      {
        "by": 20,
        "category": "payments",
        "leads": "arize-phoenix",
        "name": "Payments \u0026 pricing",
        "reasons": {
          "a": "No x402 (0). Phoenix itself has nothing to buy and no hosted version, so we score it as free self-hosted software (20 + 20 + 20), and `pip install arize-phoenix \u0026\u0026 phoenix serve` needs no account. Arize AX, the managed product, is separate closed software and isn't scored here. That's a judgement call.",
          "b": "Scored on the hosted option. No payment protocol (0). Credit prices weren't found on the pages read (0). Local mode is free with no card (20). Local mode needs no sign-up (20). 0 + 0 + 20 + 20 = 40."
        },
        "scores": {
          "a": 60,
          "b": 40
        }
      },
      {
        "by": 15,
        "category": "ergonomics",
        "leads": "arize-phoenix",
        "name": "Agent ergonomics",
        "reasons": {
          "a": "The `/mcp` endpoint shows seven code-mode tools by default (`search`, `tags`, `list_tools`, `get_schema`, `execute`, `load_skill`, `load_skill_reference`), whatever the size of the REST API behind them. Since 20.20.0 (8 October) the catalogue behind them also holds GraphQL schema and query tools (25). Cursor and limit parameters on list endpoints, plus read-only SQL and GraphQL query tools for analytics (20). SQL errors come back with teaching hints. REST errors are plain FastAPI details (14). Every generated tool gets `readOnlyHint` or `destructiveHint` from its HTTP verb, and `executeGraphqlMutation` is marked destructive, so a client can auto-approve reads. `execute` can reach writes, which the annotations can't separate (16). Few required parameters. Python and TypeScript clients and a CLI (15).",
          "b": "CLI reading for an agent driving it. Bundled instructions match the installed version, and output is filterable with -o json (20 of 25). Run summaries and Findings with queryable fields (15 of 20). Errors not documented as a reference (10 of 20). Reruns from checkpoints and a recheck command with a confirm step (15 of 20). Four commands to start, Node only (15 of 15). 20 + 15 + 10 + 15 + 15 = 75."
        },
        "scores": {
          "a": 90,
          "b": 75
        }
      },
      {
        "by": 13,
        "category": "reliability",
        "leads": "arize-phoenix",
        "name": "Reliability",
        "reasons": {
          "a": "Scored on the local-package checklist, since Phoenix only runs where you install it (the old hosted address returns 410). Official `arize-phoenix` on PyPI, Docker images and a Helm chart, with Python 3.11 to 3.15 stated in pyproject.toml on 1 November (20). Python, TypeScript, Playwright and Helm CI run in public. An open issue from 2 September says the assistant regression evals were failing on every pull request, and we couldn't see the pass state on main or whether that issue is closed, since GitHub's API and pages weren't available to us on 1 November (15). 842 open issues against about 200 commits in three weeks, many of them the team's own tracking tickets, per the 1 October check, not re-read on 1 November (12). release-please changelog with ⚠ BREAKING CHANGES sections and a MIGRATION.md. 21.0.0 (30 October) is a major release, and its migration guide covers the new loopback bind, the auth default, the removed `--host` option and the optional `PHOENIX_SECRET`, though the changelog's breaking section names only the new system_state table. 20.13.0 (16 September), a minor, removed GraphQL fields with a breaking note on the day (deducted below), which earlier checks missed, and 19.4.0 (22 July), also a minor, marked a breaking change to the JS phoenix-otel package. Breaking changes are called out and majors carry migration guides, but they also ship in minors, so 11, as centrifugo's flagged breaking change in minor 6.9.0 was read (11). Version 21.0.0 (15). 20+15+12+11+15 = 73.",
          "b": "Local package. Installs from npm as @withgauge/cli with Node 22.13 or later and Docker stated (20). checks.yml runs npm run check on push and pull request across a matrix, and the repository has 76 test files; whether main passes wasn't read (20 of 25). Issues weren't read (5, unchecked). A dated changelog with Added sections per release (15). Version 0.28.0 (0). 20 + 20 + 5 + 15 + 0 = 60."
        },
        "scores": {
          "a": 73,
          "b": 60
        }
      }
    ],
    "facts": [
      {
        "a": "HTTP API",
        "b": "cli",
        "name": "Kind"
      },
      {
        "a": "Arize AI",
        "b": "Gauge",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP, Streamable HTTP, stdio",
        "b": "",
        "name": "Transports"
      },
      {
        "a": "OAuth or key",
        "b": "None",
        "name": "Auth"
      },
      {
        "a": "Free",
        "b": "Freemium",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Elastic-2.0",
        "b": "MIT",
        "name": "Licence"
      },
      {
        "a": "5",
        "b": "none",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "no",
        "name": "llms.txt"
      },
      {
        "a": "2026-10-30",
        "b": "2026-11-04",
        "name": "Last release"
      },
      {
        "a": "no date given",
        "b": "no document linked",
        "name": "Terms last updated"
      },
      {
        "a": "2026-08-11",
        "b": "no document linked",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "not read yet",
        "name": "Customer content may train models"
      },
      {
        "a": "yes",
        "b": "not read yet",
        "name": "Terms restrict automated access"
      },
      {
        "a": "yes",
        "b": "not read yet",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "not read yet",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "yes",
        "b": "not read yet",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "12k stars, 131k npm/wk, 132k PyPI/wk",
        "b": "none",
        "name": "Popularity"
      },
      {
        "a": "3.8/5 (8)",
        "b": "none",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "Arize Phoenix scores 72.1 (BB) on agent readiness against Gauge CLI's 60.4 (C), and leads in every scored category.",
        "question": "Which is better for AI agents, Arize Phoenix or Gauge CLI?"
      },
      {
        "answer": "Arize Phoenix runs on your own machine, with no hosted endpoint listed. No hosted endpoint is listed for Gauge CLI.",
        "question": "Can an agent call Arize Phoenix and Gauge CLI without installing anything?"
      },
      {
        "answer": "Yes. Arize Phoenix is open source (Elastic-2.0). Gauge CLI is open source (MIT).",
        "question": "Are Arize Phoenix and Gauge CLI open source?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 73 against 60",
          "Schema \u0026 documentation, 88 against 60",
          "Agent ergonomics, 90 against 75",
          "Payments \u0026 pricing, 60 against 40",
          "Transparency \u0026 trust, 75 against 53"
        ],
        "also": [
          "Agent-ready, a grade of BB or better",
          "Runs on your own machine"
        ],
        "goodFor": "Teams that want tracing and evals on their own hardware, or air-gapped, with an MCP endpoint an agent can sign into.",
        "slug": "arize-phoenix",
        "watchFor": "Auth stays off on a loopback bind, and the default admin password is `admin` until changed"
      },
      {
        "aheadOn": null,
        "also": [
          "No key needed to call it",
          "No incidents deducted, where Arize Phoenix loses 3 points for them"
        ],
        "goodFor": "Teams that build skills, CLIs, SDKs or MCP servers and want to see where coding agents get stuck with them, and to test fixes before release.",
        "slug": "gauge-cli",
        "watchFor": "Collects anonymous command usage by default, with an opt-out"
      }
    ],
    "history": {
      "arize-phoenix": [
        {
          "causes": [
            "correction",
            "event"
          ],
          "date": "2026-11-01",
          "delta": -3.8,
          "from": 75.9,
          "fromGrade": "BB",
          "to": 72.1,
          "toGrade": "BB"
        },
        {
          "causes": [
            "evidence"
          ],
          "date": "2026-10-28",
          "delta": 0.1,
          "from": 75.8,
          "fromGrade": "BB",
          "to": 75.9,
          "toGrade": "BB"
        },
        {
          "causes": [
            "method"
          ],
          "date": "2026-10-27",
          "delta": 0.1,
          "from": 75.7,
          "fromGrade": "BB",
          "to": 75.8,
          "toGrade": "BB"
        }
      ],
      "gauge-cli": null
    },
    "job": {
      "capability": "obs.evals",
      "name": "Evaluations"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/agent-tree-vs-arize-phoenix.json",
        "title": "Agent Tree vs Arize Phoenix",
        "url": "https://www.anchorterminal.com/compare/agent-tree-vs-arize-phoenix"
      },
      {
        "json": "https://www.anchorterminal.com/compare/agents-tree-vs-arize-phoenix.json",
        "title": "agents-tree vs Arize Phoenix",
        "url": "https://www.anchorterminal.com/compare/agents-tree-vs-arize-phoenix"
      },
      {
        "json": "https://www.anchorterminal.com/compare/arize-phoenix-vs-baserun.json",
        "title": "Arize Phoenix vs Baserun",
        "url": "https://www.anchorterminal.com/compare/arize-phoenix-vs-baserun"
      },
      {
        "json": "https://www.anchorterminal.com/compare/arize-phoenix-vs-botgauge.json",
        "title": "Arize Phoenix vs BotGauge",
        "url": "https://www.anchorterminal.com/compare/arize-phoenix-vs-botgauge"
      },
      {
        "json": "https://www.anchorterminal.com/compare/arize-phoenix-vs-braintrust.json",
        "title": "Arize Phoenix vs Braintrust API + MCP",
        "url": "https://www.anchorterminal.com/compare/arize-phoenix-vs-braintrust"
      },
      {
        "json": "https://www.anchorterminal.com/compare/arize-phoenix-vs-deepeval.json",
        "title": "Arize Phoenix vs DeepEval",
        "url": "https://www.anchorterminal.com/compare/arize-phoenix-vs-deepeval"
      },
      {
        "json": "https://www.anchorterminal.com/compare/arize-phoenix-vs-galileo.json",
        "title": "Arize Phoenix vs Galileo API + MCP",
        "url": "https://www.anchorterminal.com/compare/arize-phoenix-vs-galileo"
      },
      {
        "json": "https://www.anchorterminal.com/compare/arize-phoenix-vs-helicone.json",
        "title": "Arize Phoenix vs Helicone AI Gateway + MCP",
        "url": "https://www.anchorterminal.com/compare/arize-phoenix-vs-helicone"
      },
      {
        "json": "https://www.anchorterminal.com/compare/arize-phoenix-vs-honeyhive.json",
        "title": "Arize Phoenix vs HoneyHive",
        "url": "https://www.anchorterminal.com/compare/arize-phoenix-vs-honeyhive"
      },
      {
        "json": "https://www.anchorterminal.com/compare/arize-phoenix-vs-laminar.json",
        "title": "Arize Phoenix vs Laminar API + MCP",
        "url": "https://www.anchorterminal.com/compare/arize-phoenix-vs-laminar"
      },
      {
        "json": "https://www.anchorterminal.com/compare/arize-phoenix-vs-langfuse.json",
        "title": "Arize Phoenix vs Langfuse API + MCP",
        "url": "https://www.anchorterminal.com/compare/arize-phoenix-vs-langfuse"
      },
      {
        "json": "https://www.anchorterminal.com/compare/arize-phoenix-vs-langsmith.json",
        "title": "Arize Phoenix vs LangSmith API + MCP",
        "url": "https://www.anchorterminal.com/compare/arize-phoenix-vs-langsmith"
      },
      {
        "json": "https://www.anchorterminal.com/compare/arize-phoenix-vs-langwatch.json",
        "title": "Arize Phoenix vs LangWatch",
        "url": "https://www.anchorterminal.com/compare/arize-phoenix-vs-langwatch"
      },
      {
        "json": "https://www.anchorterminal.com/compare/arize-phoenix-vs-mlflow-tracing.json",
        "title": "Arize Phoenix vs MLflow Tracing",
        "url": "https://www.anchorterminal.com/compare/arize-phoenix-vs-mlflow-tracing"
      },
      {
        "json": "https://www.anchorterminal.com/compare/arize-phoenix-vs-navige.json",
        "title": "Arize Phoenix vs Navige",
        "url": "https://www.anchorterminal.com/compare/arize-phoenix-vs-navige"
      },
      {
        "json": "https://www.anchorterminal.com/compare/arize-phoenix-vs-opik.json",
        "title": "Arize Phoenix vs Opik API + MCP",
        "url": "https://www.anchorterminal.com/compare/arize-phoenix-vs-opik"
      },
      {
        "json": "https://www.anchorterminal.com/compare/arize-phoenix-vs-overmind.json",
        "title": "Arize Phoenix vs Overmind",
        "url": "https://www.anchorterminal.com/compare/arize-phoenix-vs-overmind"
      },
      {
        "json": "https://www.anchorterminal.com/compare/arize-phoenix-vs-prefactor.json",
        "title": "Arize Phoenix vs Prefactor",
        "url": "https://www.anchorterminal.com/compare/arize-phoenix-vs-prefactor"
      },
      {
        "json": "https://www.anchorterminal.com/compare/arize-phoenix-vs-pydantic-logfire.json",
        "title": "Arize Phoenix vs Pydantic Logfire",
        "url": "https://www.anchorterminal.com/compare/arize-phoenix-vs-pydantic-logfire"
      },
      {
        "json": "https://www.anchorterminal.com/compare/arize-phoenix-vs-respan.json",
        "title": "Arize Phoenix vs Respan API + MCP",
        "url": "https://www.anchorterminal.com/compare/arize-phoenix-vs-respan"
      },
      {
        "json": "https://www.anchorterminal.com/compare/arize-phoenix-vs-wandb-weave.json",
        "title": "Arize Phoenix vs W\u0026B Weave",
        "url": "https://www.anchorterminal.com/compare/arize-phoenix-vs-wandb-weave"
      },
      {
        "json": "https://www.anchorterminal.com/compare/baserun-vs-gauge-cli.json",
        "title": "Baserun vs Gauge CLI",
        "url": "https://www.anchorterminal.com/compare/baserun-vs-gauge-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/botgauge-vs-gauge-cli.json",
        "title": "BotGauge vs Gauge CLI",
        "url": "https://www.anchorterminal.com/compare/botgauge-vs-gauge-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/braintrust-vs-gauge-cli.json",
        "title": "Braintrust API + MCP vs Gauge CLI",
        "url": "https://www.anchorterminal.com/compare/braintrust-vs-gauge-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deepeval-vs-gauge-cli.json",
        "title": "DeepEval vs Gauge CLI",
        "url": "https://www.anchorterminal.com/compare/deepeval-vs-gauge-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/galileo-vs-gauge-cli.json",
        "title": "Galileo API + MCP vs Gauge CLI",
        "url": "https://www.anchorterminal.com/compare/galileo-vs-gauge-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gauge-cli-vs-helicone.json",
        "title": "Gauge CLI vs Helicone AI Gateway + MCP",
        "url": "https://www.anchorterminal.com/compare/gauge-cli-vs-helicone"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gauge-cli-vs-honeyhive.json",
        "title": "Gauge CLI vs HoneyHive",
        "url": "https://www.anchorterminal.com/compare/gauge-cli-vs-honeyhive"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gauge-cli-vs-laminar.json",
        "title": "Gauge CLI vs Laminar API + MCP",
        "url": "https://www.anchorterminal.com/compare/gauge-cli-vs-laminar"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gauge-cli-vs-langfuse.json",
        "title": "Gauge CLI vs Langfuse API + MCP",
        "url": "https://www.anchorterminal.com/compare/gauge-cli-vs-langfuse"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gauge-cli-vs-langsmith.json",
        "title": "Gauge CLI vs LangSmith API + MCP",
        "url": "https://www.anchorterminal.com/compare/gauge-cli-vs-langsmith"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gauge-cli-vs-langwatch.json",
        "title": "Gauge CLI vs LangWatch",
        "url": "https://www.anchorterminal.com/compare/gauge-cli-vs-langwatch"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gauge-cli-vs-mlflow-tracing.json",
        "title": "Gauge CLI vs MLflow Tracing",
        "url": "https://www.anchorterminal.com/compare/gauge-cli-vs-mlflow-tracing"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gauge-cli-vs-opik.json",
        "title": "Gauge CLI vs Opik API + MCP",
        "url": "https://www.anchorterminal.com/compare/gauge-cli-vs-opik"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gauge-cli-vs-overmind.json",
        "title": "Gauge CLI vs Overmind",
        "url": "https://www.anchorterminal.com/compare/gauge-cli-vs-overmind"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gauge-cli-vs-prefactor.json",
        "title": "Gauge CLI vs Prefactor",
        "url": "https://www.anchorterminal.com/compare/gauge-cli-vs-prefactor"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gauge-cli-vs-pydantic-logfire.json",
        "title": "Gauge CLI vs Pydantic Logfire",
        "url": "https://www.anchorterminal.com/compare/gauge-cli-vs-pydantic-logfire"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gauge-cli-vs-respan.json",
        "title": "Gauge CLI vs Respan API + MCP",
        "url": "https://www.anchorterminal.com/compare/gauge-cli-vs-respan"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gauge-cli-vs-wandb-weave.json",
        "title": "Gauge CLI vs W\u0026B Weave",
        "url": "https://www.anchorterminal.com/compare/gauge-cli-vs-wandb-weave"
      }
    ],
    "panel": null,
    "scores": [
      {
        "arize-phoenix": 73,
        "by": 13,
        "edge": "arize-phoenix",
        "gauge-cli": 60,
        "key": "reliability",
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "arize-phoenix": 88,
        "by": 28,
        "edge": "arize-phoenix",
        "gauge-cli": 60,
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "arize-phoenix": 90,
        "by": 15,
        "edge": "arize-phoenix",
        "gauge-cli": 75,
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "arize-phoenix": 58,
        "by": 3,
        "edge": "arize-phoenix",
        "gauge-cli": 55,
        "key": "security",
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "arize-phoenix": 60,
        "by": 20,
        "edge": "arize-phoenix",
        "gauge-cli": 40,
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "arize-phoenix": 84,
        "by": 2,
        "edge": "arize-phoenix",
        "gauge-cli": 82,
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "arize-phoenix": 75,
        "by": 22,
        "edge": "arize-phoenix",
        "gauge-cli": 53,
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "Arize Phoenix scores 72.1 (BB) on agent readiness against Gauge CLI's 60.4 (C), and leads in every scored category. Both do evaluations.",
    "tasks": null,
    "tutorials": [],
    "verdicts": {
      "arize-phoenix": "Free and self-hosted with no feature gating, from `pip install` to a Helm chart, with an MCP endpoint generated from its OpenAPI. Since 21.0.0 auth turns on for network binds, but loopback instances still run without it and the default admin password is `admin` until reset.",
      "gauge-cli": "An open-source CLI that measures how coding agents get on with your product and checks fixes before you ship them, locally in Docker with no account. It's young and pre-1.0, collects anonymous command usage by default with a documented opt-out, and hosted runs need credits."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/arize-phoenix-vs-gauge-cli",
    "json": "https://www.anchorterminal.com/compare/arize-phoenix-vs-gauge-cli.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/arize-phoenix-vs-gauge-cli.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/arize-phoenix-vs-gauge-cli.min.md"
  },
  "markdown": "Arize Phoenix scores 72.1 (BB) on agent readiness against Gauge CLI's 60.4 (C), and leads in every scored category. Both do evaluations.\n\n- Arize Phoenix: grade BB, 72.1/100, rank #124 of 1354. Markdown https://www.anchorterminal.com/tools/arize-phoenix.md · JSON https://www.anchorterminal.com/api/v1/tools/arize-phoenix.json\n- Gauge CLI: grade C, 60.4/100, rank #590 of 1354. Markdown https://www.anchorterminal.com/tools/gauge-cli.md · JSON https://www.anchorterminal.com/api/v1/tools/gauge-cli.json\n- Best agent tracing, monitoring and evaluation tools: https://www.anchorterminal.com/best/agent-observability/index.md\n- All 250 evals comparisons: https://www.anchorterminal.com/compare/agent-observability/index.md\n\n## Which one, for what\n\n### Arize Phoenix (BB)\n\nGood for: Teams that want tracing and evals on their own hardware, or air-gapped, with an MCP endpoint an agent can sign into.\n\nAhead on:\n- Reliability, 73 against 60\n- Schema \u0026 documentation, 88 against 60\n- Agent ergonomics, 90 against 75\n- Payments \u0026 pricing, 60 against 40\n- Transparency \u0026 trust, 75 against 53\n\nAlso in its favour:\n- Agent-ready, a grade of BB or better\n- Runs on your own machine\n\nWatch for: Auth stays off on a loopback bind, and the default admin password is `admin` until changed\n\n### Gauge CLI (C)\n\nGood for: Teams that build skills, CLIs, SDKs or MCP servers and want to see where coding agents get stuck with them, and to test fixes before release.\n\nAlso in its favour:\n- No key needed to call it\n- No incidents deducted, where Arize Phoenix loses 3 points for them\n\nWatch for: Collects anonymous command usage by default, with an opt-out\n\n\n## Why the edge\n\n### Schema \u0026 documentation: Arize Phoenix +28\n\n- Arize Phoenix (88): OpenAPI with 91 paths in the repository on 1 November, and the MCP surface is generated from it, so every tool has typed inputs (25). llms.txt at arize.com/docs/phoenix/llms.txt, 967 lines on 1 November, and Markdown twins of the docs pages (10). Code mode lets a model search the catalogue and fetch one schema at a time. Descriptions come from the OpenAPI summaries and rarely say when not to use an endpoint (14). Typed inputs with enums and required fields (13). Examples on most docs pages. Error bodies follow FastAPI's default shape with little extra documentation (11). Versioned `/v1` API, a changelog per release and dated release notes (15).\n- Gauge CLI (60): CLI reading. No machine-readable contract, -o json on read commands (10 of 25). No llms.txt; instructions bundled in the CLI for agents (5). The README says what it finds and when local or hosted fits (16 of 20). Commands with help text; typed flags (9 of 15). Worked examples, no error reference (8 of 15). Dated changelog and semver tags (12 of 15). 10 + 5 + 16 + 9 + 8 + 12 = 60.\n\n### Transparency \u0026 trust: Arize Phoenix +22\n\n- Arize Phoenix (75): Elastic License 2.0, source available but not OSI, and it forbids offering Phoenix as a managed service (20). Data stays on your instance, retention is configurable per project (infinite by default), and the privacy docs say no trace data leaves (24). Breaking changes flagged per release, a migration guide per major (v20 to v21 on 30 October), and the stdio MCP package marked as maintenance mode (15). Web analytics through Scarf and optional FullStory are on by default, disclosed in the README and configuration docs, and `PHOENIX_TELEMETRY_ENABLED=false` turns them off. Since 21.0.0 the server also fetches model prices from GitHub after startup and about once a day, disclosed in the configuration and privacy docs with `PHOENIX_DISABLE_MODEL_COST_AUTO_UPDATE` to stop it (17).\n- Gauge CLI (53): MIT (30). Local data stays in .gauge/ and telemetry fields are listed; hosted data handling wasn't read (18 of 30). Dated changelog, no deprecation policy (10 of 20). Telemetry on by default, disclosed with an opt-out (20). 30 + 18 + 10 + 20 = 78.\n\n### Payments \u0026 pricing: Arize Phoenix +20\n\n- Arize Phoenix (60): No x402 (0). Phoenix itself has nothing to buy and no hosted version, so we score it as free self-hosted software (20 + 20 + 20), and `pip install arize-phoenix \u0026\u0026 phoenix serve` needs no account. Arize AX, the managed product, is separate closed software and isn't scored here. That's a judgement call.\n- Gauge CLI (40): Scored on the hosted option. No payment protocol (0). Credit prices weren't found on the pages read (0). Local mode is free with no card (20). Local mode needs no sign-up (20). 0 + 0 + 20 + 20 = 40.\n\n### Agent ergonomics: Arize Phoenix +15\n\n- Arize Phoenix (90): The `/mcp` endpoint shows seven code-mode tools by default (`search`, `tags`, `list_tools`, `get_schema`, `execute`, `load_skill`, `load_skill_reference`), whatever the size of the REST API behind them. Since 20.20.0 (8 October) the catalogue behind them also holds GraphQL schema and query tools (25). Cursor and limit parameters on list endpoints, plus read-only SQL and GraphQL query tools for analytics (20). SQL errors come back with teaching hints. REST errors are plain FastAPI details (14). Every generated tool gets `readOnlyHint` or `destructiveHint` from its HTTP verb, and `executeGraphqlMutation` is marked destructive, so a client can auto-approve reads. `execute` can reach writes, which the annotations can't separate (16). Few required parameters. Python and TypeScript clients and a CLI (15).\n- Gauge CLI (75): CLI reading for an agent driving it. Bundled instructions match the installed version, and output is filterable with -o json (20 of 25). Run summaries and Findings with queryable fields (15 of 20). Errors not documented as a reference (10 of 20). Reruns from checkpoints and a recheck command with a confirm step (15 of 20). Four commands to start, Node only (15 of 15). 20 + 15 + 10 + 15 + 15 = 75.\n\n### Reliability: Arize Phoenix +13\n\n- Arize Phoenix (73): Scored on the local-package checklist, since Phoenix only runs where you install it (the old hosted address returns 410). Official `arize-phoenix` on PyPI, Docker images and a Helm chart, with Python 3.11 to 3.15 stated in pyproject.toml on 1 November (20). Python, TypeScript, Playwright and Helm CI run in public. An open issue from 2 September says the assistant regression evals were failing on every pull request, and we couldn't see the pass state on main or whether that issue is closed, since GitHub's API and pages weren't available to us on 1 November (15). 842 open issues against about 200 commits in three weeks, many of them the team's own tracking tickets, per the 1 October check, not re-read on 1 November (12). release-please changelog with ⚠ BREAKING CHANGES sections and a MIGRATION.md. 21.0.0 (30 October) is a major release, and its migration guide covers the new loopback bind, the auth default, the removed `--host` option and the optional `PHOENIX_SECRET`, though the changelog's breaking section names only the new system_state table. 20.13.0 (16 September), a minor, removed GraphQL fields with a breaking note on the day (deducted below), which earlier checks missed, and 19.4.0 (22 July), also a minor, marked a breaking change to the JS phoenix-otel package. Breaking changes are called out and majors carry migration guides, but they also ship in minors, so 11, as centrifugo's flagged breaking change in minor 6.9.0 was read (11). Version 21.0.0 (15). 20+15+12+11+15 = 73.\n- Gauge CLI (60): Local package. Installs from npm as @withgauge/cli with Node 22.13 or later and Docker stated (20). checks.yml runs npm run check on push and pull request across a matrix, and the repository has 76 test files; whether main passes wasn't read (20 of 25). Issues weren't read (5, unchecked). A dated changelog with Added sections per release (15). Version 0.28.0 (0). 20 + 20 + 5 + 15 + 0 = 60.\n\n## Score by category\n\n| Category | Weight | Arize Phoenix | Gauge CLI | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 73 | 60 | Arize Phoenix +13 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 88 | 60 | Arize Phoenix +28 |\n| Agent ergonomics | 13% (16.2 this run) | 90 | 75 | Arize Phoenix +15 |\n| Security \u0026 auth | 14% (17.5 this run) | 58 | 55 | Arize Phoenix +3 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 60 | 40 | Arize Phoenix +20 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 84 | 82 | Arize Phoenix +2 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 75 | 53 | Arize Phoenix +22 |\n| Negative events | ≤15 | -3 | 0 | |\n| **Total** | | **72.1 · BB** | **60.4 · C** | |\n\n## Facts side by side\n\n| Fact | Arize Phoenix | Gauge CLI |\n| --- | --- | --- |\n| Kind | HTTP API | cli |\n| Vendor | Arize AI | Gauge |\n| Hosted endpoint | no (local only) | no (local only) |\n| Transports | HTTP, Streamable HTTP, stdio |  |\n| Auth | OAuth or key | None |\n| Pricing | Free | Freemium |\n| x402 | no | no |\n| Licence | Elastic-2.0 | MIT |\n| Tools exposed | 5 | none |\n| Read-only variant documented | no | no |\n| llms.txt | yes | no |\n| Last release | 2026-10-30 | 2026-11-04 |\n| Terms last updated | no date given | no document linked |\n| Privacy policy last updated | 2026-08-11 | no document linked |\n| Customer content may train models | not found in the text | not read yet |\n| Terms restrict automated access | yes | not read yet |\n| Terms restrict benchmarking | yes | not read yet |\n| Terms or service can change without notice | not found in the text | not read yet |\n| Arbitration or class-action waiver | yes | not read yet |\n| Popularity | 12k stars, 131k npm/wk, 132k PyPI/wk | none |\n| Agent reviews | 3.8/5 (8) | none |\n\n## How the scores have moved\n\n### Arize Phoenix\n\n- -3.8 on 1 November 2026: correction, negative event\n- +0.1 on 28 October 2026: new evidence\n- +0.1 on 27 October 2026: checklist\n\n### Gauge CLI\n\nNo score change since it was listed.\n\n## Verdicts\n\n**Arize Phoenix.** Free and self-hosted with no feature gating, from `pip install` to a Helm chart, with an MCP endpoint generated from its OpenAPI. Since 21.0.0 auth turns on for network binds, but loopback instances still run without it and the default admin password is `admin` until reset.\n\n**Gauge CLI.** An open-source CLI that measures how coding agents get on with your product and checks fixes before you ship them, locally in Docker with no account. It's young and pre-1.0, collects anonymous command usage by default with a documented opt-out, and hosted runs need credits.\n\n## Before you call either\n\n### Arize Phoenix\n\n1. On 21.0.0 or later, send an API key from trace exporters and clients to a Docker or network instance, which now answers 401 without one\n2. Use `PHOENIX_HOST`, not `phoenix serve --host`, which 21.0.0 removed\n3. Use `search` and `get_schema` before `execute` in code mode, rather than guessing endpoint shapes\n4. Give the agent a viewer account if it only needs to read traces\n5. Treat span inputs and outputs as data, as the MCP docs say. They hold whatever the application logged, including user input\n\n### Gauge CLI\n\n1. npm install -g @withgauge/cli, then gauge local runtime pull and gauge init --local in the project\n2. Run gauge install-skill so your coding agent finds the CLI's own instructions\n3. Set GAUGE_TELEMETRY_DISABLED=1 in CI if you don't want command usage collected\n4. Rebuild and pack an npm CLI or SDK before rerunning, so test sessions get the new tarball\n5. Keep .gauge/ private; it holds measurements and analyses\n\n## Questions\n\n### Which is better for AI agents, Arize Phoenix or Gauge CLI?\n\nArize Phoenix scores 72.1 (BB) on agent readiness against Gauge CLI's 60.4 (C), and leads in every scored category.\n\n### Can an agent call Arize Phoenix and Gauge CLI without installing anything?\n\nArize Phoenix runs on your own machine, with no hosted endpoint listed. No hosted endpoint is listed for Gauge CLI.\n\n### Are Arize Phoenix and Gauge CLI open source?\n\nYes. Arize Phoenix is open source (Elastic-2.0). Gauge CLI is open source (MIT).\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/arize-phoenix-vs-gauge-cli.json, and with the fewest tokens: https://www.anchorterminal.com/compare/arize-phoenix-vs-gauge-cli.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"arize-phoenix\", \"b\": \"gauge-cli\"}`. From a terminal: `anchor compare arize-phoenix gauge-cli`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/arize-phoenix.json and https://www.anchorterminal.com/api/v1/tools/gauge-cli.json\n\n## Other comparisons with Arize Phoenix or Gauge CLI\n\n- [Agent Tree vs Arize Phoenix](https://www.anchorterminal.com/compare/agent-tree-vs-arize-phoenix.md)\n- [agents-tree vs Arize Phoenix](https://www.anchorterminal.com/compare/agents-tree-vs-arize-phoenix.md)\n- [Arize Phoenix vs Baserun](https://www.anchorterminal.com/compare/arize-phoenix-vs-baserun.md)\n- [Arize Phoenix vs BotGauge](https://www.anchorterminal.com/compare/arize-phoenix-vs-botgauge.md)\n- [Arize Phoenix vs Braintrust API + MCP](https://www.anchorterminal.com/compare/arize-phoenix-vs-braintrust.md)\n- [Arize Phoenix vs DeepEval](https://www.anchorterminal.com/compare/arize-phoenix-vs-deepeval.md)\n- [Arize Phoenix vs Galileo API + MCP](https://www.anchorterminal.com/compare/arize-phoenix-vs-galileo.md)\n- [Arize Phoenix vs Helicone AI Gateway + MCP](https://www.anchorterminal.com/compare/arize-phoenix-vs-helicone.md)\n- [Arize Phoenix vs HoneyHive](https://www.anchorterminal.com/compare/arize-phoenix-vs-honeyhive.md)\n- [Arize Phoenix vs Laminar API + MCP](https://www.anchorterminal.com/compare/arize-phoenix-vs-laminar.md)\n- [Arize Phoenix vs Langfuse API + MCP](https://www.anchorterminal.com/compare/arize-phoenix-vs-langfuse.md)\n- [Arize Phoenix vs LangSmith API + MCP](https://www.anchorterminal.com/compare/arize-phoenix-vs-langsmith.md)\n- [Arize Phoenix vs LangWatch](https://www.anchorterminal.com/compare/arize-phoenix-vs-langwatch.md)\n- [Arize Phoenix vs MLflow Tracing](https://www.anchorterminal.com/compare/arize-phoenix-vs-mlflow-tracing.md)\n- [Arize Phoenix vs Navige](https://www.anchorterminal.com/compare/arize-phoenix-vs-navige.md)\n- [Arize Phoenix vs Opik API + MCP](https://www.anchorterminal.com/compare/arize-phoenix-vs-opik.md)\n- [Arize Phoenix vs Overmind](https://www.anchorterminal.com/compare/arize-phoenix-vs-overmind.md)\n- [Arize Phoenix vs Prefactor](https://www.anchorterminal.com/compare/arize-phoenix-vs-prefactor.md)\n- [Arize Phoenix vs Pydantic Logfire](https://www.anchorterminal.com/compare/arize-phoenix-vs-pydantic-logfire.md)\n- [Arize Phoenix vs Respan API + MCP](https://www.anchorterminal.com/compare/arize-phoenix-vs-respan.md)\n- [Arize Phoenix vs W\u0026B Weave](https://www.anchorterminal.com/compare/arize-phoenix-vs-wandb-weave.md)\n- [Baserun vs Gauge CLI](https://www.anchorterminal.com/compare/baserun-vs-gauge-cli.md)\n- [BotGauge vs Gauge CLI](https://www.anchorterminal.com/compare/botgauge-vs-gauge-cli.md)\n- [Braintrust API + MCP vs Gauge CLI](https://www.anchorterminal.com/compare/braintrust-vs-gauge-cli.md)\n- [DeepEval vs Gauge CLI](https://www.anchorterminal.com/compare/deepeval-vs-gauge-cli.md)\n- [Galileo API + MCP vs Gauge CLI](https://www.anchorterminal.com/compare/galileo-vs-gauge-cli.md)\n- [Gauge CLI vs Helicone AI Gateway + MCP](https://www.anchorterminal.com/compare/gauge-cli-vs-helicone.md)\n- [Gauge CLI vs HoneyHive](https://www.anchorterminal.com/compare/gauge-cli-vs-honeyhive.md)\n- [Gauge CLI vs Laminar API + MCP](https://www.anchorterminal.com/compare/gauge-cli-vs-laminar.md)\n- [Gauge CLI vs Langfuse API + MCP](https://www.anchorterminal.com/compare/gauge-cli-vs-langfuse.md)\n- [Gauge CLI vs LangSmith API + MCP](https://www.anchorterminal.com/compare/gauge-cli-vs-langsmith.md)\n- [Gauge CLI vs LangWatch](https://www.anchorterminal.com/compare/gauge-cli-vs-langwatch.md)\n- [Gauge CLI vs MLflow Tracing](https://www.anchorterminal.com/compare/gauge-cli-vs-mlflow-tracing.md)\n- [Gauge CLI vs Opik API + MCP](https://www.anchorterminal.com/compare/gauge-cli-vs-opik.md)\n- [Gauge CLI vs Overmind](https://www.anchorterminal.com/compare/gauge-cli-vs-overmind.md)\n- [Gauge CLI vs Prefactor](https://www.anchorterminal.com/compare/gauge-cli-vs-prefactor.md)\n- [Gauge CLI vs Pydantic Logfire](https://www.anchorterminal.com/compare/gauge-cli-vs-pydantic-logfire.md)\n- [Gauge CLI vs Respan API + MCP](https://www.anchorterminal.com/compare/gauge-cli-vs-respan.md)\n- [Gauge CLI vs W\u0026B Weave](https://www.anchorterminal.com/compare/gauge-cli-vs-wandb-weave.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-06",
    "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": "Arize Phoenix vs Gauge CLI",
        "url": ""
      }
    ],
    "description": "Arize Phoenix scores 72.1 (BB) to Gauge CLI's 60.4 (C) for evaluations. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Arize Phoenix BB 72.1",
      "Gauge CLI C 60.4",
      "scores"
    ],
    "h1": "Arize Phoenix vs Gauge CLI",
    "image": "https://www.anchorterminal.com/assets/og/default.png",
    "path": "/compare/arize-phoenix-vs-gauge-cli",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Arize Phoenix vs Gauge CLI for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-11-06",
    "url": "https://www.anchorterminal.com/compare/arize-phoenix-vs-gauge-cli"
  },
  "tokens": {
    "markdown": 4300,
    "slim": 2230
  },
  "version": 1
}
