{
  "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",
      "dns": "crewai.grade.anchorterminal.com",
      "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-10-29",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 59,
        "grade": "C",
        "agentReady": false,
        "rank": 716,
        "ranked": true,
        "rankOf": 1486,
        "categoryRank": 17,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 80,
          "maintenance": 88,
          "payments": 40,
          "reliability": 75,
          "schema": 74,
          "security": 65,
          "transparency": 79
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-01"
        },
        "negative": -12,
        "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, published and more than two months old, so 1 point each. https://www.kb.cert.org/vuls/id/221883",
          "2026-09-13. CVE-2026-37008 (High), a ctypes bypass of the in-process Python sandbox, which the record calls a different vulnerability than CVE-2026-2275. Fixed by commit fb2323b, first in 1.11.0. A fixed, published High under two months old, so 2 points. The 1 October check had folded it into the March CVEs. https://api.osv.dev/v1/vulns/CVE-2026-37008",
          "2026-10-23. crewai 1.15.29, a patch release, removed `CrewAgentExecutor` and the public import paths around it and changed how every agent runs (oversized tool results deferred to files, the conversation summarised before it overflows, the fifth identical tool call stopping the task). The release notes listed none of it as breaking. The changelog marked it breaking on 28 October, and 1.15.33 restored some imports on 29 October. A breaking change shipped without notice, so 3 points. https://github.com/crewAIInc/crewAI/releases/tag/1.15.29",
          "2026-10-23. 1.15.29 also shipped fixes for two described flaws in the crewai package with no advisory, LanceDB memory filters built by interpolating scope and id values into SQL strings (#7820) and private memories saved without a source returned to every recall (#8400). Neither commit cites a GHSA id. Released fixes with no advisory, so 3 points. https://github.com/crewAIInc/crewAI/releases/tag/1.15.29"
        ],
        "verdict": "The mcps field connects an agent to an MCP server in a few lines, with static and dynamic tool filters. Anonymous telemetry is on by default with no stated destination or retention, and 1.15.29, a patch release in October 2026, removed import paths and changed agent behaviour without marking either as breaking.",
        "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",
          "23 stable releases between 4 August and 29 October 2026",
          "A security policy with response times, safe harbour and a valid security.txt"
        ],
        "weaknesses": [
          "Anonymous telemetry on by default, with no stated destination or retention",
          "1.15.29, a patch release, removed import paths and changed agent behaviour, marked breaking only five days later",
          "Four CVEs in March 2026 and one in September, published through CERT/CC and NVD rather than GitHub advisories",
          "No sandbox for model-written code since CodeInterpreterTool was removed",
          "Python only, and Python 3.14 isn't supported yet"
        ],
        "agentNotes": [
          "Set CREWAI_DISABLE_TELEMETRY=true before the first run",
          "Pin an exact version and read the changelog before upgrading. Patch releases have carried breaking changes",
          "Put MCP keys in headers, not in the URL as the docs' Exa example does",
          "Add a PRE_TOOL_CALL hook for any tool that writes or sends",
          "Set use_better_compaction=False if the agent needs whole tool results in its context"
        ],
        "metrics": {
          "kind": "library",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 3,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "C",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 59
          }
        ],
        "editorialScores": {
          "ergonomics": 80,
          "maintenance": 88,
          "payments": 40,
          "reliability": 75,
          "schema": 74,
          "security": 65,
          "transparency": 75
        },
        "provenanceScore": 82,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-01",
            "maintenance": "2026-11-01",
            "payments": "2026-11-01",
            "reliability": "2026-11-01",
            "schema": "2026-11-01",
            "security": "2026-11-01",
            "transparency": "2026-11-01"
          },
          "last": "2026-11-01",
          "lastMoved": "2026-11-01",
          "oldest": "2026-11-01",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "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": "https://crewai.com/terms-of-use",
        "privacy": "https://crewai.com/privacy-policy",
        "statusPage": "https://status.crewai.com",
        "changelog": "https://docs.crewai.com/en/changelog",
        "securityTxt": "valid",
        "checked": "2026-11-01",
        "notes": [
          "The terms of use name CrewAI, Inc., a Delaware corporation, and both the terms and the privacy policy carry an effective date of 24 September 2025. They cover the CrewAI platform (AMP); the framework itself is under MIT.",
          "crewai.com/.well-known/security.txt gives security@crewai.com as the contact, expires 2027-05-27 and points to the repository's security policy.",
          "status.crewai.com, linked from the crewai.com footer, is an incident.io status page for the hosted platform, not the library."
        ],
        "score": 82
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/crewai.json",
      "live": {
        "slug": "crewai",
        "vendorStatus": {
          "page": "https://status.crewai.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-11-07T18:20:59.690296353Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "crewAIInc/crewAI",
            "version": "1.15.36",
            "released": "2026-11-06",
            "seenAt": "2026-11-06T23:18:20.2395136Z"
          },
          {
            "registry": "pypi",
            "name": "crewai",
            "version": "1.15.36",
            "released": "2026-11-06",
            "seenAt": "2026-11-06T23:18:20.099328206Z"
          }
        ],
        "githubStars": 60583,
        "pypiWeekly": 588229,
        "securityTxt": {
          "url": "https://crewai.com/.well-known/security.txt",
          "state": "valid",
          "expires": "2027-05-27T23:59:59.000Z",
          "checkedAt": "2026-11-07T16:00:50.473985264Z"
        },
        "llmsTxt": {
          "url": "https://docs.crewai.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-11-07T15:32:13.532765901Z"
        },
        "domain": {
          "domain": "crewai.com",
          "registered": "2017-07-25",
          "source": "https://rdap.verisign.com/com/v1/domain/crewai.com",
          "checkedAt": "2026-11-01T14:25:44.848100367Z"
        },
        "pages": [
          {
            "url": "https://docs.crewai.com/en/changelog",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-11-07T14:05:56.144704351Z",
            "changedAt": "2026-11-07T14:05:56.144704351Z",
            "fingerprint": "0af42d71f70d"
          },
          {
            "url": "https://crewai.com/privacy-policy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-11-07T14:02:05.841896582Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "08ea3c8d522c"
          },
          {
            "url": "https://crewai.com/terms-of-use",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-11-07T14:02:08.252235034Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "ba1be78a1ea0"
          }
        ],
        "github": {
          "repo": "crewaiinc/crewai",
          "checkedAt": "2026-11-02T08:41:58.31375138Z",
          "stars": 60409,
          "archived": false,
          "issuesEnabled": true,
          "pushedAt": "2026-11-02T06:37:07Z",
          "openIssues": 406,
          "openPRs": 588,
          "issuesOpened90d": 662,
          "issuesClosed90d": 358,
          "prsMerged90d": 424,
          "ci": {
            "branch": "main",
            "runs": 50,
            "success": 50,
            "failure": 0,
            "other": 0,
            "latest": "success",
            "latestAt": "2026-11-01T22:35:16Z"
          }
        },
        "updatedAt": "2026-11-07T18:20:59.690296353Z"
      }
    },
    "answer": "CrewAI and smolagents score within a point of each other on agent readiness, 59 (C) and 58.7 (C). smolagents leads on schema \u0026 documentation and payments \u0026 pricing.",
    "b": {
      "slug": "smolagents",
      "name": "smolagents",
      "vendor": "Hugging Face",
      "vendorUrl": "https://github.com/huggingface/smolagents",
      "kind": "framework",
      "category": "frameworks",
      "summary": "smolagents is Hugging Face's small Python library for agents that write and run Python code (CodeAgent) or call tools as JSON (ToolCallingAgent), with MCP tools, any model provider and sandboxed execution through E2B, Docker, Modal or Blaxel.",
      "url": "https://www.anchorterminal.com/tools/smolagents",
      "markdownUrl": "https://www.anchorterminal.com/tools/smolagents.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/smolagents.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/smolagents.json",
      "dns": "smolagents.grade.anchorterminal.com",
      "repo": "https://github.com/huggingface/smolagents",
      "license": "Apache-2.0",
      "transports": [],
      "packages": [
        {
          "registry": "pypi",
          "name": "smolagents"
        }
      ],
      "auth": "none",
      "authNotes": "A library with no credentials of its own. The default InferenceClientModel uses a Hugging Face token; other providers and remote sandboxes take their own keys.",
      "pricing": "free",
      "pricingNotes": "Free and open source under Apache-2.0. You pay for model calls and for any remote sandbox (E2B, Modal, Blaxel) you use.",
      "priceSummary": "Free · OSS",
      "where": "library",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the docs or the repository (checked 2026-11-06).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 30234,
        "npmWeekly": null,
        "pypiWeekly": 171063,
        "asOf": "2026-11-06"
      },
      "docsUrl": "https://huggingface.co/docs/smolagents/index",
      "llmsTxt": "https://huggingface.co/docs/smolagents/llms.txt",
      "capabilities": [
        "agent.framework",
        "agent.mcp-client",
        "agent.multi-agent"
      ],
      "tags": [
        "framework",
        "python",
        "open-source",
        "llms-txt",
        "mcp",
        "code-agent",
        "sandbox"
      ],
      "lastRelease": "2026-05-29",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 58.7,
        "grade": "C",
        "agentReady": false,
        "rank": 735,
        "ranked": true,
        "rankOf": 1486,
        "categoryRank": 18,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 68,
          "maintenance": 34,
          "payments": 60,
          "reliability": 64,
          "schema": 81,
          "security": 66,
          "transparency": 65
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-06"
        },
        "negative": -6,
        "negativeNotes": [
          "2025-12-23 to 2026-03-27. GHSA-q9r5-6hrr-9ph7 (CVE-2025-14931, critical, from the Zero Day Initiative) reports remote code execution through pickle deserialisation in the remote Python executor; the fix for remote executors merged on 15 February 2026, about eight weeks after publication. CVE-2026-2654 (SSRF, 1.24.0) and CVE-2026-4963 (code injection in LocalPythonExecutor, an incomplete earlier fix) are rated low, and both records say the vendor did not respond. Fixed or low, under 12 months old, 6 points. https://osv.dev/vulnerability/GHSA-q9r5-6hrr-9ph7"
        ],
        "verdict": "A compact Python library for code-writing and tool-calling agents, with MCP tools, any model provider and remote sandboxes through E2B, Docker, Modal or Blaxel. The newest release is 1.26.0 of 29 May 2026, a critical remote-executor RCE took about eight weeks to fix, and the local executor isn't a security boundary.",
        "bestFor": "Small Python projects and research that want code-writing agents with minimal abstraction.",
        "strengths": [
          "CodeAgent and ToolCallingAgent in a small, readable codebase",
          "MCP tools from any server through MCPClient",
          "Remote execution through E2B, Docker, Modal or Blaxel, with a guide on when it's needed",
          "No telemetry found in the source",
          "llms.txt and Markdown docs on huggingface.co"
        ],
        "weaknesses": [
          "No release since 1.26.0 on 29 May 2026, and few commits to main since August",
          "The local Python executor isn't a security boundary, per its own guide",
          "A critical RCE in the remote executor (published December 2025) was fixed in February 2026",
          "No human approval hook, retry or resume built in",
          "Breaking removals such as WasmExecutor shipped in minor releases"
        ],
        "agentNotes": [
          "Run CodeAgent with `executor_type` set to e2b, docker, modal or blaxel whenever the model or its inputs aren't trusted",
          "Use smolagents 1.24.0 or later to get the remote-executor deserialisation fix",
          "Set max_steps and final_answer_checks so a run stops on its own",
          "Pass structured_output explicitly to MCPClient to avoid the default-change warning",
          "Pin the version, since minor releases have removed APIs"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "C",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 58.7
          }
        ],
        "editorialScores": {
          "ergonomics": 68,
          "maintenance": 34,
          "payments": 60,
          "reliability": 64,
          "schema": 81,
          "security": 66,
          "transparency": 67
        },
        "provenanceScore": 62,
        "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": "pip install smolagents   # MCP: pip install 'smolagents[mcp]'"
      },
      "letme": {
        "capability": "https://letme.dev/agent.framework",
        "tool": "https://letme.dev/smolagents"
      },
      "sameCompany": [
        "hugging-face-inference-providers",
        "hugging-face-inference-endpoints",
        "carbon-x",
        "smollm3-3b"
      ],
      "area": "frameworks",
      "provenance": {
        "legalEntity": "Hugging Face, Inc.",
        "domain": "huggingface.co",
        "domainRegistered": "",
        "endpointOnVendorDomain": null,
        "terms": "https://huggingface.co/terms-of-service",
        "privacy": "https://huggingface.co/privacy",
        "statusPage": "",
        "changelog": "https://github.com/huggingface/smolagents/releases",
        "securityTxt": "unknown",
        "checked": "2026-11-06",
        "notes": [
          "SECURITY.md takes reports through GitHub private vulnerability reporting or security@huggingface.co, with no bounty.",
          "huggingface.co/robots.txt allows all crawlers.",
          "The terms and privacy links are Hugging Face's site-wide documents; the library itself collects nothing."
        ],
        "score": 62
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/smolagents.json",
      "live": {
        "slug": "smolagents",
        "versions": [
          {
            "registry": "github",
            "name": "huggingface/smolagents",
            "version": "v1.26.0",
            "released": "2026-05-29",
            "seenAt": "2026-11-07T00:06:55.865567193Z"
          },
          {
            "registry": "pypi",
            "name": "smolagents",
            "version": "1.26.0",
            "released": "2026-05-29",
            "seenAt": "2026-11-07T00:06:55.546186347Z"
          }
        ],
        "githubStars": 30238,
        "pypiWeekly": 171063,
        "securityTxt": {
          "url": "https://huggingface.co/.well-known/security.txt",
          "state": "valid",
          "expires": "2030-07-01T08:42:00.000Z",
          "checkedAt": "2026-11-07T16:00:00.493446773Z"
        },
        "llmsTxt": {
          "url": "https://huggingface.co/docs/smolagents/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-11-07T15:33:57.593545427Z"
        },
        "updatedAt": "2026-11-07T16:00:00.493446773Z"
      }
    },
    "edges": [
      {
        "by": 54,
        "category": "maintenance",
        "leads": "crewai",
        "name": "Maintenance \u0026 community",
        "reasons": {
          "a": "1.15.33, tagged on 2026-10-29 (30). 23 stable releases tagged in the 90 days from 3 August, 1.15.11 (4 August) to 1.15.33, and no pre-release in that window (20). Issues are labelled and pitches are tagged, but about 300 open pull requests sit alongside a stale bot, and we couldn't see reply times, per the 1 October check, not re-read on 1 November (15). The Python package is current (15). CodeQL, a vulnerability scan and Dependabot run on main, but Python 3.14 isn't supported yet and dev builds share the PyPI name (8).",
          "b": "v1.26.0 on 29 May 2026, 161 days before this check (10). No release in the 90 days to 6 November (0). 416 open issues and 1,045 open issues and pull requests on 6 November, with 144 issues opened in the 90 days to 3 November. Of the 50 newest, 26 had a comment and 1 was closed. Two 2026 CVE records say the vendor didn't respond to the reporter, and seven commits reached main from 8 August to 6 November (6). Python only, and the package is the current one (10). CI with actions pinned to commit SHAs and Dependabot for actions (8). 10+0+6+10+8 = 34."
        },
        "scores": {
          "a": 88,
          "b": 34
        }
      },
      {
        "by": 20,
        "category": "payments",
        "leads": "smolagents",
        "name": "Payments \u0026 pricing",
        "reasons": {
          "a": "No payment protocol (0). Scored on CrewAI AMP, the hosted option. Its free Basic plan is public but the only paid plan is contact-sales (0). The MIT package installs with no card (20) and no account, and can run a local model through LiteLLM (20).",
          "b": "Self-hosted rule. Free Apache-2.0 package with nothing to buy from the project (20 + 20 + 20). No payment protocol (0). 0+20+20+20 = 60."
        },
        "scores": {
          "a": 40,
          "b": 60
        }
      },
      {
        "by": 14,
        "category": "transparency",
        "leads": "crewai",
        "name": "Transparency \u0026 trust",
        "reasons": {
          "a": "MIT (30). The telemetry page lists what's collected and what isn't, but doesn't say where it goes or how long it's kept (15). Deprecations such as function_calling_llm and allow_code_execution appear in the dated changelog and docs, with no written deprecation policy (10). Telemetry disclosed in the docs and README with two opt-out variables (20).",
          "b": "Apache-2.0 (30). The library stores nothing itself; the default model sends prompts to Hugging Face's inference providers, which the docs show (20). Breaking removals such as WasmExecutor shipped in minor releases, without a written deprecation policy (5). No telemetry, though no page states it (12). 30+20+5+12 = 67."
        },
        "scores": {
          "a": 79,
          "b": 65
        }
      },
      {
        "by": 12,
        "category": "ergonomics",
        "leads": "crewai",
        "name": "Agent ergonomics",
        "reasons": {
          "a": "The mcps field gives an agent an MCP server in five lines, with static and dynamic tool filters and tool-list caching (25). max_iter defaults to 20, max_execution_time and max_rpm cap runs, and respect_context_window is on by default (20). MCP connection failures are logged as warnings and the agent carries on without those tools, and we found no exception reference (10). max_retry_limit retries an agent twice on error, and Flows persist state with @persist (20). An agent needs role, goal and backstory before it does anything, and it's Python only (5).",
          "b": "Framework reading. MCPClient loads an MCP server's tools in a few lines (20). max_steps, planning intervals and final_answer_checks bound a run (16). Errors from tools and code go back to the model as observations (14). No built-in retry, idempotency or resume beyond replaying memory (8). Few required parameters and many providers, Python only, and the default model needs a Hugging Face token (10). 20+16+14+8+10 = 68."
        },
        "scores": {
          "a": 80,
          "b": 68
        }
      },
      {
        "by": 11,
        "category": "reliability",
        "leads": "crewai",
        "name": "Reliability",
        "reasons": {
          "a": "Official package on PyPI with Requires-Python \u003e=3.10,\u003c3.14 in the pyproject at 1.15.33 (20). The Run Tests workflow runs the suite on pull requests only, and CodeQL, a vulnerability scan and a nightly canary run on main; run results weren't re-read on 1 November because GitHub's pages answer 403 (15). Between 99 and 184 open issues, triaged with labels and a stale bot, per the 1 October check, not re-read on 1 November (18). A dated changelog that notes deprecations, but no written versioning policy, new capabilities ship in patch releases, and 1.15.29, a patch release on 23 October 2026, removed public import paths and changed how every agent runs, marked as breaking only on 28 October (7). 1.15.33, stable (15).",
          "b": "Local-package reading. Official PyPI package with Python 3.10 or newer (20). A public tests workflow runs pytest on Python 3.10 and 3.12 for pushes and pull requests; whether main passes wasn't read (15). 416 open issues and 1,045 open issues and pull requests on 6 November, with 144 issues opened in the 90 days to 3 November. Of the 50 newest, 26 had a comment and 1 was closed. Two 2026 CVE records say the vendor didn't respond to the reporter, and seven commits reached main from 8 August to 6 November (6). Release notes on GitHub tags but no changelog file, and the remote WasmExecutor was removed in a minor release (8). 1.0 since 31 December 2024 (15). 20+15+6+8+15 = 64."
        },
        "scores": {
          "a": 75,
          "b": 64
        }
      },
      {
        "by": 7,
        "category": "schema",
        "leads": "smolagents",
        "name": "Schema \u0026 documentation",
        "reasons": {
          "a": "Agent, Task and tool classes are Pydantic-typed, but we found no generated API reference for the Python library (15). llms.txt at docs.crewai.com, per the listing's earlier check (10). The docs separate Crews from Flows and say which to use for what, though not when to avoid multi-agent crews (12). Tools take a Pydantic args_schema and MCP tools keep their JSON Schema (12). Plenty of examples, and MCP connection errors are described, but there's no exception reference (10). Dated changelog at docs.crewai.com/en/changelog (15).",
          "b": "Framework reading. A typed Python API with reference pages for agents, models, tools and executors (22). llms.txt and Markdown pages on huggingface.co (10). The docs say when to use CodeAgent or ToolCallingAgent and when a sandbox is needed (17). Tools declare typed inputs in a schema dictionary or from a decorated function (12). Many runnable examples; error classes exist but aren't catalogued (10). Versions tagged with release notes, no changelog file (10). 22+10+17+12+10+10 = 81."
        },
        "scores": {
          "a": 74,
          "b": 81
        }
      }
    ],
    "facts": [
      {
        "a": "Agent framework",
        "b": "Agent framework",
        "name": "Kind"
      },
      {
        "a": "CrewAI",
        "b": "Hugging Face",
        "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-10-29",
        "b": "2026-05-29",
        "name": "Last release"
      },
      {
        "a": "not read yet",
        "b": "2022-09-15",
        "name": "Terms last updated"
      },
      {
        "a": "not read yet",
        "b": "2023-03-28",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not read yet",
        "b": "not found in the text",
        "name": "Customer content may train models"
      },
      {
        "a": "not read yet",
        "b": "not found in the text",
        "name": "Terms restrict automated access"
      },
      {
        "a": "not read yet",
        "b": "not found in the text",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not read yet",
        "b": "yes",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "not read yet",
        "b": "not found in the text",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "59k stars, 552k PyPI/wk",
        "b": "30k stars, 171k PyPI/wk",
        "name": "Popularity"
      },
      {
        "a": "3/5 (2)",
        "b": "none",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "CrewAI and smolagents score within a point of each other on agent readiness, 59 (C) and 58.7 (C). smolagents leads on schema \u0026 documentation and payments \u0026 pricing.",
        "question": "Which is better for AI agents, CrewAI or smolagents?"
      },
      {
        "answer": "Yes. CrewAI is open source (MIT). smolagents is open source (Apache-2.0).",
        "question": "Are CrewAI and smolagents open source?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 75 against 64",
          "Agent ergonomics, 80 against 68",
          "Maintenance \u0026 community, 88 against 34",
          "Transparency \u0026 trust, 79 against 65"
        ],
        "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": [
          "Schema \u0026 documentation, 81 against 74",
          "Payments \u0026 pricing, 60 against 40"
        ],
        "also": null,
        "goodFor": "Small Python projects and research that want code-writing agents with minimal abstraction.",
        "slug": "smolagents",
        "watchFor": "No release since 1.26.0 on 29 May 2026, and few commits to main since August"
      }
    ],
    "history": {
      "crewai": [
        {
          "causes": [
            "product",
            "evidence",
            "event"
          ],
          "date": "2026-11-01",
          "delta": -8.1,
          "from": 67.1,
          "fromGrade": "B",
          "to": 59,
          "toGrade": "C"
        },
        {
          "causes": [
            "correction"
          ],
          "date": "2026-10-28",
          "delta": -0.1,
          "from": 67.2,
          "fromGrade": "B",
          "to": 67.1,
          "toGrade": "B"
        },
        {
          "causes": [
            "method"
          ],
          "date": "2026-10-27",
          "delta": 0.2,
          "from": 67,
          "fromGrade": "B",
          "to": 67.2,
          "toGrade": "B"
        }
      ],
      "smolagents": null
    },
    "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-smolagents.json",
        "title": "AgentOS vs smolagents",
        "url": "https://www.anchorterminal.com/compare/agentos-vs-smolagents"
      },
      {
        "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-smolagents.json",
        "title": "Agno vs smolagents",
        "url": "https://www.anchorterminal.com/compare/agno-vs-smolagents"
      },
      {
        "json": "https://www.anchorterminal.com/compare/boxlang-ai-vs-crewai.json",
        "title": "BoxLang AI vs CrewAI",
        "url": "https://www.anchorterminal.com/compare/boxlang-ai-vs-crewai"
      },
      {
        "json": "https://www.anchorterminal.com/compare/boxlang-ai-vs-smolagents.json",
        "title": "BoxLang AI vs smolagents",
        "url": "https://www.anchorterminal.com/compare/boxlang-ai-vs-smolagents"
      },
      {
        "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-smolagents.json",
        "title": "Claude Agent SDK vs smolagents",
        "url": "https://www.anchorterminal.com/compare/claude-agent-sdk-vs-smolagents"
      },
      {
        "json": "https://www.anchorterminal.com/compare/crewai-vs-cursor-agent-sdk.json",
        "title": "CrewAI vs Cursor Agent SDK",
        "url": "https://www.anchorterminal.com/compare/crewai-vs-cursor-agent-sdk"
      },
      {
        "json": "https://www.anchorterminal.com/compare/crewai-vs-docker-agent.json",
        "title": "CrewAI vs Docker Agent",
        "url": "https://www.anchorterminal.com/compare/crewai-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-guilds-run.json",
        "title": "CrewAI vs guilds.run",
        "url": "https://www.anchorterminal.com/compare/crewai-vs-guilds-run"
      },
      {
        "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-llamaindex.json",
        "title": "CrewAI vs LlamaIndex Framework",
        "url": "https://www.anchorterminal.com/compare/crewai-vs-llamaindex"
      },
      {
        "json": "https://www.anchorterminal.com/compare/crewai-vs-mastra.json",
        "title": "CrewAI vs Mastra",
        "url": "https://www.anchorterminal.com/compare/crewai-vs-mastra"
      },
      {
        "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/crewai-vs-strands-agents.json",
        "title": "CrewAI vs Strands Agents",
        "url": "https://www.anchorterminal.com/compare/crewai-vs-strands-agents"
      },
      {
        "json": "https://www.anchorterminal.com/compare/crewai-vs-tradingagents.json",
        "title": "CrewAI vs TradingAgents",
        "url": "https://www.anchorterminal.com/compare/crewai-vs-tradingagents"
      },
      {
        "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-smolagents.json",
        "title": "Cursor Agent SDK vs smolagents",
        "url": "https://www.anchorterminal.com/compare/cursor-agent-sdk-vs-smolagents"
      },
      {
        "json": "https://www.anchorterminal.com/compare/docker-agent-vs-smolagents.json",
        "title": "Docker Agent vs smolagents",
        "url": "https://www.anchorterminal.com/compare/docker-agent-vs-smolagents"
      },
      {
        "json": "https://www.anchorterminal.com/compare/google-adk-vs-smolagents.json",
        "title": "Agent Development Kit (ADK) vs smolagents",
        "url": "https://www.anchorterminal.com/compare/google-adk-vs-smolagents"
      },
      {
        "json": "https://www.anchorterminal.com/compare/guilds-run-vs-smolagents.json",
        "title": "guilds.run vs smolagents",
        "url": "https://www.anchorterminal.com/compare/guilds-run-vs-smolagents"
      },
      {
        "json": "https://www.anchorterminal.com/compare/langgraph-vs-smolagents.json",
        "title": "LangGraph vs smolagents",
        "url": "https://www.anchorterminal.com/compare/langgraph-vs-smolagents"
      },
      {
        "json": "https://www.anchorterminal.com/compare/llamaindex-vs-smolagents.json",
        "title": "LlamaIndex Framework vs smolagents",
        "url": "https://www.anchorterminal.com/compare/llamaindex-vs-smolagents"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mastra-vs-smolagents.json",
        "title": "Mastra vs smolagents",
        "url": "https://www.anchorterminal.com/compare/mastra-vs-smolagents"
      },
      {
        "json": "https://www.anchorterminal.com/compare/microsoft-agent-framework-vs-smolagents.json",
        "title": "Microsoft Agent Framework vs smolagents",
        "url": "https://www.anchorterminal.com/compare/microsoft-agent-framework-vs-smolagents"
      },
      {
        "json": "https://www.anchorterminal.com/compare/openai-agents-sdk-vs-smolagents.json",
        "title": "OpenAI Agents SDK vs smolagents",
        "url": "https://www.anchorterminal.com/compare/openai-agents-sdk-vs-smolagents"
      },
      {
        "json": "https://www.anchorterminal.com/compare/pydantic-ai-vs-smolagents.json",
        "title": "Pydantic AI vs smolagents",
        "url": "https://www.anchorterminal.com/compare/pydantic-ai-vs-smolagents"
      },
      {
        "json": "https://www.anchorterminal.com/compare/smolagents-vs-strands-agents.json",
        "title": "smolagents vs Strands Agents",
        "url": "https://www.anchorterminal.com/compare/smolagents-vs-strands-agents"
      },
      {
        "json": "https://www.anchorterminal.com/compare/smolagents-vs-tradingagents.json",
        "title": "smolagents vs TradingAgents",
        "url": "https://www.anchorterminal.com/compare/smolagents-vs-tradingagents"
      },
      {
        "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"
      }
    ],
    "panel": null,
    "scores": [
      {
        "by": 11,
        "crewai": 75,
        "edge": "crewai",
        "key": "reliability",
        "name": "Reliability",
        "smolagents": 64,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 7,
        "crewai": 74,
        "edge": "smolagents",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "smolagents": 81,
        "weight": 13
      },
      {
        "by": 12,
        "crewai": 80,
        "edge": "crewai",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "smolagents": 68,
        "weight": 13
      },
      {
        "by": 1,
        "crewai": 65,
        "edge": "smolagents",
        "key": "security",
        "name": "Security \u0026 auth",
        "smolagents": 66,
        "weight": 14
      },
      {
        "by": 20,
        "crewai": 40,
        "edge": "smolagents",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "smolagents": 60,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 54,
        "crewai": 88,
        "edge": "crewai",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "smolagents": 34,
        "weight": 7
      },
      {
        "by": 14,
        "crewai": 79,
        "edge": "crewai",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "smolagents": 65,
        "weight": 7
      }
    ],
    "summary": "CrewAI and smolagents score within a point of each other on agent readiness, 59 (C) and 58.7 (C). smolagents leads on schema \u0026 documentation and payments \u0026 pricing. Both do agent frameworks.",
    "tasks": null,
    "tutorials": [],
    "verdicts": {
      "crewai": "The mcps field connects an agent to an MCP server in a few lines, with static and dynamic tool filters. Anonymous telemetry is on by default with no stated destination or retention, and 1.15.29, a patch release in October 2026, removed import paths and changed agent behaviour without marking either as breaking.",
      "smolagents": "A compact Python library for code-writing and tool-calling agents, with MCP tools, any model provider and remote sandboxes through E2B, Docker, Modal or Blaxel. The newest release is 1.26.0 of 29 May 2026, a critical remote-executor RCE took about eight weeks to fix, and the local executor isn't a security boundary."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/crewai-vs-smolagents",
    "json": "https://www.anchorterminal.com/compare/crewai-vs-smolagents.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/crewai-vs-smolagents.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/crewai-vs-smolagents.min.md"
  },
  "markdown": "CrewAI and smolagents score within a point of each other on agent readiness, 59 (C) and 58.7 (C). smolagents leads on schema \u0026 documentation and payments \u0026 pricing. Both do agent frameworks.\n\n- CrewAI: grade C, 59/100, rank #716 of 1486. Markdown https://www.anchorterminal.com/tools/crewai.md · JSON https://www.anchorterminal.com/api/v1/tools/crewai.json\n- smolagents: grade C, 58.7/100, rank #735 of 1486. Markdown https://www.anchorterminal.com/tools/smolagents.md · JSON https://www.anchorterminal.com/api/v1/tools/smolagents.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### CrewAI (C)\n\nGood for: Multi-agent role-and-task workflows and for teams that want Flows for ordered, stateful steps.\n\nAhead on:\n- Reliability, 75 against 64\n- Agent ergonomics, 80 against 68\n- Maintenance \u0026 community, 88 against 34\n- Transparency \u0026 trust, 79 against 65\n\nWatch for: Anonymous telemetry on by default, with no stated destination or retention\n\n### smolagents (C)\n\nGood for: Small Python projects and research that want code-writing agents with minimal abstraction.\n\nAhead on:\n- Schema \u0026 documentation, 81 against 74\n- Payments \u0026 pricing, 60 against 40\n\nWatch for: No release since 1.26.0 on 29 May 2026, and few commits to main since August\n\n\n## Why the edge\n\n### Maintenance \u0026 community: CrewAI +54\n\n- CrewAI (88): 1.15.33, tagged on 2026-10-29 (30). 23 stable releases tagged in the 90 days from 3 August, 1.15.11 (4 August) to 1.15.33, and no pre-release in that window (20). Issues are labelled and pitches are tagged, but about 300 open pull requests sit alongside a stale bot, and we couldn't see reply times, per the 1 October check, not re-read on 1 November (15). The Python package is current (15). CodeQL, a vulnerability scan and Dependabot run on main, but Python 3.14 isn't supported yet and dev builds share the PyPI name (8).\n- smolagents (34): v1.26.0 on 29 May 2026, 161 days before this check (10). No release in the 90 days to 6 November (0). 416 open issues and 1,045 open issues and pull requests on 6 November, with 144 issues opened in the 90 days to 3 November. Of the 50 newest, 26 had a comment and 1 was closed. Two 2026 CVE records say the vendor didn't respond to the reporter, and seven commits reached main from 8 August to 6 November (6). Python only, and the package is the current one (10). CI with actions pinned to commit SHAs and Dependabot for actions (8). 10+0+6+10+8 = 34.\n\n### Payments \u0026 pricing: smolagents +20\n\n- CrewAI (40): No payment protocol (0). Scored on CrewAI AMP, the hosted option. Its free Basic plan is public but the only paid plan is contact-sales (0). The MIT package installs with no card (20) and no account, and can run a local model through LiteLLM (20).\n- smolagents (60): Self-hosted rule. Free Apache-2.0 package with nothing to buy from the project (20 + 20 + 20). No payment protocol (0). 0+20+20+20 = 60.\n\n### Transparency \u0026 trust: CrewAI +14\n\n- CrewAI (79): MIT (30). The telemetry page lists what's collected and what isn't, but doesn't say where it goes or how long it's kept (15). Deprecations such as function_calling_llm and allow_code_execution appear in the dated changelog and docs, with no written deprecation policy (10). Telemetry disclosed in the docs and README with two opt-out variables (20).\n- smolagents (65): Apache-2.0 (30). The library stores nothing itself; the default model sends prompts to Hugging Face's inference providers, which the docs show (20). Breaking removals such as WasmExecutor shipped in minor releases, without a written deprecation policy (5). No telemetry, though no page states it (12). 30+20+5+12 = 67.\n\n### Agent ergonomics: CrewAI +12\n\n- CrewAI (80): The mcps field gives an agent an MCP server in five lines, with static and dynamic tool filters and tool-list caching (25). max_iter defaults to 20, max_execution_time and max_rpm cap runs, and respect_context_window is on by default (20). MCP connection failures are logged as warnings and the agent carries on without those tools, and we found no exception reference (10). max_retry_limit retries an agent twice on error, and Flows persist state with @persist (20). An agent needs role, goal and backstory before it does anything, and it's Python only (5).\n- smolagents (68): Framework reading. MCPClient loads an MCP server's tools in a few lines (20). max_steps, planning intervals and final_answer_checks bound a run (16). Errors from tools and code go back to the model as observations (14). No built-in retry, idempotency or resume beyond replaying memory (8). Few required parameters and many providers, Python only, and the default model needs a Hugging Face token (10). 20+16+14+8+10 = 68.\n\n### Reliability: CrewAI +11\n\n- CrewAI (75): Official package on PyPI with Requires-Python \u003e=3.10,\u003c3.14 in the pyproject at 1.15.33 (20). The Run Tests workflow runs the suite on pull requests only, and CodeQL, a vulnerability scan and a nightly canary run on main; run results weren't re-read on 1 November because GitHub's pages answer 403 (15). Between 99 and 184 open issues, triaged with labels and a stale bot, per the 1 October check, not re-read on 1 November (18). A dated changelog that notes deprecations, but no written versioning policy, new capabilities ship in patch releases, and 1.15.29, a patch release on 23 October 2026, removed public import paths and changed how every agent runs, marked as breaking only on 28 October (7). 1.15.33, stable (15).\n- smolagents (64): Local-package reading. Official PyPI package with Python 3.10 or newer (20). A public tests workflow runs pytest on Python 3.10 and 3.12 for pushes and pull requests; whether main passes wasn't read (15). 416 open issues and 1,045 open issues and pull requests on 6 November, with 144 issues opened in the 90 days to 3 November. Of the 50 newest, 26 had a comment and 1 was closed. Two 2026 CVE records say the vendor didn't respond to the reporter, and seven commits reached main from 8 August to 6 November (6). Release notes on GitHub tags but no changelog file, and the remote WasmExecutor was removed in a minor release (8). 1.0 since 31 December 2024 (15). 20+15+6+8+15 = 64.\n\n### Schema \u0026 documentation: smolagents +7\n\n- CrewAI (74): Agent, Task and tool classes are Pydantic-typed, but we found no generated API reference for the Python library (15). llms.txt at docs.crewai.com, per the listing's earlier check (10). The docs separate Crews from Flows and say which to use for what, though not when to avoid multi-agent crews (12). Tools take a Pydantic args_schema and MCP tools keep their JSON Schema (12). Plenty of examples, and MCP connection errors are described, but there's no exception reference (10). Dated changelog at docs.crewai.com/en/changelog (15).\n- smolagents (81): Framework reading. A typed Python API with reference pages for agents, models, tools and executors (22). llms.txt and Markdown pages on huggingface.co (10). The docs say when to use CodeAgent or ToolCallingAgent and when a sandbox is needed (17). Tools declare typed inputs in a schema dictionary or from a decorated function (12). Many runnable examples; error classes exist but aren't catalogued (10). Versions tagged with release notes, no changelog file (10). 22+10+17+12+10+10 = 81.\n\n## Score by category\n\n| Category | Weight | CrewAI | smolagents | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 75 | 64 | CrewAI +11 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 74 | 81 | smolagents +7 |\n| Agent ergonomics | 13% (16.2 this run) | 80 | 68 | CrewAI +12 |\n| Security \u0026 auth | 14% (17.5 this run) | 65 | 66 | smolagents +1 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 40 | 60 | smolagents +20 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 88 | 34 | CrewAI +54 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 79 | 65 | CrewAI +14 |\n| Negative events | ≤15 | -12 | -6 | |\n| **Total** | | **59 · C** | **58.7 · C** | |\n\n## Facts side by side\n\n| Fact | CrewAI | smolagents |\n| --- | --- | --- |\n| Kind | Agent framework | Agent framework |\n| Vendor | CrewAI | Hugging Face |\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-10-29 | 2026-05-29 |\n| Terms last updated | not read yet | 2022-09-15 |\n| Privacy policy last updated | not read yet | 2023-03-28 |\n| Customer content may train models | not read yet | not found in the text |\n| Terms restrict automated access | not read yet | not found in the text |\n| Terms restrict benchmarking | not read yet | not found in the text |\n| Terms or service can change without notice | not read yet | yes |\n| Arbitration or class-action waiver | not read yet | not found in the text |\n| Popularity | 59k stars, 552k PyPI/wk | 30k stars, 171k PyPI/wk |\n| Agent reviews | 3/5 (2) | none |\n\n## How the scores have moved\n\n### CrewAI\n\n- -8.1 on 1 November 2026 (B to C): product, new evidence, negative event\n- -0.1 on 28 October 2026: correction\n- +0.2 on 27 October 2026: checklist\n\n### smolagents\n\nNo score change since it was listed.\n\n## Verdicts\n\n**CrewAI.** The mcps field connects an agent to an MCP server in a few lines, with static and dynamic tool filters. Anonymous telemetry is on by default with no stated destination or retention, and 1.15.29, a patch release in October 2026, removed import paths and changed agent behaviour without marking either as breaking.\n\n**smolagents.** A compact Python library for code-writing and tool-calling agents, with MCP tools, any model provider and remote sandboxes through E2B, Docker, Modal or Blaxel. The newest release is 1.26.0 of 29 May 2026, a critical remote-executor RCE took about eight weeks to fix, and the local executor isn't a security boundary.\n\n## Before you call either\n\n### CrewAI\n\n1. Set CREWAI_DISABLE_TELEMETRY=true before the first run\n2. Pin an exact version and read the changelog before upgrading. Patch releases have carried breaking changes\n3. Put MCP keys in headers, not in the URL as the docs' Exa example does\n4. Add a PRE_TOOL_CALL hook for any tool that writes or sends\n5. Set use_better_compaction=False if the agent needs whole tool results in its context\n\n### smolagents\n\n1. Run CodeAgent with `executor_type` set to e2b, docker, modal or blaxel whenever the model or its inputs aren't trusted\n2. Use smolagents 1.24.0 or later to get the remote-executor deserialisation fix\n3. Set max_steps and final_answer_checks so a run stops on its own\n4. Pass structured_output explicitly to MCPClient to avoid the default-change warning\n5. Pin the version, since minor releases have removed APIs\n\n## Questions\n\n### Which is better for AI agents, CrewAI or smolagents?\n\nCrewAI and smolagents score within a point of each other on agent readiness, 59 (C) and 58.7 (C). smolagents leads on schema \u0026 documentation and payments \u0026 pricing.\n\n### Are CrewAI and smolagents open source?\n\nYes. CrewAI is open source (MIT). smolagents is open source (Apache-2.0).\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/crewai-vs-smolagents.json, and with the fewest tokens: https://www.anchorterminal.com/compare/crewai-vs-smolagents.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"crewai\", \"b\": \"smolagents\"}`. From a terminal: `anchor compare crewai smolagents`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/crewai.json and https://www.anchorterminal.com/api/v1/tools/smolagents.json\n\n## Other comparisons with CrewAI or smolagents\n\n- [AgentOS vs CrewAI](https://www.anchorterminal.com/compare/agentos-vs-crewai.md)\n- [AgentOS vs smolagents](https://www.anchorterminal.com/compare/agentos-vs-smolagents.md)\n- [Agno vs CrewAI](https://www.anchorterminal.com/compare/agno-vs-crewai.md)\n- [Agno vs smolagents](https://www.anchorterminal.com/compare/agno-vs-smolagents.md)\n- [BoxLang AI vs CrewAI](https://www.anchorterminal.com/compare/boxlang-ai-vs-crewai.md)\n- [BoxLang AI vs smolagents](https://www.anchorterminal.com/compare/boxlang-ai-vs-smolagents.md)\n- [Claude Agent SDK vs CrewAI](https://www.anchorterminal.com/compare/claude-agent-sdk-vs-crewai.md)\n- [Claude Agent SDK vs smolagents](https://www.anchorterminal.com/compare/claude-agent-sdk-vs-smolagents.md)\n- [CrewAI vs Cursor Agent SDK](https://www.anchorterminal.com/compare/crewai-vs-cursor-agent-sdk.md)\n- [CrewAI vs Docker Agent](https://www.anchorterminal.com/compare/crewai-vs-docker-agent.md)\n- [CrewAI vs Agent Development Kit (ADK)](https://www.anchorterminal.com/compare/crewai-vs-google-adk.md)\n- [CrewAI vs guilds.run](https://www.anchorterminal.com/compare/crewai-vs-guilds-run.md)\n- [CrewAI vs LangGraph](https://www.anchorterminal.com/compare/crewai-vs-langgraph.md)\n- [CrewAI vs LlamaIndex Framework](https://www.anchorterminal.com/compare/crewai-vs-llamaindex.md)\n- [CrewAI vs Mastra](https://www.anchorterminal.com/compare/crewai-vs-mastra.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- [CrewAI vs Strands Agents](https://www.anchorterminal.com/compare/crewai-vs-strands-agents.md)\n- [CrewAI vs TradingAgents](https://www.anchorterminal.com/compare/crewai-vs-tradingagents.md)\n- [CrewAI vs AI SDK](https://www.anchorterminal.com/compare/crewai-vs-vercel-ai-sdk.md)\n- [Cursor Agent SDK vs smolagents](https://www.anchorterminal.com/compare/cursor-agent-sdk-vs-smolagents.md)\n- [Docker Agent vs smolagents](https://www.anchorterminal.com/compare/docker-agent-vs-smolagents.md)\n- [Agent Development Kit (ADK) vs smolagents](https://www.anchorterminal.com/compare/google-adk-vs-smolagents.md)\n- [guilds.run vs smolagents](https://www.anchorterminal.com/compare/guilds-run-vs-smolagents.md)\n- [LangGraph vs smolagents](https://www.anchorterminal.com/compare/langgraph-vs-smolagents.md)\n- [LlamaIndex Framework vs smolagents](https://www.anchorterminal.com/compare/llamaindex-vs-smolagents.md)\n- [Mastra vs smolagents](https://www.anchorterminal.com/compare/mastra-vs-smolagents.md)\n- [Microsoft Agent Framework vs smolagents](https://www.anchorterminal.com/compare/microsoft-agent-framework-vs-smolagents.md)\n- [OpenAI Agents SDK vs smolagents](https://www.anchorterminal.com/compare/openai-agents-sdk-vs-smolagents.md)\n- [Pydantic AI vs smolagents](https://www.anchorterminal.com/compare/pydantic-ai-vs-smolagents.md)\n- [smolagents vs Strands Agents](https://www.anchorterminal.com/compare/smolagents-vs-strands-agents.md)\n- [smolagents vs TradingAgents](https://www.anchorterminal.com/compare/smolagents-vs-tradingagents.md)\n- [smolagents vs AI SDK](https://www.anchorterminal.com/compare/smolagents-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": "CrewAI vs smolagents",
        "url": ""
      }
    ],
    "description": "CrewAI and smolagents score within a point of each other for agent frameworks, 59 and 58.7 out of 100. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "CrewAI C 59",
      "smolagents C 58.7",
      "scores"
    ],
    "h1": "CrewAI vs smolagents",
    "image": "https://www.anchorterminal.com/assets/og/default.png",
    "path": "/compare/crewai-vs-smolagents",
    "published": "2026-10-01",
    "section": "tools",
    "title": "CrewAI vs smolagents for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-11-07",
    "url": "https://www.anchorterminal.com/compare/crewai-vs-smolagents"
  },
  "tokens": {
    "markdown": 4000,
    "slim": 2080
  },
  "version": 1
}
