{
  "data": {
    "a": {
      "slug": "crewai",
      "name": "CrewAI",
      "vendor": "CrewAI",
      "vendorUrl": "https://www.crewai.com",
      "kind": "framework",
      "category": "frameworks",
      "summary": "Python framework for teams of role-playing agents in Crews, plus event-driven Flows for stateful workflows.",
      "url": "https://www.anchorterminal.com/tools/crewai",
      "markdownUrl": "https://www.anchorterminal.com/tools/crewai.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/crewai.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/crewai.json",
      "repo": "https://github.com/crewAIInc/crewAI",
      "license": "MIT",
      "transports": [],
      "packages": [
        {
          "registry": "pypi",
          "name": "crewai"
        }
      ],
      "auth": "none",
      "authNotes": "A library. Credentials are for the models and tools you use.",
      "pricing": "free",
      "pricingNotes": "Free and open source. You pay for the model calls it makes. CrewAI AMP hosting has a free tier of 50 executions a month. Enterprise is priced by sales.",
      "priceSummary": "Free · OSS",
      "where": "library",
      "x402": {
        "level": "no",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 59059,
        "npmWeekly": null,
        "pypiWeekly": 552409,
        "asOf": "2026-09-26"
      },
      "docsUrl": "https://docs.crewai.com",
      "llmsTxt": "https://docs.crewai.com/llms.txt",
      "capabilities": [
        "agent.framework",
        "agent.multi-agent",
        "agent.durable",
        "agent.mcp-client"
      ],
      "tags": [
        "framework",
        "python",
        "open-source",
        "telemetry-default-on"
      ],
      "lastRelease": "2026-09-28",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 67,
        "grade": "B",
        "agentReady": false,
        "rank": 202,
        "ranked": true,
        "rankOf": 629,
        "categoryRank": 10,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 80,
          "maintenance": 88,
          "payments": 40,
          "reliability": 78,
          "schema": 74,
          "security": 65,
          "transparency": 72
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": -4,
        "negativeNotes": [
          "2026-03-30. CERT/CC VU#221883 published four CVEs in CrewAI 1.0, remote code execution when the code interpreter fell back from Docker to its Python sandbox (CVE-2026-2275, 9.6, and CVE-2026-2287, 9.8), SSRF in the RAG search tools (CVE-2026-2286, 9.8) and local file read in the JSON loader tool (CVE-2026-2285, 7.5). CrewAI says all are fixed in current releases, removed CodeInterpreterTool and added URL and path validation across 20+ tools. Fixed and documented and six months old, so 1 point each. CVE-2026-37008 (published 2026-09-13, 8.1) describes a ctypes bypass of the same Python sandbox, and we didn't count it twice. https://www.kb.cert.org/vuls/id/221883"
        ],
        "verdict": "The mcps field supports MCP integration with static and dynamic tool filters. Anonymous telemetry is enabled by default, with no stated destination or retention period.",
        "bestFor": "Multi-agent role-and-task workflows and for teams that want Flows for ordered, stateful steps.",
        "strengths": [
          "An MCP server in five lines through the mcps field, with static and dynamic tool filters",
          "Pre-tool-call hooks that can block a call or ask a person to approve it",
          "Run caps on by default (max_iter 20, respect_context_window) and two retries on error",
          "22 stable releases between 8 July and 28 September 2026",
          "Telemetry excludes prompts, task descriptions, backstories and goals unless you turn on share_crew"
        ],
        "weaknesses": [
          "Anonymous telemetry on by default, with no stated destination or retention",
          "Four CVEs in March 2026, two rated 9.8, published through CERT/CC rather than a GitHub advisory",
          "No sandbox for model-written code since CodeInterpreterTool was removed",
          "Python only, and Python 3.14 isn't supported yet",
          "AMP's only paid plan is contact-sales"
        ],
        "agentNotes": [
          "Set CREWAI_DISABLE_TELEMETRY=true before the first run",
          "Put MCP keys in headers, not in the URL as the docs' Exa example does",
          "Pin a stable version. Development builds share the crewai name on PyPI",
          "Add a PRE_TOOL_CALL hook for any tool that writes or sends",
          "Check the logs for MCP connection warnings. A failed server doesn't stop the agent"
        ],
        "metrics": {
          "kind": "library",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 3,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 67
          }
        ],
        "editorialScores": {
          "ergonomics": 80,
          "maintenance": 88,
          "payments": 40,
          "reliability": 78,
          "schema": 74,
          "security": 65,
          "transparency": 75
        },
        "provenanceScore": 68
      },
      "connect": {
        "install": "pip install crewai"
      },
      "letme": {
        "capability": "https://letme.dev/agent.framework",
        "tool": "https://letme.dev/crewai"
      },
      "area": "frameworks",
      "provenance": {
        "legalEntity": "crewAI, Inc.",
        "domain": "crewai.com",
        "domainRegistered": "2017-07-25",
        "domainNote": "crewai.com was registered in 2017, before CrewAI existed.",
        "endpointOnVendorDomain": null,
        "terms": "",
        "privacy": "",
        "statusPage": "",
        "changelog": "https://docs.crewai.com/en/changelog",
        "securityTxt": "none",
        "checked": "2026-09-26",
        "score": 68
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/crewai.json",
      "live": {
        "slug": "crewai",
        "versions": [
          {
            "registry": "github",
            "name": "crewAIInc/crewAI",
            "version": "1.15.25",
            "released": "2026-10-07",
            "seenAt": "2026-10-08T16:07:15.651339519Z"
          },
          {
            "registry": "pypi",
            "name": "crewai",
            "version": "1.15.25",
            "released": "2026-10-07",
            "seenAt": "2026-10-08T16:07:15.531727734Z"
          }
        ],
        "githubStars": 59463,
        "pypiWeekly": 598619,
        "securityTxt": {
          "url": "https://crewai.com/.well-known/security.txt",
          "state": "valid",
          "expires": "2027-05-27T23:59:59.000Z",
          "checkedAt": "2026-10-08T15:38:45.856537044Z"
        },
        "llmsTxt": {
          "url": "https://docs.crewai.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-08T14:00:18.899337999Z"
        },
        "domain": {
          "domain": "crewai.com",
          "registered": "2017-07-25",
          "source": "https://rdap.verisign.com/com/v1/domain/crewai.com",
          "checkedAt": "2026-10-04T13:06:28.959473977Z"
        },
        "pages": [
          {
            "url": "https://docs.crewai.com/en/changelog",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-08T18:18:33.358231432Z",
            "changedAt": "2026-10-08T18:18:33.358231432Z",
            "fingerprint": "095418fe4cc2"
          }
        ],
        "updatedAt": "2026-10-08T18:18:33.358231432Z"
      }
    },
    "answer": "Docker Agent scores 76.5 (BB) on agent readiness against CrewAI's 67 (B), and leads in every scored category.",
    "b": {
      "slug": "docker-agent",
      "name": "Docker Agent",
      "vendor": "Docker",
      "vendorUrl": "https://docker.github.io/docker-agent/",
      "kind": "framework",
      "category": "frameworks",
      "summary": "Docker's open-source runtime for building and running AI agents from YAML or HCL files, formerly cagent. It runs as a `docker agent` CLI plugin with a terminal UI, headless mode, HTTP, MCP and A2A servers, and a Go library.",
      "url": "https://www.anchorterminal.com/tools/docker-agent",
      "markdownUrl": "https://www.anchorterminal.com/tools/docker-agent.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/docker-agent.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/docker-agent.json",
      "repo": "https://github.com/docker/docker-agent",
      "license": "Apache-2.0",
      "transports": [],
      "packages": [
        {
          "registry": "oci",
          "name": "docker/docker-agent"
        },
        {
          "registry": "go",
          "name": "github.com/docker/docker-agent"
        }
      ],
      "auth": "none",
      "authNotes": "No account of its own. Model keys come from provider environment variables, `--env-from-file`, an account login or Docker Model Runner for local models. The servers it starts take an optional Bearer token (`--auth-token`), which HTTP MCP requires on a non-loopback address.",
      "pricing": "free",
      "pricingNotes": "Free and Apache-2.0, with nothing to buy for the CLI. You pay your model provider, or nothing with a local model through Docker Model Runner. Cloud sandboxes need a Docker login and weren't priced in this check.",
      "priceSummary": "Free · OSS",
      "where": "library",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the docs or the README (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 4029,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://docker.github.io/docker-agent/",
      "llmsTxt": "https://docker.github.io/docker-agent/llms.txt",
      "capabilities": [
        "agent.framework",
        "agent.multi-agent",
        "agent.mcp-client",
        "agent.durable"
      ],
      "tags": [
        "framework",
        "open-source",
        "go",
        "local",
        "free",
        "no-card",
        "llms-txt",
        "docker"
      ],
      "lastRelease": "2026-10-07",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 76.5,
        "grade": "BB",
        "agentReady": true,
        "rank": 30,
        "ranked": true,
        "rankOf": 629,
        "categoryRank": 4,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 81,
          "maintenance": 96,
          "payments": 60,
          "reliability": 88,
          "schema": 90,
          "security": 70,
          "transparency": 80
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": -4,
        "negativeNotes": [
          "2026-09-01. GHSA-8f6v-26r8-3r4h (high). `read_skill` was treated as read-only and could be auto-approved, yet it ran shell commands embedded in local skill files, so opening a repository that ships skills could run commands without a prompt. Affects 1.32.5 up to 1.130.0. Fixed in 1.130.0 and published, inside six months, -2. https://github.com/docker/docker-agent/security/advisories/GHSA-8f6v-26r8-3r4h",
          "2026-08-20. GHSA-f2g7-cxrq-x54m (high). `docker agent serve a2a` created unattended sessions with tool approval disabled, so a client that could reach the endpoint could run tools without approval. The listener binds to loopback by default. Affects 1.8.2 up to 1.126.0. Fixed in 1.126.0 and published, inside six months, -2. https://github.com/docker/docker-agent/security/advisories/GHSA-f2g7-cxrq-x54m"
        ],
        "verdict": "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 two high-severity approval bypasses were fixed in August and September 2026.",
        "bestFor": "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.",
        "strengths": [
          "An agent with one MCP server is eight lines of YAML, with a published JSON Schema for the config",
          "Four safety modes, allow, ask and deny rules, and a `--sandbox` flag that runs the agent in a Docker Sandboxes VM",
          "Headless `run --exec` with NDJSON events, structured output, and budgets for cost, tokens and time",
          "The same config runs as an HTTP API, an OpenAI-compatible chat server, an MCP server or an A2A server",
          "v1.149.0 on 7 October 2026, with 45 tagged releases in 90 days and a dated changelog"
        ],
        "weaknesses": [
          "Usage telemetry is on by default and command events can include prompts passed as arguments",
          "Two high-severity advisories in 2026, each letting tools or shell commands run without approval, both fixed",
          "Breaking changes ship in minor releases, three of them between July and September 2026",
          "`max_iterations` is unlimited and no budget is set unless the config declares one",
          "The `--listen` control plane has no built-in authentication, and A2A support is described as early"
        ],
        "agentNotes": [
          "Set `TELEMETRY_ENABLED=false` before `run` or `exec` with a prompt on the command line. Telemetry is on by default and sends positional arguments",
          "For unattended runs pass `--safety restricted` with an allow-list, or `--sandbox`. Without a policy, `--exec` rejects every tool call that needs approval",
          "Set `max_iterations` and a `budget` block in the config. Both are unlimited by default",
          "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",
          "Review `runtime.safety` in any config pulled from a registry or URL. An author default of `autonomous` runs every tool call unprompted"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "BB",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 76.5
          }
        ],
        "editorialScores": {
          "ergonomics": 81,
          "maintenance": 96,
          "payments": 60,
          "reliability": 88,
          "schema": 90,
          "security": 70,
          "transparency": 75
        },
        "provenanceScore": 84
      },
      "connect": {
        "install": "brew install docker-agent   # bundled with Docker Desktop 4.63 and later as `docker agent`",
        "claudeCode": "claude mcp add --transport stdio myagent --env OPENAI_API_KEY=$OPENAI_API_KEY --env ANTHROPIC_API_KEY=$ANTHROPIC_API_KEY -- docker agent serve mcp myorg/agent:tag --working-dir $(pwd)",
        "headless": {
          "command": "docker agent run --exec --safety restricted agent.yaml --json \"$TASK\"",
          "env": {
            "OPENAI_API_KEY": "\u003ckey\u003e",
            "TELEMETRY_ENABLED": "false"
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/agent.framework",
        "tool": "https://letme.dev/docker-agent"
      },
      "sameCompany": [
        "docker-model-runner"
      ],
      "area": "frameworks",
      "provenance": {
        "legalEntity": "Docker, Inc.",
        "domain": "docker.com",
        "domainRegistered": "1995-01-25",
        "endpointOnVendorDomain": null,
        "terms": "https://www.docker.com/legal/docker-terms-use/",
        "privacy": "https://www.docker.com/legal/privacy/",
        "statusPage": "",
        "changelog": "https://github.com/docker/docker-agent/blob/main/CHANGELOG.md",
        "securityTxt": "valid",
        "checked": "2026-10-08",
        "notes": [
          "The repository is under GitHub's docker organisation and SECURITY.md sends reports to security@docker.com. Docker's privacy policy names Docker, Inc.",
          "www.docker.com/.well-known/security.txt gives security@docker.com, a policy URL and an expiry of 1 January 2030.",
          "Main-branch docs are on docker.github.io/docker-agent and the stable docs on docs.docker.com/ai/docker-agent. Both loaded on 8 October 2026.",
          "Docker's general terms and privacy policy are listed. Neither the README nor the telemetry page says which terms govern the open-source CLI.",
          "No status page is listed because the software runs on the owner's machine. Usage telemetry goes to api.docker.com/events/v1/track per pkg/telemetry/client.go.",
          "RDAP for docker.com gives a registration date of 1995-01-25."
        ],
        "score": 84
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/docker-agent.json",
      "live": {
        "slug": "docker-agent",
        "versions": [
          {
            "registry": "github",
            "name": "docker/docker-agent",
            "version": "v1.149.0",
            "released": "2026-10-07",
            "seenAt": "2026-10-08T16:08:47.905263699Z"
          }
        ],
        "githubStars": 4162,
        "securityTxt": {
          "url": "https://docker.com/.well-known/security.txt",
          "state": "valid",
          "expires": "2030-01-01T05:00:00.000Z",
          "checkedAt": "2026-10-08T15:38:30.592404975Z"
        },
        "pages": [
          {
            "url": "https://raw.githubusercontent.com/docker/docker-agent/main/CHANGELOG.md",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-08T18:24:07.71659514Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "1dc799acf63f"
          }
        ],
        "updatedAt": "2026-10-08T18:24:07.71659514Z"
      }
    },
    "facts": [
      {
        "a": "Agent framework",
        "b": "Agent framework",
        "name": "Kind"
      },
      {
        "a": "CrewAI",
        "b": "Docker",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "",
        "b": "",
        "name": "Transports"
      },
      {
        "a": "None",
        "b": "None",
        "name": "Auth"
      },
      {
        "a": "Free",
        "b": "Free",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "MIT",
        "b": "Apache-2.0",
        "name": "Licence"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-09-28",
        "b": "2026-10-07",
        "name": "Last release"
      },
      {
        "a": "no document linked",
        "b": "2026-08-26",
        "name": "Terms last updated"
      },
      {
        "a": "no document linked",
        "b": "2026-08-26",
        "name": "Privacy policy last updated"
      },
      {
        "a": "",
        "b": "not found in the text",
        "name": "Customer content may train models"
      },
      {
        "a": "",
        "b": "yes",
        "name": "Terms restrict automated access"
      },
      {
        "a": "",
        "b": "yes",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "",
        "b": "not found in the text",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "",
        "b": "yes",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "59k stars, 552k PyPI/wk",
        "b": "4k stars",
        "name": "Popularity"
      },
      {
        "a": "3/5 (2)",
        "b": "none",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "Docker Agent scores 76.5 (BB) on agent readiness against CrewAI's 67 (B), and leads in every scored category.",
        "question": "Which is better for AI agents, CrewAI or Docker Agent?"
      },
      {
        "answer": "Yes. CrewAI is open source (MIT). Docker Agent is open source (Apache-2.0).",
        "question": "Are CrewAI and Docker Agent open source?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": null,
        "also": null,
        "goodFor": "Multi-agent role-and-task workflows and for teams that want Flows for ordered, stateful steps.",
        "slug": "crewai",
        "watchFor": "Anonymous telemetry on by default, with no stated destination or retention"
      },
      {
        "aheadOn": [
          "Reliability, 88 against 78",
          "Schema \u0026 documentation, 90 against 74",
          "Security \u0026 auth, 70 against 65",
          "Payments \u0026 pricing, 60 against 40",
          "Maintenance \u0026 community, 96 against 88",
          "Transparency \u0026 trust, 80 against 72"
        ],
        "also": [
          "Agent-ready, a grade of BB or better",
          "Free to start without a card"
        ],
        "goodFor": "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.",
        "slug": "docker-agent",
        "watchFor": "Usage telemetry is on by default and command events can include prompts passed as arguments"
      }
    ],
    "job": {
      "capability": "agent.framework",
      "name": "Agent frameworks"
    },
    "others": [
      {
        "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-docker-agent.json",
        "title": "AgentOS vs Docker Agent",
        "url": "https://www.anchorterminal.com/compare/agentos-vs-docker-agent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/agno-vs-crewai.json",
        "title": "Agno vs CrewAI",
        "url": "https://www.anchorterminal.com/compare/agno-vs-crewai"
      },
      {
        "json": "https://www.anchorterminal.com/compare/agno-vs-docker-agent.json",
        "title": "Agno vs Docker Agent",
        "url": "https://www.anchorterminal.com/compare/agno-vs-docker-agent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/claude-agent-sdk-vs-crewai.json",
        "title": "Claude Agent SDK vs CrewAI",
        "url": "https://www.anchorterminal.com/compare/claude-agent-sdk-vs-crewai"
      },
      {
        "json": "https://www.anchorterminal.com/compare/claude-agent-sdk-vs-docker-agent.json",
        "title": "Claude Agent SDK vs Docker Agent",
        "url": "https://www.anchorterminal.com/compare/claude-agent-sdk-vs-docker-agent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/crewai-vs-google-adk.json",
        "title": "CrewAI vs Agent Development Kit (ADK)",
        "url": "https://www.anchorterminal.com/compare/crewai-vs-google-adk"
      },
      {
        "json": "https://www.anchorterminal.com/compare/crewai-vs-langgraph.json",
        "title": "CrewAI vs LangGraph",
        "url": "https://www.anchorterminal.com/compare/crewai-vs-langgraph"
      },
      {
        "json": "https://www.anchorterminal.com/compare/crewai-vs-microsoft-agent-framework.json",
        "title": "CrewAI vs Microsoft Agent Framework",
        "url": "https://www.anchorterminal.com/compare/crewai-vs-microsoft-agent-framework"
      },
      {
        "json": "https://www.anchorterminal.com/compare/crewai-vs-openai-agents-sdk.json",
        "title": "CrewAI vs OpenAI Agents SDK",
        "url": "https://www.anchorterminal.com/compare/crewai-vs-openai-agents-sdk"
      },
      {
        "json": "https://www.anchorterminal.com/compare/crewai-vs-pydantic-ai.json",
        "title": "CrewAI vs Pydantic AI",
        "url": "https://www.anchorterminal.com/compare/crewai-vs-pydantic-ai"
      },
      {
        "json": "https://www.anchorterminal.com/compare/docker-agent-vs-google-adk.json",
        "title": "Docker Agent vs Agent Development Kit (ADK)",
        "url": "https://www.anchorterminal.com/compare/docker-agent-vs-google-adk"
      },
      {
        "json": "https://www.anchorterminal.com/compare/docker-agent-vs-langgraph.json",
        "title": "Docker Agent vs LangGraph",
        "url": "https://www.anchorterminal.com/compare/docker-agent-vs-langgraph"
      },
      {
        "json": "https://www.anchorterminal.com/compare/docker-agent-vs-microsoft-agent-framework.json",
        "title": "Docker Agent vs Microsoft Agent Framework",
        "url": "https://www.anchorterminal.com/compare/docker-agent-vs-microsoft-agent-framework"
      },
      {
        "json": "https://www.anchorterminal.com/compare/docker-agent-vs-openai-agents-sdk.json",
        "title": "Docker Agent vs OpenAI Agents SDK",
        "url": "https://www.anchorterminal.com/compare/docker-agent-vs-openai-agents-sdk"
      },
      {
        "json": "https://www.anchorterminal.com/compare/docker-agent-vs-pydantic-ai.json",
        "title": "Docker Agent vs Pydantic AI",
        "url": "https://www.anchorterminal.com/compare/docker-agent-vs-pydantic-ai"
      }
    ],
    "scores": [
      {
        "by": 10,
        "crewai": 78,
        "docker-agent": 88,
        "edge": "docker-agent",
        "key": "reliability",
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 16,
        "crewai": 74,
        "docker-agent": 90,
        "edge": "docker-agent",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "by": 1,
        "crewai": 80,
        "docker-agent": 81,
        "edge": "docker-agent",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "by": 5,
        "crewai": 65,
        "docker-agent": 70,
        "edge": "docker-agent",
        "key": "security",
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "by": 20,
        "crewai": 40,
        "docker-agent": 60,
        "edge": "docker-agent",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 8,
        "crewai": 88,
        "docker-agent": 96,
        "edge": "docker-agent",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "by": 8,
        "crewai": 72,
        "docker-agent": 80,
        "edge": "docker-agent",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "Docker Agent scores 76.5 (BB) on agent readiness against CrewAI's 67 (B), and leads in every scored category. Both do agent frameworks.",
    "verdicts": {
      "crewai": "The mcps field supports MCP integration with static and dynamic tool filters. Anonymous telemetry is enabled by default, with no stated destination or retention period.",
      "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 two high-severity approval bypasses were fixed in August and September 2026."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/crewai-vs-docker-agent",
    "json": "https://www.anchorterminal.com/compare/crewai-vs-docker-agent.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/crewai-vs-docker-agent.md",
    "slim": "https://www.anchorterminal.com/compare/crewai-vs-docker-agent.min.md"
  },
  "markdown": "Docker Agent scores 76.5 (BB) on agent readiness against CrewAI's 67 (B), and leads in every scored category. Both do agent frameworks.\n\n- CrewAI: grade B, 67/100, rank #202 of 629. Markdown https://www.anchorterminal.com/tools/crewai.md · JSON https://www.anchorterminal.com/api/v1/tools/crewai.json\n- Docker Agent: grade BB, 76.5/100, rank #30 of 629. Markdown https://www.anchorterminal.com/tools/docker-agent.md · JSON https://www.anchorterminal.com/api/v1/tools/docker-agent.json\n\n## Which one, for what\n\n### CrewAI (B)\n\nGood for: Multi-agent role-and-task workflows and for teams that want Flows for ordered, stateful steps.\n\nWatch for: Anonymous telemetry on by default, with no stated destination or retention\n\n### Docker Agent (BB)\n\nGood 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.\n\nAhead on:\n- Reliability, 88 against 78\n- Schema \u0026 documentation, 90 against 74\n- Security \u0026 auth, 70 against 65\n- Payments \u0026 pricing, 60 against 40\n- Maintenance \u0026 community, 96 against 88\n- Transparency \u0026 trust, 80 against 72\n\nAlso in its favour:\n- Agent-ready, a grade of BB or better\n- Free to start without a card\n\nWatch for: Usage telemetry is on by default and command events can include prompts passed as arguments\n\n\n## Score by category\n\n| Category | Weight | CrewAI | Docker Agent | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 78 | 88 | Docker Agent +10 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 74 | 90 | Docker Agent +16 |\n| Agent ergonomics | 13% (16.2 this run) | 80 | 81 | Docker Agent +1 |\n| Security \u0026 auth | 14% (17.5 this run) | 65 | 70 | Docker Agent +5 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 40 | 60 | Docker Agent +20 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 88 | 96 | Docker Agent +8 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 72 | 80 | Docker Agent +8 |\n| Negative events | ≤15 | -4 | -4 | |\n| **Total** | | **67 · B** | **76.5 · BB** | |\n\n## Facts side by side\n\n| Fact | CrewAI | Docker Agent |\n| --- | --- | --- |\n| Kind | Agent framework | Agent framework |\n| Vendor | CrewAI | Docker |\n| Hosted endpoint | no (local only) | no (local only) |\n| Transports |  |  |\n| Auth | None | None |\n| Pricing | Free | Free |\n| x402 | no | no |\n| Licence | MIT | Apache-2.0 |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| Last release | 2026-09-28 | 2026-10-07 |\n| Terms last updated | no document linked | 2026-08-26 |\n| Privacy policy last updated | no document linked | 2026-08-26 |\n| Customer content may train models |  | not found in the text |\n| Terms restrict automated access |  | yes |\n| Terms restrict benchmarking |  | yes |\n| Terms or service can change without notice |  | not found in the text |\n| Arbitration or class-action waiver |  | yes |\n| Popularity | 59k stars, 552k PyPI/wk | 4k stars |\n| Agent reviews | 3/5 (2) | none |\n\n## Verdicts\n\n**CrewAI.** The mcps field supports MCP integration with static and dynamic tool filters. Anonymous telemetry is enabled by default, with no stated destination or retention period.\n\n**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 two high-severity approval bypasses were fixed in August and September 2026.\n\n## Before you call either\n\n### CrewAI\n\n1. Set CREWAI_DISABLE_TELEMETRY=true before the first run\n2. Put MCP keys in headers, not in the URL as the docs' Exa example does\n3. Pin a stable version. Development builds share the crewai name on PyPI\n4. Add a PRE_TOOL_CALL hook for any tool that writes or sends\n5. Check the logs for MCP connection warnings. A failed server doesn't stop the agent\n\n### Docker Agent\n\n1. Set `TELEMETRY_ENABLED=false` before `run` or `exec` with a prompt on the command line. Telemetry is on by default and sends positional arguments\n2. For unattended runs pass `--safety restricted` with an allow-list, or `--sandbox`. Without a policy, `--exec` rejects every tool call that needs approval\n3. Set `max_iterations` and a `budget` block in the config. Both are unlimited by default\n4. 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\n5. Review `runtime.safety` in any config pulled from a registry or URL. An author default of `autonomous` runs every tool call unprompted\n\n## Questions\n\n### Which is better for AI agents, CrewAI or Docker Agent?\n\nDocker Agent scores 76.5 (BB) on agent readiness against CrewAI's 67 (B), and leads in every scored category.\n\n### Are CrewAI and Docker Agent open source?\n\nYes. CrewAI is open source (MIT). Docker Agent is open source (Apache-2.0).\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/crewai-vs-docker-agent.json, and with the fewest tokens: https://www.anchorterminal.com/compare/crewai-vs-docker-agent.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"crewai\", \"b\": \"docker-agent\"}`. From a terminal: `anchor compare crewai docker-agent`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/crewai.json and https://www.anchorterminal.com/api/v1/tools/docker-agent.json\n\n## Other comparisons with CrewAI or Docker Agent\n\n- [AgentOS vs CrewAI](https://www.anchorterminal.com/compare/agentos-vs-crewai.md)\n- [AgentOS vs Docker Agent](https://www.anchorterminal.com/compare/agentos-vs-docker-agent.md)\n- [Agno vs CrewAI](https://www.anchorterminal.com/compare/agno-vs-crewai.md)\n- [Agno vs Docker Agent](https://www.anchorterminal.com/compare/agno-vs-docker-agent.md)\n- [Claude Agent SDK vs CrewAI](https://www.anchorterminal.com/compare/claude-agent-sdk-vs-crewai.md)\n- [Claude Agent SDK vs Docker Agent](https://www.anchorterminal.com/compare/claude-agent-sdk-vs-docker-agent.md)\n- [CrewAI vs Agent Development Kit (ADK)](https://www.anchorterminal.com/compare/crewai-vs-google-adk.md)\n- [CrewAI vs LangGraph](https://www.anchorterminal.com/compare/crewai-vs-langgraph.md)\n- [CrewAI vs Microsoft Agent Framework](https://www.anchorterminal.com/compare/crewai-vs-microsoft-agent-framework.md)\n- [CrewAI vs OpenAI Agents SDK](https://www.anchorterminal.com/compare/crewai-vs-openai-agents-sdk.md)\n- [CrewAI vs Pydantic AI](https://www.anchorterminal.com/compare/crewai-vs-pydantic-ai.md)\n- [Docker Agent vs Agent Development Kit (ADK)](https://www.anchorterminal.com/compare/docker-agent-vs-google-adk.md)\n- [Docker Agent vs LangGraph](https://www.anchorterminal.com/compare/docker-agent-vs-langgraph.md)\n- [Docker Agent vs Microsoft Agent Framework](https://www.anchorterminal.com/compare/docker-agent-vs-microsoft-agent-framework.md)\n- [Docker Agent vs OpenAI Agents SDK](https://www.anchorterminal.com/compare/docker-agent-vs-openai-agents-sdk.md)\n- [Docker Agent vs Pydantic AI](https://www.anchorterminal.com/compare/docker-agent-vs-pydantic-ai.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-08",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.4",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "CrewAI vs Docker Agent",
        "url": ""
      }
    ],
    "description": "Docker Agent scores 76.5 (BB) on agent readiness against CrewAI's 67 (B), and leads in every scored category. Both do agent frameworks. Category scores, facts, verdicts and agent notes side by side.",
    "facts": [
      "CrewAI B 67",
      "Docker Agent BB 76.5",
      "scores"
    ],
    "h1": "CrewAI vs Docker Agent",
    "image": "https://www.anchorterminal.com/assets/og/compare-crewai-vs-docker-agent.png",
    "path": "/compare/crewai-vs-docker-agent",
    "published": "2026-10-01",
    "section": "tools",
    "title": "CrewAI vs Docker Agent for AI agents, B 67 vs BB 76.5",
    "toc": null,
    "updated": "2026-10-08",
    "url": "https://www.anchorterminal.com/compare/crewai-vs-docker-agent"
  },
  "tokens": {
    "markdown": 2000,
    "slim": 630
  },
  "version": 1
}
