# Docker Agent vs AI SDK

> AI SDK scores 89.8 (AA) to Docker Agent's 73.6 (BB) for agent frameworks. Prices, MCP, x402, uptime and agent notes side by side.

- Canonical: https://www.anchorterminal.com/compare/docker-agent-vs-vercel-ai-sdk
- Markdown: https://www.anchorterminal.com/compare/docker-agent-vs-vercel-ai-sdk.md (~4,950 tokens)
- Site index for agents: https://www.anchorterminal.com/llms.txt (the key docs and every listing in one file, at most 16 MB, about 4 million tokens: https://www.anchorterminal.com/llms-full.txt)
- API: https://www.anchorterminal.com/api/v1/index.json
- MCP: https://www.anchorterminal.com/mcp (the whole catalogue as tools, no key)
- DNS: dig +short TXT <slug>.grade.anchorterminal.com (the grade as a DNS TXT record, for a sandbox with no HTTP where names still resolve; also top., best.<category>. and <a>.vs.<b>. under the zone, and the same under grade.letme.dev)
- Licence: CC BY 4.0, credit Anchor Terminal and link this page (https://www.anchorterminal.com/terms/#data)
- Updated: 2026-11-07

AI SDK scores 89.8 (AA) on agent readiness against Docker Agent's 73.6 (BB), and leads in 6 of 7 scored categories. Both do agent frameworks.

- Docker Agent: grade BB, 73.6/100, rank #102 of 1510. Markdown https://www.anchorterminal.com/tools/docker-agent.md · JSON https://www.anchorterminal.com/api/v1/tools/docker-agent.json
- AI SDK: grade AA, 89.8/100, rank #1 of 1510. Markdown https://www.anchorterminal.com/tools/vercel-ai-sdk.md · JSON https://www.anchorterminal.com/api/v1/tools/vercel-ai-sdk.json
- Best agent frameworks and SDKs: https://www.anchorterminal.com/best/frameworks/index.md
- All 171 frameworks comparisons: https://www.anchorterminal.com/compare/frameworks/index.md

## Which one, for what

### Docker Agent (BB)

Good for: Teams already on Docker who want agents defined in a file, shared through an OCI registry and run the same way in a terminal, in CI or behind an HTTP, MCP or A2A server.

Also in its favour:
- No key needed to call it
- Free to start without a card

Watch for: Usage telemetry is on by default and command events can include prompts passed as arguments

### AI SDK (AA)

Good for: TypeScript teams building agents and chat UIs who want one API across many providers and a short path to MCP.

Ahead on:
- Reliability, 93 against 88
- Schema & documentation, 100 against 90
- Agent ergonomics, 95 against 81
- Security & auth, 90 against 70
- Transparency & trust, 89 against 81

Also in its favour:
- No incidents deducted, where Docker Agent loses 7 points for them

Watch for: TypeScript only, and `ai` 7.x needs Node 22 or newer


## Why the edge

### Security & auth: AI SDK +20

- Docker Agent (70): Framework reading. 30 for what leaves the machine by default, 20 for approvals and sandboxing, 15 for prompt-injection posture, 15 for audit and 20 for the security programme. Usage telemetry is on by default, with a notice on first start and `TELEMETRY_ENABLED=false` to stop it. The telemetry page, moved to the configuration section by 17 October, still says command events include positional arguments, which for `run` and `exec` can include prompts, and error text (12). Four safety modes with allow, ask and deny rules, a default that asks for anything not read-only, `--exec` rejecting unapproved calls, `--sandbox` for a Docker Sandboxes VM, and HTTP MCP defaulting to loopback and `restricted`. Since 1.152.0 (21 October) the API server rejects cross-origin requests, checks `Host` on unauthenticated listeners and requires `--auth-token` on non-loopback ones. A run's `--listen` control plane still has no built-in authentication and accepts loopback addresses and local sockets only (19). The docs treat skill files and third-party configs as untrusted and restrict URI schemes against prompt injection, with no dedicated guidance page (10). Hooks for audit logging and approval decisions, opt-in OpenTelemetry traces, NDJSON transcripts and a session database (14). SECURITY.md with a 72-hour acknowledgement, a valid security.txt on docker.com (expires 2030-01-01, re-read on 1 November), two advisories published on GitHub with fixed versions, and CodeQL and zizmor in CI. No paid bounty, and we saw no CVE identifiers on the advisories. The advisories page answered 403 on 1 November, the GitHub advisory database held no new docker-agent entry from August to November, and OSV lists none for the Go module. 1.152.0 updates Go to 1.27.3 for its security fixes and locks down the REST API against CSRF and DNS rebinding, with no advisory found for the latter (15). SOC 2 isn't scored for a framework.
- 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.

### Agent ergonomics: AI SDK +14

- Docker Agent (81): Framework reading, scored on what an agent with MCP needs. The README's agent with one MCP server is eight lines of YAML and no code, with deferred toolsets and a code mode (23). Budgets cap cost, tokens and time, tool results are bounded to 50 KiB since 1.148.0, and context is compacted, but `max_iterations` is unlimited and no budget applies unless declared (16). `--json` writes one NDJSON event per message, tool call and error, and the API documents 404, 409, 413 and 502 responses. No exit-code reference found for `run --exec` (14). Sessions resume from SQLite, the event stream replays from a sequence number, follow-ups accept an `Idempotency-Key`, and read-only and destructive tool annotations drive the safety modes (18). One binary and a model key or a local model are enough to start. The library is Go only (10).
- 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).

### Schema & documentation: AI SDK +10

- Docker Agent (90): Framework reading. agent-schema.json in the repository is a JSON Schema for the whole config, and the chat server serves its OpenAPI document at /openapi.json. We found no OpenAPI document for the native /api server and didn't check the Go package reference (22). llms.txt on docker.github.io/docker-agent and on docs.docker.com (10). The docs say when to use the API server and when the chat server, compare six ways to pass large input, and state that permissions aren't a security boundary (17). Configs are parsed strictly, unknown fields fail to load with a hint, and safety fields accept four named modes only (13). An examples directory, a troubleshooting page of common errors and documented HTTP status codes for the API. We found no exit-code reference for `run --exec` (13). A dated CHANGELOG.md and a numbered config schema, now version 16, with migration on load (15).
- 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).

### Transparency & trust: AI SDK +8

- Docker Agent (81): Apache-2.0 (30). The telemetry page lists what's collected and warns that arguments and error text can carry secrets or personal data. It doesn't name the endpoint (api.docker.com, per the source), link Docker's privacy policy or give a retention period, unchanged on 17 October (15). Breaking changes are dated in the changelog and one renamed variable kept a fallback for one release, with no written deprecation policy, and the changelog says frozen config schema versions aren't maintained long-term (10). Telemetry is disclosed in the README, the docs and a first-start notice, with an opt-out variable (20).
- 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).

### Reliability: AI SDK +5

- Docker Agent (88): Read with the local-software lines, because the owner runs it. Binaries for macOS, Linux and Windows on amd64 and arm64 on every GitHub release, a Homebrew formula at 1.154.0 on 1 November, a Docker Hub image updated on 31 October, and Docker Desktop 4.63 and later bundle it. Go 1.27 is the stated minimum for source builds (20). The ci workflow runs on every push to main with about 1,350 test files and an e2e directory. Nine of the last ten push runs passed on 8 October, per the 8 October check, not re-read on 1 November (25). 25 open issues and 17 open pull requests on 8 October, most labelled and answered, with open reports of a race in `transfer_task` (#4156), a hand-off dropped silently (#4242) and `edit_file` editing the first of several matches (#3929), per the 8 October check, not re-read on 1 November (20). The changelog has Breaking Changes sections, but those changes ship in minor releases (1.114.0, 1.133.0 and 1.137.0 since July) and the major version has never moved. Since then 1.152.0 (21 October) made `--auth-token` mandatory on non-loopback API listeners under Bug Fixes, and 1.153.0 (28 October) removed MCP sampling, roots and logging support under Technical Changes and changed Go runtime packages in commits marked `!`, none of them in a Breaking Changes section (8). 1.154.0, past 1.0 (15).
- 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.

## Score by category

| Category | Weight | Docker Agent | AI SDK | Edge |
| --- | --- | --- | --- | --- |
| Reliability | 16% (20 this run) | 88 | 93 | AI SDK +5 |
| Performance | 10%, pending | pending | pending | not scored in this run |
| Schema & documentation | 13% (16.2 this run) | 90 | 100 | AI SDK +10 |
| Agent ergonomics | 13% (16.2 this run) | 81 | 95 | AI SDK +14 |
| Security & auth | 14% (17.5 this run) | 70 | 90 | AI SDK +20 |
| Payments & pricing | 10% (12.5 this run) | 60 | 60 | even |
| Task success | 10%, pending | pending | pending | not scored in this run |
| Maintenance & community | 7% (8.8 this run) | 96 | 97 | AI SDK +1 |
| Transparency & trust | 7% (8.8 this run) | 81 | 89 | AI SDK +8 |
| Negative events | ≤15 | -7 | 0 | |
| **Total** | | **73.6 · BB** | **89.8 · AA** | |

## Facts side by side

| Fact | Docker Agent | AI SDK |
| --- | --- | --- |
| Kind | Agent framework | Agent framework |
| Vendor | Docker | Vercel Inc. |
| Hosted endpoint | no (local only) | no (local only) |
| Transports |  |  |
| Auth | None | API key |
| Pricing | Free | Free |
| x402 | no | no |
| Licence | Apache-2.0 | Apache-2.0 |
| Read-only variant documented | no | no |
| llms.txt | yes | yes |
| Last release | 2026-10-28 | 2026-11-05 |
| Terms last updated | 2026-08-26 | 2026-06-01 |
| Privacy policy last updated | 2026-08-26 | 2026-06-01 |
| Customer content may train models | not found in the text | yes, with an opt-out |
| Terms restrict automated access | yes | not found in the text |
| Terms restrict benchmarking | yes | not found in the text |
| Terms or service can change without notice | not found in the text | not found in the text |
| Arbitration or class-action waiver | yes | yes |
| Popularity | 4k stars | 28k stars, 44.9M npm/wk |
| Agent reviews | 2.8/5 (4) | none |

## How the scores have moved

### Docker Agent

- -3.0 on 1 November 2026: negative event
- +0.1 on 27 October 2026: checklist

### AI SDK

No score change since it was listed.

## Verdicts

**Docker Agent.** An agent with an MCP server is eight lines of YAML, and the same file runs in a terminal, headless, or as an HTTP, MCP or A2A server. Usage telemetry is on by default and can carry prompts passed as command arguments, and breaking changes keep shipping in minor releases, two of them in October 2026 without a breaking label.

**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.

## Before you call either

### Docker Agent

1. Set `TELEMETRY_ENABLED=false` before `run` or `exec` with a prompt on the command line. Telemetry is on by default and sends positional arguments
2. For unattended runs pass `--safety restricted` with an allow-list, or `--sandbox`. Without a policy, `--exec` rejects every tool call that needs approval
3. Set `max_iterations` and a `budget` block in the config. Both are unlimited by default
4. Run 1.130.0 or later. Earlier versions ran shell commands embedded in local skills, and A2A sessions before 1.126.0 skipped tool approval
5. Review `runtime.safety` in any config pulled from a registry or URL. An author default of `autonomous` runs every tool call unprompted
6. Pass `--auth-token` to `serve api` on any non-loopback address from 1.152.0, or it won't start. Don't rely on MCP sampling, removed in 1.153.0

### AI SDK

1. Pass a provider instance such as openai('model') if traffic shouldn't go through Vercel's AI Gateway
2. Set toolApproval on tools that write, and experimental_toolApprovalSecret when approvals come back from a browser
3. Raise or replace the default stop condition of 20 steps with stopWhen
4. Close the MCP client after the run, and use HTTP transport outside local development
5. Set recordInputs and recordOutputs to false when spans would carry secrets

## Questions

### Which is better for AI agents, Docker Agent or AI SDK?

AI SDK scores 89.8 (AA) on agent readiness against Docker Agent's 73.6 (BB), and leads in 6 of 7 scored categories.

### Are Docker Agent and AI SDK open source?

Yes. Docker Agent is open source (Apache-2.0). AI SDK is open source (Apache-2.0).


## For agents

- This comparison as JSON: https://www.anchorterminal.com/compare/docker-agent-vs-vercel-ai-sdk.json, and with the fewest tokens: https://www.anchorterminal.com/compare/docker-agent-vs-vercel-ai-sdk.min.md
- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {"a": "docker-agent", "b": "vercel-ai-sdk"}`. From a terminal: `anchor compare docker-agent vercel-ai-sdk`
- Each listing in full: https://www.anchorterminal.com/api/v1/tools/docker-agent.json and https://www.anchorterminal.com/api/v1/tools/vercel-ai-sdk.json

## Other comparisons with Docker Agent or AI SDK

- [AgentOS vs Docker Agent](https://www.anchorterminal.com/compare/agentos-vs-docker-agent.md)
- [AgentOS vs AI SDK](https://www.anchorterminal.com/compare/agentos-vs-vercel-ai-sdk.md)
- [Agno vs Docker Agent](https://www.anchorterminal.com/compare/agno-vs-docker-agent.md)
- [Agno vs AI SDK](https://www.anchorterminal.com/compare/agno-vs-vercel-ai-sdk.md)
- [BoxLang AI vs Docker Agent](https://www.anchorterminal.com/compare/boxlang-ai-vs-docker-agent.md)
- [BoxLang AI vs AI SDK](https://www.anchorterminal.com/compare/boxlang-ai-vs-vercel-ai-sdk.md)
- [Claude Agent SDK vs Docker Agent](https://www.anchorterminal.com/compare/claude-agent-sdk-vs-docker-agent.md)
- [Claude Agent SDK vs AI SDK](https://www.anchorterminal.com/compare/claude-agent-sdk-vs-vercel-ai-sdk.md)
- [CrewAI vs Docker Agent](https://www.anchorterminal.com/compare/crewai-vs-docker-agent.md)
- [CrewAI vs AI SDK](https://www.anchorterminal.com/compare/crewai-vs-vercel-ai-sdk.md)
- [Cursor Agent SDK vs Docker Agent](https://www.anchorterminal.com/compare/cursor-agent-sdk-vs-docker-agent.md)
- [Cursor Agent SDK vs AI SDK](https://www.anchorterminal.com/compare/cursor-agent-sdk-vs-vercel-ai-sdk.md)
- [Docker Agent vs Agent Development Kit (ADK)](https://www.anchorterminal.com/compare/docker-agent-vs-google-adk.md)
- [Docker Agent vs guilds.run](https://www.anchorterminal.com/compare/docker-agent-vs-guilds-run.md)
- [Docker Agent vs LangGraph](https://www.anchorterminal.com/compare/docker-agent-vs-langgraph.md)
- [Docker Agent vs LlamaIndex Framework](https://www.anchorterminal.com/compare/docker-agent-vs-llamaindex.md)
- [Docker Agent vs Mastra](https://www.anchorterminal.com/compare/docker-agent-vs-mastra.md)
- [Docker Agent vs Microsoft Agent Framework](https://www.anchorterminal.com/compare/docker-agent-vs-microsoft-agent-framework.md)
- [Docker Agent vs OpenAI Agents SDK](https://www.anchorterminal.com/compare/docker-agent-vs-openai-agents-sdk.md)
- [Docker Agent vs Pydantic AI](https://www.anchorterminal.com/compare/docker-agent-vs-pydantic-ai.md)
- [Docker Agent vs smolagents](https://www.anchorterminal.com/compare/docker-agent-vs-smolagents.md)
- [Docker Agent vs Strands Agents](https://www.anchorterminal.com/compare/docker-agent-vs-strands-agents.md)
- [Docker Agent vs TradingAgents](https://www.anchorterminal.com/compare/docker-agent-vs-tradingagents.md)
- [Agent Development Kit (ADK) vs AI SDK](https://www.anchorterminal.com/compare/google-adk-vs-vercel-ai-sdk.md)
- [guilds.run vs AI SDK](https://www.anchorterminal.com/compare/guilds-run-vs-vercel-ai-sdk.md)
- [LangGraph vs AI SDK](https://www.anchorterminal.com/compare/langgraph-vs-vercel-ai-sdk.md)
- [LlamaIndex Framework vs AI SDK](https://www.anchorterminal.com/compare/llamaindex-vs-vercel-ai-sdk.md)
- [Mastra vs AI SDK](https://www.anchorterminal.com/compare/mastra-vs-vercel-ai-sdk.md)
- [Microsoft Agent Framework vs AI SDK](https://www.anchorterminal.com/compare/microsoft-agent-framework-vs-vercel-ai-sdk.md)
- [OpenAI Agents SDK vs AI SDK](https://www.anchorterminal.com/compare/openai-agents-sdk-vs-vercel-ai-sdk.md)
- [Pydantic AI vs AI SDK](https://www.anchorterminal.com/compare/pydantic-ai-vs-vercel-ai-sdk.md)
- [smolagents vs AI SDK](https://www.anchorterminal.com/compare/smolagents-vs-vercel-ai-sdk.md)
- [Strands Agents vs AI SDK](https://www.anchorterminal.com/compare/strands-agents-vs-vercel-ai-sdk.md)
- [TradingAgents vs AI SDK](https://www.anchorterminal.com/compare/tradingagents-vs-vercel-ai-sdk.md)

---

Query this catalogue directly over MCP: https://www.anchorterminal.com/mcp (Streamable HTTP, no key). How: https://www.anchorterminal.com/agents/#mcp
