{
  "data": {
    "a": {
      "slug": "agentos",
      "name": "AgentOS",
      "vendor": "Framers Lab, Inc.",
      "vendorUrl": "https://agentos.sh",
      "kind": "framework",
      "category": "frameworks",
      "summary": "Open-source TypeScript agent framework from Framers Lab, installed from npm as @framers/agentos. It runs agents with long-term memory, multi-agent teams, graph workflows with checkpoints, guardrails and approval gates across 11 model providers.",
      "url": "https://www.anchorterminal.com/tools/agentos",
      "markdownUrl": "https://www.anchorterminal.com/tools/agentos.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/agentos.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/agentos.json",
      "dns": "agentos.grade.anchorterminal.com",
      "repo": "https://github.com/framerslab/agentos",
      "license": "Apache-2.0",
      "transports": [],
      "packages": [
        {
          "registry": "npm",
          "name": "@framers/agentos"
        }
      ],
      "auth": "api-key",
      "authNotes": "The framework has no account of its own. Each model provider takes its own key from the environment or from the agent's configuration, and the Claude and Gemini CLI providers use an existing local sign-in.",
      "pricing": "free",
      "pricingNotes": "Free and Apache 2.0, with no paid tier of AgentOS found. You pay your model provider. The terms page says the maintainers give no service-level agreement for self-hosted use (https://agentos.sh/legal/terms/, checked 2026-10-08).",
      "priceSummary": "Free · OSS",
      "where": "library",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the repository or on agentos.sh (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 677,
        "npmWeekly": 5328,
        "pypiWeekly": null,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://docs.agentos.sh",
      "llmsTxt": "https://agentos.sh/llms.txt",
      "capabilities": [
        "agent.framework",
        "agent.multi-agent",
        "agent.durable"
      ],
      "tags": [
        "framework",
        "typescript",
        "open-source",
        "llms-txt",
        "free",
        "no-card"
      ],
      "lastRelease": "2026-10-31",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 75.8,
        "grade": "BB",
        "agentReady": true,
        "rank": 52,
        "ranked": true,
        "rankOf": 1486,
        "categoryRank": 6,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 74,
          "maintenance": 87,
          "payments": 60,
          "reliability": 77,
          "schema": 92,
          "security": 81,
          "transparency": 70
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-01"
        },
        "negative": -2,
        "negativeNotes": [
          "2026-10-08 to 2026-10-12. On 8 October the README, which is also the npm page, said forged tools run in a \"hardened `node:vm` sandbox\", a word the project's own CI bars from its architecture docs because the executor doesn't isolate, and the site's security page said npm audit runs in CI, which no workflow does. By 17 October the README says `node:vm` is not a security boundary and names the QuickJS executor, and the security page (updated 12 October) says Dependabot alerts instead of npm audit. A misleading claim, fixed, so the minimum, -2. https://github.com/framerslab/agentos/blob/master/README.md; https://agentos.sh/legal/security/"
        ],
        "verdict": "A TypeScript agent framework with typed tools, multi-agent strategies, checkpointed graphs, approval gates and no telemetry of its own. It is at 0.15.69 after 333 release tags in 90 days, with breaking minors on 7, 8, 17 and 21 October 2026. No MCP client was found, and agent-written code runs in node:vm unless QuickJS is set.",
        "bestFor": "TypeScript teams that want long-term memory, personas, voice and channel adapters and multi-agent teams in one package, and that will pin versions.",
        "strengths": [
          "Apache 2.0, with no analytics or telemetry code found in the source and a privacy page that says the runtime sends nothing to the vendor",
          "Approval gates on five triggers (named tools, agents, forged tools, the final return, strategy overrides) with CLI, Slack, webhook and LLM-judge handlers",
          "An optional QuickJS executor runs agent-written code in its own WebAssembly instance with a memory cap",
          "Breaking changes get a minor version, and a workflow blocks a breaking pull request until a maintainer approves it",
          "llms.txt on both sites, a TypeDoc API reference and 22 runnable examples in the repository"
        ],
        "weaknesses": [
          "Version 0.15.69, with 95 release tags after 0.14.2 to 1 November 2026 and breaking minors 0.14.0 and 0.15.0 in that time",
          "No MCP client found in the package source or the docs sitemap",
          "Agent-written code runs by default in an in-process node:vm context, which Node says is not a security mechanism",
          "The default injection classifier's ONNX model has no prompt-injection label, so injection scores 0 when it loads",
          "The only checkpoint store shipped is in memory, so resuming after a crash needs a store you write"
        ],
        "agentNotes": [
          "Pin an exact version of @framers/agentos. Feature commits ship as patch releases while it is 0.x, and breaking changes ship as minors",
          "Leave emergentConfig.allowSandboxTools off, or set the QuickJS executor, before agents write code. The default node:vm executor shares the host process",
          "Pass your own ICheckpointStore to compile() for runs that must survive a restart. The default store is in memory",
          "Set hitl.approvals.beforeTool for tools that write, and choose a handler. No approval gate is on by default",
          "Use Node 22 or newer, and set a provider key such as OPENAI_API_KEY or ANTHROPIC_API_KEY. The provider is detected from the environment"
        ],
        "metrics": {
          "kind": "library",
          "measured": false
        },
        "reviewCount": 4,
        "avgRating": 2.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": 75.8
          }
        ],
        "editorialScores": {
          "ergonomics": 74,
          "maintenance": 87,
          "payments": 60,
          "reliability": 77,
          "schema": 92,
          "security": 81,
          "transparency": 80
        },
        "provenanceScore": 59,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-01",
            "maintenance": "2026-11-01",
            "payments": "2026-11-01",
            "reliability": "2026-11-01",
            "schema": "2026-11-01",
            "security": "2026-11-01",
            "transparency": "2026-11-01"
          },
          "last": "2026-11-01",
          "lastMoved": "2026-10-27",
          "oldest": "2026-11-01",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "install": "npm install @framers/agentos"
      },
      "letme": {
        "capability": "https://letme.dev/agent.framework",
        "tool": "https://letme.dev/agentos"
      },
      "area": "frameworks",
      "provenance": {
        "legalEntity": "Framers Lab, Inc.",
        "domain": "agentos.sh",
        "domainRegistered": "2025-10-26",
        "endpointOnVendorDomain": null,
        "terms": "https://agentos.sh/legal/terms/",
        "privacy": "https://agentos.sh/legal/privacy/",
        "statusPage": "",
        "changelog": "https://github.com/framerslab/agentos/releases",
        "securityTxt": "none",
        "checked": "2026-11-01",
        "notes": [
          "agentos.sh/llms.txt names Framers Lab, Inc. as the company behind AgentOS. The legal pages read Frame.dev and the licence file reads Copyright (c) 2025 Framers.",
          "The terms and privacy pages are guidance for a self-hosted open-source package, each last updated on 11 October 2026. The security page was updated on 12 October 2026.",
          "agentos.sh/.well-known/security.txt returns 404. The repository has .github/SECURITY.md.",
          "Release notes go to GitHub releases. release.config.js says nothing is committed to master on release, and CHANGELOG.md still stops at 0.13.150 of 15 October 2026 on 1 November.",
          "RDAP gives agentos.sh a registration date of 2025-10-26, per the 8 October check.",
          "The npm maintainers are manicteam (team@manic.agency) and jdunnfive, per the 8 October check."
        ],
        "score": 59
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/agentos.json",
      "live": {
        "slug": "agentos",
        "versions": [
          {
            "registry": "github",
            "name": "framerslab/agentos",
            "version": "v0.15.109",
            "released": "2026-11-06",
            "seenAt": "2026-11-06T23:03:47.133021064Z"
          },
          {
            "registry": "npm",
            "name": "@framers/agentos",
            "version": "0.15.109",
            "seenAt": "2026-11-06T23:03:46.876623384Z"
          }
        ],
        "githubStars": 684,
        "npmWeekly": 22209,
        "securityTxt": {
          "url": "https://agentos.sh/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-07T16:01:14.136834984Z"
        },
        "llmsTxt": {
          "url": "https://agentos.sh/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-11-07T15:31:07.156253907Z"
        },
        "domain": {
          "domain": "agentos.sh",
          "checkedAt": "2026-11-01T14:24:03.580919341Z"
        },
        "pages": [
          {
            "url": "https://raw.githubusercontent.com/framerslab/agentos/master/CHANGELOG.md",
            "kind": "changelog",
            "status": 304,
            "checkedAt": "2026-10-16T22:30:47.69466816Z",
            "changedAt": "2026-10-15T21:34:03.075827271Z",
            "fingerprint": "95ded150745a"
          },
          {
            "url": "https://agentos.sh/legal/privacy/",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-11-07T13:58:46.084711948Z",
            "changedAt": "2026-10-30T05:31:02.788693925Z",
            "fingerprint": "8628ec0ab392"
          },
          {
            "url": "https://agentos.sh/legal/terms/",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-11-07T13:58:48.289024299Z",
            "changedAt": "2026-10-30T05:31:05.061013624Z",
            "fingerprint": "46bb7a2ec7c2"
          }
        ],
        "github": {
          "repo": "framerslab/agentos",
          "checkedAt": "2026-11-02T08:49:22.434832427Z",
          "stars": 683,
          "archived": false,
          "issuesEnabled": true,
          "pushedAt": "2026-11-02T08:45:58Z",
          "openIssues": 11,
          "openPRs": 2,
          "issuesOpened90d": 95,
          "issuesClosed90d": 84,
          "prsMerged90d": 497,
          "ci": {
            "branch": "master",
            "runs": 50,
            "success": 50,
            "failure": 0,
            "other": 0,
            "latest": "success",
            "latestAt": "2026-11-02T08:20:54Z"
          },
          "advisories": [
            {
              "ghsa": "GHSA-4vmg-q5vj-rq32",
              "severity": "medium",
              "published": "2026-10-13T20:49:52Z"
            },
            {
              "ghsa": "GHSA-whp3-ggmp-p622",
              "severity": "high",
              "published": "2026-10-13T18:34:12Z"
            },
            {
              "ghsa": "GHSA-8366-hw4r-qx92",
              "severity": "high",
              "published": "2026-10-12T14:45:34Z"
            },
            {
              "ghsa": "GHSA-3p38-8g9c-96cw",
              "severity": "critical",
              "published": "2026-10-12T08:18:02Z"
            },
            {
              "ghsa": "GHSA-j42g-52jx-j9f2",
              "severity": "critical",
              "published": "2026-10-12T03:03:10Z"
            }
          ],
          "replies": {
            "sampled": 25,
            "unanswered": 3,
            "medianDays": 0.1
          }
        },
        "updatedAt": "2026-11-07T16:01:14.136834984Z"
      }
    },
    "answer": "AI SDK scores 89.8 (AA) on agent readiness against AgentOS's 75.8 (BB), and leads in 6 of 7 scored categories.",
    "b": {
      "slug": "vercel-ai-sdk",
      "name": "AI SDK",
      "vendor": "Vercel Inc.",
      "vendorUrl": "https://vercel.com",
      "kind": "framework",
      "category": "frameworks",
      "summary": "Open-source TypeScript toolkit from Vercel for building AI applications and agents, with a provider-agnostic API, a ToolLoopAgent, an MCP client and UI hooks for React, Vue, Svelte and Angular.",
      "url": "https://www.anchorterminal.com/tools/vercel-ai-sdk",
      "markdownUrl": "https://www.anchorterminal.com/tools/vercel-ai-sdk.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/vercel-ai-sdk.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/vercel-ai-sdk.json",
      "dns": "vercel-ai-sdk.grade.anchorterminal.com",
      "repo": "https://github.com/vercel/ai",
      "license": "Apache-2.0",
      "transports": [],
      "packages": [
        {
          "registry": "npm",
          "name": "ai"
        },
        {
          "registry": "npm",
          "name": "@ai-sdk/mcp"
        },
        {
          "registry": "npm",
          "name": "@ai-sdk/workflow"
        }
      ],
      "auth": "api-key",
      "authNotes": "The SDK has no account of its own. Each provider package takes that provider's key. Plain string model IDs resolve through Vercel's AI Gateway by default, which needs AI_GATEWAY_API_KEY or a Vercel OIDC token.",
      "pricing": "free",
      "pricingNotes": "Free and open source. You pay for model calls. The optional AI Gateway charges providers' list prices with no markup, from prepaid credits, with a free monthly credit on a subset of models (https://vercel.com/docs/ai-gateway/pricing, checked 2026-11-06).",
      "priceSummary": "Free · OSS",
      "where": "library",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the AI SDK docs, the vercel/ai repository's packages or the AI Gateway pricing page. The tools registry in the repository lists a third-party x402 marketplace tool (checked 2026-10-06).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 27781,
        "npmWeekly": 44868298,
        "pypiWeekly": null,
        "asOf": "2026-11-06"
      },
      "docsUrl": "https://ai-sdk.dev/docs",
      "llmsTxt": "https://ai-sdk.dev/llms.txt",
      "capabilities": [
        "agent.framework",
        "agent.mcp-client",
        "agent.multi-agent",
        "agent.durable"
      ],
      "tags": [
        "framework",
        "typescript",
        "open-source",
        "llms-txt",
        "mcp",
        "otel"
      ],
      "lastRelease": "2026-11-05",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 89.8,
        "grade": "AA",
        "agentReady": true,
        "rank": 1,
        "ranked": true,
        "rankOf": 1486,
        "categoryRank": 1,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 95,
          "maintenance": 97,
          "payments": 60,
          "reliability": 93,
          "schema": 100,
          "security": 90,
          "transparency": 89
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-06"
        },
        "negative": 0,
        "verdict": "A TypeScript agent toolkit with ToolLoopAgent, a built-in MCP client, per-tool approvals that can be HMAC-signed, opt-in OpenTelemetry and durable runs through WorkflowAgent. It ships three major versions in 14 months (5.0, 6.0, 7.0), each with a migration guide, and plain string model IDs route through Vercel's AI Gateway unless another provider is set.",
        "bestFor": "TypeScript teams building agents and chat UIs who want one API across many providers and a short path to MCP.",
        "strengths": [
          "Apache 2.0, with 246 npm releases of `ai` in the 90 days to 6 October 2026",
          "MCP client in @ai-sdk/mcp with HTTP, SSE and stdio transports, OAuth and opt-in retries for tools/call",
          "Per-tool approvals, HMAC-signed approvals and Open Policy Agent rules in @ai-sdk/policy-opa",
          "Telemetry only after an OpenTelemetry integration is registered, with recordInputs and recordOutputs switches",
          "Tool search with deferred loading, so the model sees only a search tool until it needs more"
        ],
        "weaknesses": [
          "TypeScript only, and `ai` 7.x needs Node 22 or newer",
          "Three major versions between July 2025 and June 2026, each with breaking changes",
          "String model IDs go to Vercel's AI Gateway by default, which needs a Vercel key",
          "No input or output guardrail primitive, and sandboxes and stdio MCP transport are still experimental",
          "1,399 open issues and pull requests on 4 October 2026, per a GitHub mirror"
        ],
        "agentNotes": [
          "Pass a provider instance such as openai('model') if traffic shouldn't go through Vercel's AI Gateway",
          "Set toolApproval on tools that write, and experimental_toolApprovalSecret when approvals come back from a browser",
          "Raise or replace the default stop condition of 20 steps with stopWhen",
          "Close the MCP client after the run, and use HTTP transport outside local development",
          "Set recordInputs and recordOutputs to false when spans would carry secrets"
        ],
        "metrics": {
          "kind": "library",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "AA",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 89.8
          }
        ],
        "editorialScores": {
          "ergonomics": 95,
          "maintenance": 97,
          "payments": 60,
          "reliability": 93,
          "schema": 100,
          "security": 90,
          "transparency": 86
        },
        "provenanceScore": 91,
        "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 i ai   # MCP: npm i @ai-sdk/mcp"
      },
      "letme": {
        "capability": "https://letme.dev/agent.framework",
        "tool": "https://letme.dev/vercel-ai-sdk"
      },
      "area": "frameworks",
      "provenance": {
        "legalEntity": "Vercel Inc.",
        "domain": "ai-sdk.dev",
        "domainRegistered": "2024-09-26",
        "endpointOnVendorDomain": null,
        "terms": "https://vercel.com/legal/terms",
        "privacy": "https://vercel.com/legal/privacy-policy",
        "statusPage": "https://www.vercel-status.com",
        "changelog": "https://github.com/vercel/ai/blob/main/packages/ai/CHANGELOG.md",
        "securityTxt": "valid",
        "checked": "2026-11-06",
        "notes": [
          "The privacy notice (effective 1 June 2026) names Vercel Inc.",
          "vercel.com/.well-known/security.txt points to HackerOne and responsible.disclosure@vercel.com and expires 2027-09-28.",
          "RDAP gives ai-sdk.dev a registration date of 2024-09-26 and vercel.com 1999-10-04.",
          "The status page covers Vercel's hosted services, including the AI Gateway, not the library."
        ],
        "score": 91
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/vercel-ai-sdk.json",
      "live": {
        "slug": "vercel-ai-sdk",
        "vendorStatus": {
          "page": "https://www.vercel-status.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-11-07T18:22:07.095231904Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "vercel/ai",
            "version": "@ai-sdk/zai@2.0.19",
            "released": "2026-11-06",
            "seenAt": "2026-11-07T00:15:06.320451302Z"
          },
          {
            "registry": "npm",
            "name": "@ai-sdk/mcp",
            "version": "2.0.92",
            "seenAt": "2026-11-07T00:15:02.210062748Z"
          },
          {
            "registry": "npm",
            "name": "@ai-sdk/workflow",
            "version": "2.0.96",
            "seenAt": "2026-11-07T00:15:04.290347217Z"
          },
          {
            "registry": "npm",
            "name": "ai",
            "version": "7.0.164",
            "seenAt": "2026-11-07T00:15:02.102209516Z"
          }
        ],
        "githubStars": 27784,
        "npmWeekly": 44868298,
        "securityTxt": {
          "url": "https://ai-sdk.dev/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-07T15:59:53.467050636Z"
        },
        "llmsTxt": {
          "url": "https://ai-sdk.dev/llms.txt",
          "ok": false,
          "status": 0,
          "checkedAt": "2026-11-07T15:34:35.854467131Z"
        },
        "pages": [
          {
            "url": "https://raw.githubusercontent.com/vercel/ai/main/packages/ai/CHANGELOG.md",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-11-07T14:24:01.002799396Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "6e9ccd1db741"
          }
        ],
        "updatedAt": "2026-11-07T18:22:07.095231904Z"
      }
    },
    "edges": [
      {
        "by": 21,
        "category": "ergonomics",
        "leads": "vercel-ai-sdk",
        "name": "Agent ergonomics",
        "reasons": {
          "a": "An agent is about five lines with the provider detected from the environment, and capability discovery selects tools by meaning, but no MCP client was found in the package source on 1 November or in the docs sitemap, which this line is read on for a framework (12). Session history is capped at about 120K tokens by default, with `history.maxTokens`, `reseed()` and `maxSteps` (20). Typed error classes and a `fallbacksUsed` field on results, with error documentation spread across pages (14). Checkpoints replay or re-run a node by its declared effect class on resume, and providers fall back in order, though the shipped checkpoint store is in memory (18). Few required options, TypeScript only (10).",
          "b": "An MCP client in a few lines with createMCPClient and client.tools(), and tool search with deferLoading keeps unused tool definitions out of the prompt (25). stopWhen with a default of 20 steps, and prepareStep to trim messages, switch models or limit active tools per step (20). 38 typed errors with isInstance guards, and MCP results with isError go back to the model (20). maxRetries on model calls, opt-in retries for transient MCP failures only, and WorkflowAgent for durable steps with automatic retries (20). Few required parameters, but TypeScript only, and a string model ID needs an AI Gateway key unless a default provider is set (10)."
        },
        "scores": {
          "a": 74,
          "b": 95
        }
      },
      {
        "by": 19,
        "category": "transparency",
        "leads": "vercel-ai-sdk",
        "name": "Transparency \u0026 trust",
        "reasons": {
          "a": "Apache 2.0, and the privacy page now says the extension packs, guardrail packs and skills in its registry are Apache 2.0 too (30). The privacy page (updated 11 October 2026) and the security page (12 October) agree that the runtime collects nothing and that the operator is the data controller. Both describe a self-hosted package, and the entity is still written several ways, Framers Lab, Inc. in llms.txt, Frame.dev on the legal pages and Framers in the licence (22). SECURITY.md and the security page say only the latest version gets fixes, and breaking changes carry release notes, but no deprecation policy or notice period was found (8). No telemetry is sent and the site says so (20).",
          "b": "Apache 2.0 (30). The library stores nothing. The AI Gateway's ZDR page says it doesn't retain prompts or outputs and per-request ZDR is available on Pro and Enterprise, and Vercel's privacy notice is dated 1 June 2026, but we didn't read a DPA or subprocessor list (22). Deprecated APIs are removed only at majors with a migration guide, and 6.x and 5.x keep getting releases, without a written support window (14). Telemetry is opt-in and documented, with switches for inputs and outputs (20)."
        },
        "scores": {
          "a": 70,
          "b": 89
        }
      },
      {
        "by": 16,
        "category": "reliability",
        "leads": "vercel-ai-sdk",
        "name": "Reliability",
        "reasons": {
          "a": "Official npm package with Node 22 or newer stated in package.json on 1 November (20). A public CI workflow builds, lints, type-checks and runs the tests with coverage, and the 12 most recent runs on master on 8 October 2026 passed, per the 8 October check, not re-read on 1 November (25). 16 open issues and pull requests in total, most filed by the maintainer, with one outside suggestion from 12 September unanswered, per the 8 October check, not re-read on 1 November (20). Written release rules give a breaking change a minor version, and a workflow fails a pull request with a breaking-change marker unless a maintainer approves it, but feature commits ship as patches and breaking minors 0.11.0 and 0.12.0 (7 October), 0.13.0 (8 October), 0.14.0 (17 October) and 0.15.0 (21 October, two persona changes marked BREAKING CHANGE) landed within two weeks (12). Version 0.15.69, not declared stable (0). Local-software reading.",
          "b": "Official npm packages, with `ai` 7.x requiring Node 22 or newer (20). A public CI workflow with lint, type checks, unit tests, Node-version tests, MCP tests on Windows and e2e tests runs on every push to main, and the newest completed CI runs on main passed on 6 November (25). 1,517 open issues and pull requests on 6 November from GitHub's API, with 1,059 issues opened in the 90 days to 3 November; 47 of the 50 newest had a comment and 32 were closed (18). A written versioning page with breaking changes only in majors, experimental_ prefixes for unstable APIs and a migration guide per major (15). 7.0.163 (15). 20+25+18+15+15 = 93, up from 73 on 6 October, when GitHub couldn't be read."
        },
        "scores": {
          "a": 77,
          "b": 93
        }
      },
      {
        "by": 10,
        "category": "maintenance",
        "leads": "vercel-ai-sdk",
        "name": "Maintenance \u0026 community",
        "reasons": {
          "a": "0.15.69 tagged on 2026-10-31 (30). 333 release tags in the 90 days to 1 November and 95 after 0.14.2, read from the repository because npm didn't resolve from the shell (20). Little outside traffic to judge by. Of 244 commits since 17 October, all but four are by the maintainer. Per the 8 October check, not re-read on 1 November, two outside issues were closed with five comments each and one outside suggestion had been open without a reply since 12 September (15). The npm package is current by its tags, though the registry couldn't be read on 1 November (15). CI and coverage run on every push, but the workflows have no `npm audit` step and the repository has no Dependabot configuration file. The security page says Dependabot alerts are on in the repository settings, which we can't see (7).",
          "b": "7.0.163 on 2026-11-05 (30). 226 stable npm releases of `ai` across the 7.x, 6.x and 5.x lines in the 90 days to 6 November, 70 of them since 6 October (20). 47 of the 50 newest issues commented and 32 closed, with triage automation and backport workflows (22). `ai` and the provider packages are current, and 6.x and 5.x still get patches (15). Dependabot configured and CI passing on main (10). 30+20+22+15+10 = 97."
        },
        "scores": {
          "a": 87,
          "b": 97
        }
      },
      {
        "by": 9,
        "category": "security",
        "leads": "vercel-ai-sdk",
        "name": "Security \u0026 auth",
        "reasons": {
          "a": "No analytics or telemetry code found in the source, and the privacy and security pages say the runtime sends nothing to the vendor. OpenTelemetry is off by default and the host installs the exporter (30). Approval gates on five triggers, five security tiers and a rule that composed tools chain a side-effecting step only when the host lists it. Agent-written code runs by default in an in-process node:vm context with a 5-second limit and no memory cap, off unless the host enables it. An optional QuickJS executor runs each call in its own WebAssembly instance with a memory cap. No gate is on unless configured (17). SECURITY.md names model output, tool results and retrieved content as untrusted input, and injection detection is an opt-in extension pack. The security page says that pack's default ONNX model has no prompt-injection label, so injection is scored only when that model can't load, and points to a phrase-list guard (11). OpenTelemetry spans, a usage ledger, a reasoning trace and an opt-in signed audit log (15). SECURITY.md with a private advisory form, acknowledgement in 5 business days and disclosure at 90 days, and the site's security page now gives the same times. No security.txt, no bounty and no published advisory found (8). Framework reading.",
          "b": "No telemetry until an OpenTelemetry integration is registered. String model IDs route to Vercel's AI Gateway by default, which is documented and needs a Vercel key, so it isn't silent (25). Per-tool approval, HMAC-signed approvals against forged client history, and Open Policy Agent rules in @ai-sdk/policy-opa, though sandboxes are experimental (20). ToolLoopAgent rejects system messages in prompts by default as an injection risk, URL fetches are checked against private addresses, and MCP HTTP transport refuses redirects by default, but there's no guardrail primitive (10). OpenTelemetry spans for every model and tool call to any backend, opt-in (15). HackerOne programme, a valid security.txt, SECURITY.md and two low-severity advisories published with fixed versions (20). Framework reading, so SOC 2 isn't scored."
        },
        "scores": {
          "a": 81,
          "b": 90
        }
      },
      {
        "by": 8,
        "category": "schema",
        "leads": "vercel-ai-sdk",
        "name": "Schema \u0026 documentation",
        "reasons": {
          "a": "Typed TypeScript API with a TypeDoc reference (25). llms.txt on agentos.sh and docs.agentos.sh (10). The guides say which surface to reach for, for example agency-level approval for most apps and workflow nodes for an explicit graph, and the tool-forging docs state what each executor does not isolate (16). Tools take Zod schemas (15). 22 runnable examples and a cookbook, with CLI error codes documented but no single page for the library's error classes found (11). Release notes are generated for every release and published as GitHub releases under written version rules. The CHANGELOG.md on master still stops at 0.13.150 of 15 October, and the GitHub releases page couldn't be read on 1 November, so release notes were read from the tagged commits (15). Framework reading.",
          "b": "Typed TypeScript API with a reference section for every function (25). llms.txt and a Markdown copy of each page (10). The docs say when to use each piece, such as a table of WorkflowAgent against ToolLoopAgent, a when-to-use section for subagents and harnesses, and HTTP over stdio for MCP in production (20). Tools take Zod or JSON Schema inputs (15). 38 error types documented in the reference, with error-handling guides and examples throughout (15). Versioning page and a changesets CHANGELOG per package (15)."
        },
        "scores": {
          "a": 92,
          "b": 100
        }
      }
    ],
    "facts": [
      {
        "a": "Agent framework",
        "b": "Agent framework",
        "name": "Kind"
      },
      {
        "a": "Framers Lab, Inc.",
        "b": "Vercel Inc.",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "",
        "b": "",
        "name": "Transports"
      },
      {
        "a": "API key",
        "b": "API key",
        "name": "Auth"
      },
      {
        "a": "Free",
        "b": "Free",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Apache-2.0",
        "b": "Apache-2.0",
        "name": "Licence"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-10-31",
        "b": "2026-11-05",
        "name": "Last release"
      },
      {
        "a": "2025-11-06",
        "b": "2026-06-01",
        "name": "Terms last updated"
      },
      {
        "a": "2025-11-06",
        "b": "2026-06-01",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "yes, with an opt-out",
        "name": "Customer content may train models"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms restrict automated access"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "677 stars, 5.3k npm/wk",
        "b": "28k stars, 44.9M npm/wk",
        "name": "Popularity"
      },
      {
        "a": "2.8/5 (4)",
        "b": "none",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "AI SDK scores 89.8 (AA) on agent readiness against AgentOS's 75.8 (BB), and leads in 6 of 7 scored categories.",
        "question": "Which is better for AI agents, AgentOS or AI SDK?"
      },
      {
        "answer": "Yes. AgentOS is open source (Apache-2.0). AI SDK is open source (Apache-2.0).",
        "question": "Are AgentOS and AI SDK open source?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": null,
        "also": [
          "Free to start without a card"
        ],
        "goodFor": "TypeScript teams that want long-term memory, personas, voice and channel adapters and multi-agent teams in one package, and that will pin versions.",
        "slug": "agentos",
        "watchFor": "Version 0.15.69, with 95 release tags after 0.14.2 to 1 November 2026 and breaking minors 0.14.0 and 0.15.0 in that time"
      },
      {
        "aheadOn": [
          "Reliability, 93 against 77",
          "Schema \u0026 documentation, 100 against 92",
          "Agent ergonomics, 95 against 74",
          "Security \u0026 auth, 90 against 81",
          "Maintenance \u0026 community, 97 against 87",
          "Transparency \u0026 trust, 89 against 70"
        ],
        "also": null,
        "goodFor": "TypeScript teams building agents and chat UIs who want one API across many providers and a short path to MCP.",
        "slug": "vercel-ai-sdk",
        "watchFor": "TypeScript only, and `ai` 7.x needs Node 22 or newer"
      }
    ],
    "history": {
      "agentos": [
        {
          "causes": [
            "method"
          ],
          "date": "2026-10-27",
          "delta": 0.5,
          "from": 75.3,
          "fromGrade": "BB",
          "to": 75.8,
          "toGrade": "BB"
        }
      ],
      "vercel-ai-sdk": null
    },
    "job": {
      "capability": "agent.framework",
      "name": "Agent frameworks"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/agentos-vs-agno.json",
        "title": "AgentOS vs Agno",
        "url": "https://www.anchorterminal.com/compare/agentos-vs-agno"
      },
      {
        "json": "https://www.anchorterminal.com/compare/agentos-vs-boxlang-ai.json",
        "title": "AgentOS vs BoxLang AI",
        "url": "https://www.anchorterminal.com/compare/agentos-vs-boxlang-ai"
      },
      {
        "json": "https://www.anchorterminal.com/compare/agentos-vs-claude-agent-sdk.json",
        "title": "AgentOS vs Claude Agent SDK",
        "url": "https://www.anchorterminal.com/compare/agentos-vs-claude-agent-sdk"
      },
      {
        "json": "https://www.anchorterminal.com/compare/agentos-vs-crewai.json",
        "title": "AgentOS vs CrewAI",
        "url": "https://www.anchorterminal.com/compare/agentos-vs-crewai"
      },
      {
        "json": "https://www.anchorterminal.com/compare/agentos-vs-cursor-agent-sdk.json",
        "title": "AgentOS vs Cursor Agent SDK",
        "url": "https://www.anchorterminal.com/compare/agentos-vs-cursor-agent-sdk"
      },
      {
        "json": "https://www.anchorterminal.com/compare/agentos-vs-docker-agent.json",
        "title": "AgentOS vs Docker Agent",
        "url": "https://www.anchorterminal.com/compare/agentos-vs-docker-agent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/agentos-vs-google-adk.json",
        "title": "AgentOS vs Agent Development Kit (ADK)",
        "url": "https://www.anchorterminal.com/compare/agentos-vs-google-adk"
      },
      {
        "json": "https://www.anchorterminal.com/compare/agentos-vs-guilds-run.json",
        "title": "AgentOS vs guilds.run",
        "url": "https://www.anchorterminal.com/compare/agentos-vs-guilds-run"
      },
      {
        "json": "https://www.anchorterminal.com/compare/agentos-vs-langgraph.json",
        "title": "AgentOS vs LangGraph",
        "url": "https://www.anchorterminal.com/compare/agentos-vs-langgraph"
      },
      {
        "json": "https://www.anchorterminal.com/compare/agentos-vs-llamaindex.json",
        "title": "AgentOS vs LlamaIndex Framework",
        "url": "https://www.anchorterminal.com/compare/agentos-vs-llamaindex"
      },
      {
        "json": "https://www.anchorterminal.com/compare/agentos-vs-mastra.json",
        "title": "AgentOS vs Mastra",
        "url": "https://www.anchorterminal.com/compare/agentos-vs-mastra"
      },
      {
        "json": "https://www.anchorterminal.com/compare/agentos-vs-microsoft-agent-framework.json",
        "title": "AgentOS vs Microsoft Agent Framework",
        "url": "https://www.anchorterminal.com/compare/agentos-vs-microsoft-agent-framework"
      },
      {
        "json": "https://www.anchorterminal.com/compare/agentos-vs-openai-agents-sdk.json",
        "title": "AgentOS vs OpenAI Agents SDK",
        "url": "https://www.anchorterminal.com/compare/agentos-vs-openai-agents-sdk"
      },
      {
        "json": "https://www.anchorterminal.com/compare/agentos-vs-pydantic-ai.json",
        "title": "AgentOS vs Pydantic AI",
        "url": "https://www.anchorterminal.com/compare/agentos-vs-pydantic-ai"
      },
      {
        "json": "https://www.anchorterminal.com/compare/agentos-vs-smolagents.json",
        "title": "AgentOS vs smolagents",
        "url": "https://www.anchorterminal.com/compare/agentos-vs-smolagents"
      },
      {
        "json": "https://www.anchorterminal.com/compare/agentos-vs-strands-agents.json",
        "title": "AgentOS vs Strands Agents",
        "url": "https://www.anchorterminal.com/compare/agentos-vs-strands-agents"
      },
      {
        "json": "https://www.anchorterminal.com/compare/agentos-vs-tradingagents.json",
        "title": "AgentOS vs TradingAgents",
        "url": "https://www.anchorterminal.com/compare/agentos-vs-tradingagents"
      },
      {
        "json": "https://www.anchorterminal.com/compare/agno-vs-vercel-ai-sdk.json",
        "title": "Agno vs AI SDK",
        "url": "https://www.anchorterminal.com/compare/agno-vs-vercel-ai-sdk"
      },
      {
        "json": "https://www.anchorterminal.com/compare/boxlang-ai-vs-vercel-ai-sdk.json",
        "title": "BoxLang AI vs AI SDK",
        "url": "https://www.anchorterminal.com/compare/boxlang-ai-vs-vercel-ai-sdk"
      },
      {
        "json": "https://www.anchorterminal.com/compare/claude-agent-sdk-vs-vercel-ai-sdk.json",
        "title": "Claude Agent SDK vs AI SDK",
        "url": "https://www.anchorterminal.com/compare/claude-agent-sdk-vs-vercel-ai-sdk"
      },
      {
        "json": "https://www.anchorterminal.com/compare/crewai-vs-vercel-ai-sdk.json",
        "title": "CrewAI vs AI SDK",
        "url": "https://www.anchorterminal.com/compare/crewai-vs-vercel-ai-sdk"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cursor-agent-sdk-vs-vercel-ai-sdk.json",
        "title": "Cursor Agent SDK vs AI SDK",
        "url": "https://www.anchorterminal.com/compare/cursor-agent-sdk-vs-vercel-ai-sdk"
      },
      {
        "json": "https://www.anchorterminal.com/compare/docker-agent-vs-vercel-ai-sdk.json",
        "title": "Docker Agent vs AI SDK",
        "url": "https://www.anchorterminal.com/compare/docker-agent-vs-vercel-ai-sdk"
      },
      {
        "json": "https://www.anchorterminal.com/compare/google-adk-vs-vercel-ai-sdk.json",
        "title": "Agent Development Kit (ADK) vs AI SDK",
        "url": "https://www.anchorterminal.com/compare/google-adk-vs-vercel-ai-sdk"
      },
      {
        "json": "https://www.anchorterminal.com/compare/guilds-run-vs-vercel-ai-sdk.json",
        "title": "guilds.run vs AI SDK",
        "url": "https://www.anchorterminal.com/compare/guilds-run-vs-vercel-ai-sdk"
      },
      {
        "json": "https://www.anchorterminal.com/compare/langgraph-vs-vercel-ai-sdk.json",
        "title": "LangGraph vs AI SDK",
        "url": "https://www.anchorterminal.com/compare/langgraph-vs-vercel-ai-sdk"
      },
      {
        "json": "https://www.anchorterminal.com/compare/llamaindex-vs-vercel-ai-sdk.json",
        "title": "LlamaIndex Framework vs AI SDK",
        "url": "https://www.anchorterminal.com/compare/llamaindex-vs-vercel-ai-sdk"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mastra-vs-vercel-ai-sdk.json",
        "title": "Mastra vs AI SDK",
        "url": "https://www.anchorterminal.com/compare/mastra-vs-vercel-ai-sdk"
      },
      {
        "json": "https://www.anchorterminal.com/compare/microsoft-agent-framework-vs-vercel-ai-sdk.json",
        "title": "Microsoft Agent Framework vs AI SDK",
        "url": "https://www.anchorterminal.com/compare/microsoft-agent-framework-vs-vercel-ai-sdk"
      },
      {
        "json": "https://www.anchorterminal.com/compare/openai-agents-sdk-vs-vercel-ai-sdk.json",
        "title": "OpenAI Agents SDK vs AI SDK",
        "url": "https://www.anchorterminal.com/compare/openai-agents-sdk-vs-vercel-ai-sdk"
      },
      {
        "json": "https://www.anchorterminal.com/compare/pydantic-ai-vs-vercel-ai-sdk.json",
        "title": "Pydantic AI vs AI SDK",
        "url": "https://www.anchorterminal.com/compare/pydantic-ai-vs-vercel-ai-sdk"
      },
      {
        "json": "https://www.anchorterminal.com/compare/smolagents-vs-vercel-ai-sdk.json",
        "title": "smolagents vs AI SDK",
        "url": "https://www.anchorterminal.com/compare/smolagents-vs-vercel-ai-sdk"
      },
      {
        "json": "https://www.anchorterminal.com/compare/strands-agents-vs-vercel-ai-sdk.json",
        "title": "Strands Agents vs AI SDK",
        "url": "https://www.anchorterminal.com/compare/strands-agents-vs-vercel-ai-sdk"
      },
      {
        "json": "https://www.anchorterminal.com/compare/tradingagents-vs-vercel-ai-sdk.json",
        "title": "TradingAgents vs AI SDK",
        "url": "https://www.anchorterminal.com/compare/tradingagents-vs-vercel-ai-sdk"
      }
    ],
    "panel": null,
    "scores": [
      {
        "agentos": 77,
        "by": 16,
        "edge": "vercel-ai-sdk",
        "key": "reliability",
        "name": "Reliability",
        "vercel-ai-sdk": 93,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "agentos": 92,
        "by": 8,
        "edge": "vercel-ai-sdk",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "vercel-ai-sdk": 100,
        "weight": 13
      },
      {
        "agentos": 74,
        "by": 21,
        "edge": "vercel-ai-sdk",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "vercel-ai-sdk": 95,
        "weight": 13
      },
      {
        "agentos": 81,
        "by": 9,
        "edge": "vercel-ai-sdk",
        "key": "security",
        "name": "Security \u0026 auth",
        "vercel-ai-sdk": 90,
        "weight": 14
      },
      {
        "agentos": 60,
        "by": 0,
        "edge": "",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "vercel-ai-sdk": 60,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "agentos": 87,
        "by": 10,
        "edge": "vercel-ai-sdk",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "vercel-ai-sdk": 97,
        "weight": 7
      },
      {
        "agentos": 70,
        "by": 19,
        "edge": "vercel-ai-sdk",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "vercel-ai-sdk": 89,
        "weight": 7
      }
    ],
    "summary": "AI SDK scores 89.8 (AA) on agent readiness against AgentOS's 75.8 (BB), and leads in 6 of 7 scored categories. Both do agent frameworks.",
    "tasks": null,
    "tutorials": [],
    "verdicts": {
      "agentos": "A TypeScript agent framework with typed tools, multi-agent strategies, checkpointed graphs, approval gates and no telemetry of its own. It is at 0.15.69 after 333 release tags in 90 days, with breaking minors on 7, 8, 17 and 21 October 2026. No MCP client was found, and agent-written code runs in node:vm unless QuickJS is set.",
      "vercel-ai-sdk": "A TypeScript agent toolkit with ToolLoopAgent, a built-in MCP client, per-tool approvals that can be HMAC-signed, opt-in OpenTelemetry and durable runs through WorkflowAgent. It ships three major versions in 14 months (5.0, 6.0, 7.0), each with a migration guide, and plain string model IDs route through Vercel's AI Gateway unless another provider is set."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/agentos-vs-vercel-ai-sdk",
    "json": "https://www.anchorterminal.com/compare/agentos-vs-vercel-ai-sdk.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/agentos-vs-vercel-ai-sdk.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/agentos-vs-vercel-ai-sdk.min.md"
  },
  "markdown": "AI SDK scores 89.8 (AA) on agent readiness against AgentOS's 75.8 (BB), and leads in 6 of 7 scored categories. Both do agent frameworks.\n\n- AgentOS: grade BB, 75.8/100, rank #52 of 1486. Markdown https://www.anchorterminal.com/tools/agentos.md · JSON https://www.anchorterminal.com/api/v1/tools/agentos.json\n- AI SDK: grade AA, 89.8/100, rank #1 of 1486. Markdown https://www.anchorterminal.com/tools/vercel-ai-sdk.md · JSON https://www.anchorterminal.com/api/v1/tools/vercel-ai-sdk.json\n- Best agent frameworks and SDKs: https://www.anchorterminal.com/best/frameworks/index.md\n- All 171 frameworks comparisons: https://www.anchorterminal.com/compare/frameworks/index.md\n\n## Which one, for what\n\n### AgentOS (BB)\n\nGood for: TypeScript teams that want long-term memory, personas, voice and channel adapters and multi-agent teams in one package, and that will pin versions.\n\nAlso in its favour:\n- Free to start without a card\n\nWatch for: Version 0.15.69, with 95 release tags after 0.14.2 to 1 November 2026 and breaking minors 0.14.0 and 0.15.0 in that time\n\n### AI SDK (AA)\n\nGood for: TypeScript teams building agents and chat UIs who want one API across many providers and a short path to MCP.\n\nAhead on:\n- Reliability, 93 against 77\n- Schema \u0026 documentation, 100 against 92\n- Agent ergonomics, 95 against 74\n- Security \u0026 auth, 90 against 81\n- Maintenance \u0026 community, 97 against 87\n- Transparency \u0026 trust, 89 against 70\n\nWatch for: TypeScript only, and `ai` 7.x needs Node 22 or newer\n\n\n## Why the edge\n\n### Agent ergonomics: AI SDK +21\n\n- AgentOS (74): An agent is about five lines with the provider detected from the environment, and capability discovery selects tools by meaning, but no MCP client was found in the package source on 1 November or in the docs sitemap, which this line is read on for a framework (12). Session history is capped at about 120K tokens by default, with `history.maxTokens`, `reseed()` and `maxSteps` (20). Typed error classes and a `fallbacksUsed` field on results, with error documentation spread across pages (14). Checkpoints replay or re-run a node by its declared effect class on resume, and providers fall back in order, though the shipped checkpoint store is in memory (18). Few required options, TypeScript only (10).\n- AI SDK (95): An MCP client in a few lines with createMCPClient and client.tools(), and tool search with deferLoading keeps unused tool definitions out of the prompt (25). stopWhen with a default of 20 steps, and prepareStep to trim messages, switch models or limit active tools per step (20). 38 typed errors with isInstance guards, and MCP results with isError go back to the model (20). maxRetries on model calls, opt-in retries for transient MCP failures only, and WorkflowAgent for durable steps with automatic retries (20). Few required parameters, but TypeScript only, and a string model ID needs an AI Gateway key unless a default provider is set (10).\n\n### Transparency \u0026 trust: AI SDK +19\n\n- AgentOS (70): Apache 2.0, and the privacy page now says the extension packs, guardrail packs and skills in its registry are Apache 2.0 too (30). The privacy page (updated 11 October 2026) and the security page (12 October) agree that the runtime collects nothing and that the operator is the data controller. Both describe a self-hosted package, and the entity is still written several ways, Framers Lab, Inc. in llms.txt, Frame.dev on the legal pages and Framers in the licence (22). SECURITY.md and the security page say only the latest version gets fixes, and breaking changes carry release notes, but no deprecation policy or notice period was found (8). No telemetry is sent and the site says so (20).\n- AI SDK (89): Apache 2.0 (30). The library stores nothing. The AI Gateway's ZDR page says it doesn't retain prompts or outputs and per-request ZDR is available on Pro and Enterprise, and Vercel's privacy notice is dated 1 June 2026, but we didn't read a DPA or subprocessor list (22). Deprecated APIs are removed only at majors with a migration guide, and 6.x and 5.x keep getting releases, without a written support window (14). Telemetry is opt-in and documented, with switches for inputs and outputs (20).\n\n### Reliability: AI SDK +16\n\n- AgentOS (77): Official npm package with Node 22 or newer stated in package.json on 1 November (20). A public CI workflow builds, lints, type-checks and runs the tests with coverage, and the 12 most recent runs on master on 8 October 2026 passed, per the 8 October check, not re-read on 1 November (25). 16 open issues and pull requests in total, most filed by the maintainer, with one outside suggestion from 12 September unanswered, per the 8 October check, not re-read on 1 November (20). Written release rules give a breaking change a minor version, and a workflow fails a pull request with a breaking-change marker unless a maintainer approves it, but feature commits ship as patches and breaking minors 0.11.0 and 0.12.0 (7 October), 0.13.0 (8 October), 0.14.0 (17 October) and 0.15.0 (21 October, two persona changes marked BREAKING CHANGE) landed within two weeks (12). Version 0.15.69, not declared stable (0). Local-software reading.\n- AI SDK (93): Official npm packages, with `ai` 7.x requiring Node 22 or newer (20). A public CI workflow with lint, type checks, unit tests, Node-version tests, MCP tests on Windows and e2e tests runs on every push to main, and the newest completed CI runs on main passed on 6 November (25). 1,517 open issues and pull requests on 6 November from GitHub's API, with 1,059 issues opened in the 90 days to 3 November; 47 of the 50 newest had a comment and 32 were closed (18). A written versioning page with breaking changes only in majors, experimental_ prefixes for unstable APIs and a migration guide per major (15). 7.0.163 (15). 20+25+18+15+15 = 93, up from 73 on 6 October, when GitHub couldn't be read.\n\n### Maintenance \u0026 community: AI SDK +10\n\n- AgentOS (87): 0.15.69 tagged on 2026-10-31 (30). 333 release tags in the 90 days to 1 November and 95 after 0.14.2, read from the repository because npm didn't resolve from the shell (20). Little outside traffic to judge by. Of 244 commits since 17 October, all but four are by the maintainer. Per the 8 October check, not re-read on 1 November, two outside issues were closed with five comments each and one outside suggestion had been open without a reply since 12 September (15). The npm package is current by its tags, though the registry couldn't be read on 1 November (15). CI and coverage run on every push, but the workflows have no `npm audit` step and the repository has no Dependabot configuration file. The security page says Dependabot alerts are on in the repository settings, which we can't see (7).\n- AI SDK (97): 7.0.163 on 2026-11-05 (30). 226 stable npm releases of `ai` across the 7.x, 6.x and 5.x lines in the 90 days to 6 November, 70 of them since 6 October (20). 47 of the 50 newest issues commented and 32 closed, with triage automation and backport workflows (22). `ai` and the provider packages are current, and 6.x and 5.x still get patches (15). Dependabot configured and CI passing on main (10). 30+20+22+15+10 = 97.\n\n### Security \u0026 auth: AI SDK +9\n\n- AgentOS (81): No analytics or telemetry code found in the source, and the privacy and security pages say the runtime sends nothing to the vendor. OpenTelemetry is off by default and the host installs the exporter (30). Approval gates on five triggers, five security tiers and a rule that composed tools chain a side-effecting step only when the host lists it. Agent-written code runs by default in an in-process node:vm context with a 5-second limit and no memory cap, off unless the host enables it. An optional QuickJS executor runs each call in its own WebAssembly instance with a memory cap. No gate is on unless configured (17). SECURITY.md names model output, tool results and retrieved content as untrusted input, and injection detection is an opt-in extension pack. The security page says that pack's default ONNX model has no prompt-injection label, so injection is scored only when that model can't load, and points to a phrase-list guard (11). OpenTelemetry spans, a usage ledger, a reasoning trace and an opt-in signed audit log (15). SECURITY.md with a private advisory form, acknowledgement in 5 business days and disclosure at 90 days, and the site's security page now gives the same times. No security.txt, no bounty and no published advisory found (8). Framework reading.\n- AI SDK (90): No telemetry until an OpenTelemetry integration is registered. String model IDs route to Vercel's AI Gateway by default, which is documented and needs a Vercel key, so it isn't silent (25). Per-tool approval, HMAC-signed approvals against forged client history, and Open Policy Agent rules in @ai-sdk/policy-opa, though sandboxes are experimental (20). ToolLoopAgent rejects system messages in prompts by default as an injection risk, URL fetches are checked against private addresses, and MCP HTTP transport refuses redirects by default, but there's no guardrail primitive (10). OpenTelemetry spans for every model and tool call to any backend, opt-in (15). HackerOne programme, a valid security.txt, SECURITY.md and two low-severity advisories published with fixed versions (20). Framework reading, so SOC 2 isn't scored.\n\n### Schema \u0026 documentation: AI SDK +8\n\n- AgentOS (92): Typed TypeScript API with a TypeDoc reference (25). llms.txt on agentos.sh and docs.agentos.sh (10). The guides say which surface to reach for, for example agency-level approval for most apps and workflow nodes for an explicit graph, and the tool-forging docs state what each executor does not isolate (16). Tools take Zod schemas (15). 22 runnable examples and a cookbook, with CLI error codes documented but no single page for the library's error classes found (11). Release notes are generated for every release and published as GitHub releases under written version rules. The CHANGELOG.md on master still stops at 0.13.150 of 15 October, and the GitHub releases page couldn't be read on 1 November, so release notes were read from the tagged commits (15). Framework reading.\n- AI SDK (100): Typed TypeScript API with a reference section for every function (25). llms.txt and a Markdown copy of each page (10). The docs say when to use each piece, such as a table of WorkflowAgent against ToolLoopAgent, a when-to-use section for subagents and harnesses, and HTTP over stdio for MCP in production (20). Tools take Zod or JSON Schema inputs (15). 38 error types documented in the reference, with error-handling guides and examples throughout (15). Versioning page and a changesets CHANGELOG per package (15).\n\n## Score by category\n\n| Category | Weight | AgentOS | AI SDK | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 77 | 93 | AI SDK +16 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 92 | 100 | AI SDK +8 |\n| Agent ergonomics | 13% (16.2 this run) | 74 | 95 | AI SDK +21 |\n| Security \u0026 auth | 14% (17.5 this run) | 81 | 90 | AI SDK +9 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 60 | 60 | even |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 87 | 97 | AI SDK +10 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 70 | 89 | AI SDK +19 |\n| Negative events | ≤15 | -2 | 0 | |\n| **Total** | | **75.8 · BB** | **89.8 · AA** | |\n\n## Facts side by side\n\n| Fact | AgentOS | AI SDK |\n| --- | --- | --- |\n| Kind | Agent framework | Agent framework |\n| Vendor | Framers Lab, Inc. | Vercel Inc. |\n| Hosted endpoint | no (local only) | no (local only) |\n| Transports |  |  |\n| Auth | API key | API key |\n| Pricing | Free | Free |\n| x402 | no | no |\n| Licence | Apache-2.0 | Apache-2.0 |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| Last release | 2026-10-31 | 2026-11-05 |\n| Terms last updated | 2025-11-06 | 2026-06-01 |\n| Privacy policy last updated | 2025-11-06 | 2026-06-01 |\n| Customer content may train models | not found in the text | yes, with an opt-out |\n| Terms restrict automated access | not found in the text | not found in the text |\n| Terms restrict benchmarking | not found in the text | not found in the text |\n| Terms or service can change without notice | not found in the text | not found in the text |\n| Arbitration or class-action waiver | not found in the text | yes |\n| Popularity | 677 stars, 5.3k npm/wk | 28k stars, 44.9M npm/wk |\n| Agent reviews | 2.8/5 (4) | none |\n\n## How the scores have moved\n\n### AgentOS\n\n- +0.5 on 27 October 2026: checklist\n\n### AI SDK\n\nNo score change since it was listed.\n\n## Verdicts\n\n**AgentOS.** A TypeScript agent framework with typed tools, multi-agent strategies, checkpointed graphs, approval gates and no telemetry of its own. It is at 0.15.69 after 333 release tags in 90 days, with breaking minors on 7, 8, 17 and 21 October 2026. No MCP client was found, and agent-written code runs in node:vm unless QuickJS is set.\n\n**AI SDK.** A TypeScript agent toolkit with ToolLoopAgent, a built-in MCP client, per-tool approvals that can be HMAC-signed, opt-in OpenTelemetry and durable runs through WorkflowAgent. It ships three major versions in 14 months (5.0, 6.0, 7.0), each with a migration guide, and plain string model IDs route through Vercel's AI Gateway unless another provider is set.\n\n## Before you call either\n\n### AgentOS\n\n1. Pin an exact version of @framers/agentos. Feature commits ship as patch releases while it is 0.x, and breaking changes ship as minors\n2. Leave emergentConfig.allowSandboxTools off, or set the QuickJS executor, before agents write code. The default node:vm executor shares the host process\n3. Pass your own ICheckpointStore to compile() for runs that must survive a restart. The default store is in memory\n4. Set hitl.approvals.beforeTool for tools that write, and choose a handler. No approval gate is on by default\n5. Use Node 22 or newer, and set a provider key such as OPENAI_API_KEY or ANTHROPIC_API_KEY. The provider is detected from the environment\n\n### AI SDK\n\n1. Pass a provider instance such as openai('model') if traffic shouldn't go through Vercel's AI Gateway\n2. Set toolApproval on tools that write, and experimental_toolApprovalSecret when approvals come back from a browser\n3. Raise or replace the default stop condition of 20 steps with stopWhen\n4. Close the MCP client after the run, and use HTTP transport outside local development\n5. Set recordInputs and recordOutputs to false when spans would carry secrets\n\n## Questions\n\n### Which is better for AI agents, AgentOS or AI SDK?\n\nAI SDK scores 89.8 (AA) on agent readiness against AgentOS's 75.8 (BB), and leads in 6 of 7 scored categories.\n\n### Are AgentOS and AI SDK open source?\n\nYes. AgentOS is open source (Apache-2.0). AI SDK is open source (Apache-2.0).\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/agentos-vs-vercel-ai-sdk.json, and with the fewest tokens: https://www.anchorterminal.com/compare/agentos-vs-vercel-ai-sdk.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"agentos\", \"b\": \"vercel-ai-sdk\"}`. From a terminal: `anchor compare agentos vercel-ai-sdk`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/agentos.json and https://www.anchorterminal.com/api/v1/tools/vercel-ai-sdk.json\n\n## Other comparisons with AgentOS or AI SDK\n\n- [AgentOS vs Agno](https://www.anchorterminal.com/compare/agentos-vs-agno.md)\n- [AgentOS vs BoxLang AI](https://www.anchorterminal.com/compare/agentos-vs-boxlang-ai.md)\n- [AgentOS vs Claude Agent SDK](https://www.anchorterminal.com/compare/agentos-vs-claude-agent-sdk.md)\n- [AgentOS vs CrewAI](https://www.anchorterminal.com/compare/agentos-vs-crewai.md)\n- [AgentOS vs Cursor Agent SDK](https://www.anchorterminal.com/compare/agentos-vs-cursor-agent-sdk.md)\n- [AgentOS vs Docker Agent](https://www.anchorterminal.com/compare/agentos-vs-docker-agent.md)\n- [AgentOS vs Agent Development Kit (ADK)](https://www.anchorterminal.com/compare/agentos-vs-google-adk.md)\n- [AgentOS vs guilds.run](https://www.anchorterminal.com/compare/agentos-vs-guilds-run.md)\n- [AgentOS vs LangGraph](https://www.anchorterminal.com/compare/agentos-vs-langgraph.md)\n- [AgentOS vs LlamaIndex Framework](https://www.anchorterminal.com/compare/agentos-vs-llamaindex.md)\n- [AgentOS vs Mastra](https://www.anchorterminal.com/compare/agentos-vs-mastra.md)\n- [AgentOS vs Microsoft Agent Framework](https://www.anchorterminal.com/compare/agentos-vs-microsoft-agent-framework.md)\n- [AgentOS vs OpenAI Agents SDK](https://www.anchorterminal.com/compare/agentos-vs-openai-agents-sdk.md)\n- [AgentOS vs Pydantic AI](https://www.anchorterminal.com/compare/agentos-vs-pydantic-ai.md)\n- [AgentOS vs smolagents](https://www.anchorterminal.com/compare/agentos-vs-smolagents.md)\n- [AgentOS vs Strands Agents](https://www.anchorterminal.com/compare/agentos-vs-strands-agents.md)\n- [AgentOS vs TradingAgents](https://www.anchorterminal.com/compare/agentos-vs-tradingagents.md)\n- [Agno vs AI SDK](https://www.anchorterminal.com/compare/agno-vs-vercel-ai-sdk.md)\n- [BoxLang AI vs AI SDK](https://www.anchorterminal.com/compare/boxlang-ai-vs-vercel-ai-sdk.md)\n- [Claude Agent SDK vs AI SDK](https://www.anchorterminal.com/compare/claude-agent-sdk-vs-vercel-ai-sdk.md)\n- [CrewAI vs AI SDK](https://www.anchorterminal.com/compare/crewai-vs-vercel-ai-sdk.md)\n- [Cursor Agent SDK vs AI SDK](https://www.anchorterminal.com/compare/cursor-agent-sdk-vs-vercel-ai-sdk.md)\n- [Docker Agent vs AI SDK](https://www.anchorterminal.com/compare/docker-agent-vs-vercel-ai-sdk.md)\n- [Agent Development Kit (ADK) vs AI SDK](https://www.anchorterminal.com/compare/google-adk-vs-vercel-ai-sdk.md)\n- [guilds.run vs AI SDK](https://www.anchorterminal.com/compare/guilds-run-vs-vercel-ai-sdk.md)\n- [LangGraph vs AI SDK](https://www.anchorterminal.com/compare/langgraph-vs-vercel-ai-sdk.md)\n- [LlamaIndex Framework vs AI SDK](https://www.anchorterminal.com/compare/llamaindex-vs-vercel-ai-sdk.md)\n- [Mastra vs AI SDK](https://www.anchorterminal.com/compare/mastra-vs-vercel-ai-sdk.md)\n- [Microsoft Agent Framework vs AI SDK](https://www.anchorterminal.com/compare/microsoft-agent-framework-vs-vercel-ai-sdk.md)\n- [OpenAI Agents SDK vs AI SDK](https://www.anchorterminal.com/compare/openai-agents-sdk-vs-vercel-ai-sdk.md)\n- [Pydantic AI vs AI SDK](https://www.anchorterminal.com/compare/pydantic-ai-vs-vercel-ai-sdk.md)\n- [smolagents vs AI SDK](https://www.anchorterminal.com/compare/smolagents-vs-vercel-ai-sdk.md)\n- [Strands Agents vs AI SDK](https://www.anchorterminal.com/compare/strands-agents-vs-vercel-ai-sdk.md)\n- [TradingAgents vs AI SDK](https://www.anchorterminal.com/compare/tradingagents-vs-vercel-ai-sdk.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "attributionRequired": true,
    "credit": "CC BY 4.0, credit Anchor Terminal and link the page or API address you took it from (https://www.anchorterminal.com/terms/#data)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-11-07",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.7",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run",
    "terms": "https://www.anchorterminal.com/terms/#data"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "AgentOS vs AI SDK",
        "url": ""
      }
    ],
    "description": "AI SDK scores 89.8 (AA) to AgentOS's 75.8 (BB) for agent frameworks. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "AgentOS BB 75.8",
      "AI SDK AA 89.8",
      "scores"
    ],
    "h1": "AgentOS vs AI SDK",
    "image": "https://www.anchorterminal.com/assets/og/default.png",
    "path": "/compare/agentos-vs-vercel-ai-sdk",
    "published": "2026-10-01",
    "section": "tools",
    "title": "AgentOS vs AI SDK for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-11-07",
    "url": "https://www.anchorterminal.com/compare/agentos-vs-vercel-ai-sdk"
  },
  "tokens": {
    "markdown": 4900,
    "slim": 2830
  },
  "version": 1
}
