{
  "data": {
    "a": {
      "slug": "google-adk",
      "name": "Agent Development Kit (ADK)",
      "vendor": "Google",
      "vendorUrl": "https://adk.dev",
      "kind": "framework",
      "category": "frameworks",
      "summary": "Google's code-first toolkit to build, evaluate and deploy agents in Python, TypeScript, Go, Java and Kotlin.",
      "url": "https://www.anchorterminal.com/tools/google-adk",
      "markdownUrl": "https://www.anchorterminal.com/tools/google-adk.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/google-adk.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/google-adk.json",
      "dns": "google-adk.grade.anchorterminal.com",
      "repo": "https://github.com/google/adk-python",
      "license": "Apache-2.0",
      "transports": [],
      "packages": [
        {
          "registry": "pypi",
          "name": "google-adk"
        },
        {
          "registry": "npm",
          "name": "@google/adk"
        }
      ],
      "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. Google's managed Agent Runtime costs $0.085 a vCPU-hour after 50 free vCPU-hours a month.",
      "priceSummary": "Free · OSS",
      "where": "library",
      "x402": {
        "level": "no",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 21649,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-09-26"
      },
      "docsUrl": "https://adk.dev",
      "llmsTxt": "https://adk.dev/llms.txt",
      "capabilities": [
        "agent.framework",
        "agent.multi-agent",
        "agent.durable",
        "agent.mcp-client"
      ],
      "tags": [
        "official",
        "framework",
        "python",
        "typescript",
        "go",
        "java",
        "open-source"
      ],
      "lastRelease": "2026-10-23",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 68.7,
        "grade": "B",
        "agentReady": false,
        "rank": 273,
        "ranked": true,
        "rankOf": 1510,
        "categoryRank": 13,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 80,
          "maintenance": 90,
          "payments": 60,
          "reliability": 80,
          "schema": 87,
          "security": 92,
          "transparency": 69
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-01"
        },
        "negative": -12,
        "negativeNotes": [
          "2026-04-13. CVE-2026-4810 (CVSS 4.0 9.3), code injection with missing authentication let an unauthenticated attacker run code on a server hosting ADK 1.7.0 to 1.28.0 or 2.0.0a1, including local ADK Web. Fixed in 1.28.1 and 2.0.0a2 and published by Google as CNA, so it decays to 2 points. https://nvd.nist.gov/vuln/detail/CVE-2026-4810",
          "2026-07-29. CVE-2026-18236 (CVSS 4.0 9.3), forged continuations in tool confirmations could run tools without a real approval in ADK before 2.5.0. Fixed and published by Google as CNA, 2 points. https://nvd.nist.gov/vuln/detail/CVE-2026-18236",
          "2026-09-09. CVE-2026-79696 (CVSS 4.0 10.0), code injection in adk web let an unauthenticated attacker run code through a crafted test session replay on ADK 2.0.0 to 2.6.0 where pytest is installed. Fixed in 2.7.0 (13 August) and published by Google as CNA, so it decays to 2 points, as the two earlier criticals do. https://nvd.nist.gov/vuln/detail/CVE-2026-79696",
          "2026-09-04. CVE-2026-79707 (CVSS 4.0 8.7), path traversal in the builder endpoint let an unauthenticated attacker read arbitrary files on ADK 1.9.0 to 1.21.0. Fixed in 1.22.0 on 8 January 2026 and published by Google as CNA, 1 point. https://nvd.nist.gov/vuln/detail/CVE-2026-79707",
          "2026-10-23. CVE-2026-107858 (CVSS 4.0 7.2, high), ADK for Java's development web server accepted cross-origin requests and WebSocket connections from any origin, so a web page a developer visited could drive a locally running agent, trigger its tools and read or delete its sessions and artifacts, in google-adk-dev and the Maven plugin from 0.1.0 before 1.13.0. Fixed in 1.13.0 (21 October) and published by Google as CNA two days later, under two months old, so 2 points, as pydantic-ai's local web UI advisory of 12 August took. https://nvd.nist.gov/vuln/detail/CVE-2026-107858",
          "2026-10-22. -3, breaking changes in minor releases of a 2.x package without advance notice. google-adk 2.13.0 switches the default telemetry to the OpenTelemetry GenAI v2 schema and stops emitting the `call_llm` span, marked breaking only in the release's own changelog, with an environment variable to keep v1 until at least 31 March 2027. 2.10.0 (24 September) had changed instruction templating and BigQuery protected write mode in the same way, listed as behaviour changes on release day. One term at the floor, as temporal's SDK releases took. https://github.com/google/adk-python/blob/main/CHANGELOG.md"
        ],
        "verdict": "Python, TypeScript, Go, Java and Kotlin, with tool confirmation and context compaction built in. Google has published six CVEs against ADK in 2026, three of them critical, one in tool confirmation itself, and minor 2.x releases keep carrying breaking changes.",
        "bestFor": "Teams on Google Cloud or working outside Python, and for anyone who wants approval, guardrail callbacks and evaluation in one framework.",
        "strengths": [
          "Python, TypeScript, Go, Java and Kotlin, with Python 2.13.0 on 23 October and Java 1.13.0 on 21 October 2026",
          "Tool confirmation, before-tool callbacks, plugins and a Model Armor plugin",
          "Token-based and sliding-window context compaction, documented for every language",
          "Message content in traces is opt-in, with OpenTelemetry and about 20 tracing integrations",
          "llms.txt of 247 entries with a Markdown version of every page"
        ],
        "weaknesses": [
          "Six CVEs in 2026, three of them critical, one in tool confirmation itself",
          "Breaking changes in minor releases (2.6.0, 2.7.0, 2.10.0 and 2.13.0), and 2.12.0 dropped Python 3.10 without a changelog line",
          "300 open issues and 261 open pull requests as of 1 October",
          "No exception reference, and no error handling on the MCP page",
          "Agent Runtime needs a Google Cloud billing account"
        ],
        "agentNotes": [
          "Run Python 2.7.0 or later and Java 1.13.0 or later, which fix the adk web code-injection CVE, the tool-confirmation forgery and the Java dev server's cross-origin flaw",
          "Always pass tool_filter to McpToolset",
          "Pin a 2.x minor and read the changelog before each bump. 2.12.0 needs Python 3.11 or later, which its changelog doesn't say",
          "Set EventsCompactionConfig on the App for long sessions so context doesn't grow without limit",
          "Keep ADK Web off public interfaces",
          "Set `ADK_TELEMETRY_SCHEMA_VERSION_OPT_IN=otel_semconv_1_36` on 2.13.0 or later if dashboards or alerts read the `call_llm` span"
        ],
        "metrics": {
          "kind": "library",
          "measured": false
        },
        "reviewCount": 8,
        "avgRating": 3,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 68.7
          }
        ],
        "editorialScores": {
          "ergonomics": 80,
          "maintenance": 90,
          "payments": 60,
          "reliability": 80,
          "schema": 87,
          "security": 92,
          "transparency": 67
        },
        "provenanceScore": 70,
        "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 google-adk   # or: npm i @google/adk"
      },
      "letme": {
        "capability": "https://letme.dev/agent.framework",
        "tool": "https://letme.dev/google-adk"
      },
      "sameCompany": [
        "gemini-api",
        "vertex-ai",
        "gemini-embedding",
        "vertex-ai-tuning",
        "cloud-run-gpus",
        "google-model-armor",
        "google-imagen",
        "google-veo",
        "google-lyria",
        "google-speech-to-text",
        "google-cloud-tts",
        "gemini-live",
        "google-memory-bank",
        "google-secret-manager",
        "google-cloud-document-ai",
        "google-weather-api",
        "chrome-devtools-mcp",
        "google-maps-platform",
        "google-cloud-translation",
        "google-calendar-api",
        "firebase-cloud-messaging",
        "google-cloud-storage",
        "google-drive-api",
        "gemini-enterprise",
        "gemini-cli",
        "google-search-console",
        "google-ads-api",
        "google-forms",
        "google-sheets-api",
        "gmail-api",
        "google-people-api"
      ],
      "area": "frameworks",
      "unitPrices": [
        {
          "item": "Agent Runtime",
          "unit": "vcpu-hour",
          "usd": 0.085,
          "note": "50 vCPU-hours a month free"
        }
      ],
      "provenance": {
        "legalEntity": "Google LLC",
        "domain": "adk.dev",
        "domainRegistered": "2019-02-28",
        "domainNote": "adk.dev was registered in 2019, before ADK existed. It's Google's docs domain for the project now.",
        "endpointOnVendorDomain": null,
        "terms": "",
        "privacy": "https://policies.google.com/privacy",
        "statusPage": "",
        "changelog": "https://github.com/google/adk-python/blob/main/CHANGELOG.md",
        "securityTxt": "none",
        "checked": "2026-09-26",
        "score": 70
      },
      "requirements": {
        "setupChecked": true,
        "complianceChecked": true,
        "card": "unknown",
        "freeTier": true,
        "minutes": 3,
        "credential": "api-key",
        "hosting": [
          "self-hosted"
        ],
        "euResidency": "unknown",
        "trainsOnData": "no",
        "zeroRetention": "unknown",
        "selfHost": "yes"
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/google-adk.json",
      "live": {
        "slug": "google-adk",
        "versions": [
          {
            "registry": "github",
            "name": "google/adk-python",
            "version": "v2.13.0",
            "released": "2026-10-23",
            "seenAt": "2026-11-06T23:28:55.222598494Z"
          },
          {
            "registry": "npm",
            "name": "@google/adk",
            "version": "2.4.0",
            "seenAt": "2026-11-06T23:28:55.002701153Z"
          },
          {
            "registry": "pypi",
            "name": "google-adk",
            "version": "2.13.0",
            "released": "2026-10-23",
            "seenAt": "2026-11-06T23:28:54.815546694Z"
          }
        ],
        "githubStars": 22126,
        "npmWeekly": 324165,
        "pypiWeekly": 2532189,
        "securityTxt": {
          "url": "https://adk.dev/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-07T16:00:48.394885079Z"
        },
        "llmsTxt": {
          "url": "https://adk.dev/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-11-07T15:32:37.318647019Z"
        },
        "domain": {
          "domain": "adk.dev",
          "registered": "2019-02-28",
          "source": "https://pubapi.registry.google/rdap/domain/adk.dev",
          "checkedAt": "2026-11-01T14:09:45.874929794Z"
        },
        "pages": [
          {
            "url": "https://raw.githubusercontent.com/google/adk-python/main/CHANGELOG.md",
            "kind": "deprecations",
            "status": 200,
            "checkedAt": "2026-11-07T14:21:12.002076689Z",
            "changedAt": "2026-11-07T14:21:12.002076689Z",
            "fingerprint": "dec9e098fc26"
          }
        ],
        "github": {
          "repo": "google/adk-python",
          "checkedAt": "2026-11-02T08:51:58.470038349Z",
          "stars": 22081,
          "archived": false,
          "issuesEnabled": true,
          "pushedAt": "2026-11-02T08:37:05Z",
          "openIssues": 202,
          "openPRs": 239,
          "issuesOpened90d": 471,
          "issuesClosed90d": 606,
          "prsMerged90d": 58,
          "ci": {
            "branch": "main",
            "runs": 50,
            "success": 26,
            "failure": 24,
            "other": 0,
            "latest": "success",
            "latestAt": "2026-11-02T08:37:16Z"
          },
          "replies": {
            "sampled": 13,
            "unanswered": 9,
            "medianDays": 0.4
          }
        },
        "updatedAt": "2026-11-07T16:00:48.394885079Z"
      }
    },
    "answer": "Agent Development Kit (ADK) scores 68.7 (B) on agent readiness against smolagents's 58.7 (C), and leads in 6 of 7 scored categories.",
    "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": 739,
        "ranked": true,
        "rankOf": 1510,
        "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": 56,
        "category": "maintenance",
        "leads": "google-adk",
        "name": "Maintenance \u0026 community",
        "reasons": {
          "a": "2.13.0 on 2026-10-23 (30). 15 Python releases in the 90 days from 3 August across the 1.x and 2.x lines, from 2.6.2 to 2.13.0, the newest 1.x being 1.39.1 on 2026-08-27 (20). 300 open issues and 261 open pull requests per the 1 October check, and we couldn't see reply times (15). Python is current, @google/adk is at 2.4.0 on npm, the Go module at v1.9.0 (tagged 15 October) and the Java artefact at 1.13.0 (21 October) (15). CI passes per the 1 October check, and 2.7.0 fixed zizmor findings in the workflows (10).",
          "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": 90,
          "b": 34
        }
      },
      {
        "by": 26,
        "category": "security",
        "leads": "google-adk",
        "name": "Security \u0026 auth",
        "reasons": {
          "a": "We found no usage telemetry in the docs or the Python source, and capturing message content in traces is opt-in (30). Tool confirmation for human approval, extended to workflow tool nodes in 2.11.0 and to any workflow node through `require_confirmation` in 2.12.0, the docs say to always pass tool_filter to McpToolset, 2.12.0 limits the mutating /dev and agent builder endpoints of adk web to local clients by default, and sandboxed code execution is recommended for model-written code (20). Before-tool callbacks, an after_tool_callback that screens tool output since 2.12.0, plugins, a Model Armor plugin, an optional ToolCallIntegrityPlugin since 2.11.0, and a safety page that covers indirect prompt injection through tool results (15). OpenTelemetry traces with Cloud Trace and about 20 third-party integrations (15). SECURITY.md routes reports to Google's g.co/vulnz with a one-day triage target, per the 1 October check, not re-read on 1 November (the repository still has no SECURITY.md file and GitHub's security page answered 403). Google as CNA has published six 2026 CVEs with fixed versions, the newest on 23 and 28 October, but there are no repository advisories and no bounty is mentioned in the policy (12). Framework reading, so SOC 2 isn't scored.",
          "b": "Framework reading (telemetry defaults, approvals, guardrails, sandboxing). No telemetry found in the source (25). No human approval hook beyond step callbacks; the local executor restricts imports but the guide says it isn't a security tool, and isolation needs a remote executor (10). The secure execution guide covers LLM-generated code risks, without prompt-injection guidance for tool output (7). OpenTelemetry tracing through OpenInference and run inspection (12). SECURITY.md with private reporting and CVE credit, and the remote-executor RCE was fixed in public, but two 2026 CVE records say the vendor didn't respond (12). 25+10+7+12+12 = 66."
        },
        "scores": {
          "a": 92,
          "b": 66
        }
      },
      {
        "by": 16,
        "category": "reliability",
        "leads": "google-adk",
        "name": "Reliability",
        "reasons": {
          "a": "Official packages on PyPI (Requires-Python \u003e=3.11 since 2.12.0, constraint files for 3.11 to 3.15) and npm (20). The continuous-integration workflow passes on main, per the 1 October check, not re-read on 1 November (25). 300 open issues and 261 open pull requests, per the 1 October check, not re-read on 1 November (12). The changelog calls out breaking changes, but they keep shipping in minor releases of a post-1.0 package (2.6.0 on 2026-07-29 and 2.7.0 on 2026-08-13), 2.12.0 on 2026-10-13 dropped Python 3.10 with no line in its changelog, and 2.8.0 reverted an A2A guard that had broken every tool confirmation. On 8 October the changelog relabelled the 2.11.0 dev UI config change a bug fix and the 2.9.0 resumption changes behaviour changes. 2.13.0 (22 October) marks one more breaking change, the telemetry schema default, in a minor release (8). 2.12.0, past 1.0 (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": 80,
          "b": 64
        }
      },
      {
        "by": 12,
        "category": "ergonomics",
        "leads": "google-adk",
        "name": "Agent ergonomics",
        "reasons": {
          "a": "An agent with one MCP server is about 15 lines with the built-in McpToolset, and tool_filter limits which tools load, with no dynamic filtering or deferred loading that we saw (20). RunConfig caps model calls per run, and the context compression page documents token-based and sliding-window compaction through EventsCompactionConfig, plus context caching (20). No exception reference or MCP error handling documented (5). Invocations are resumable, model calls take retry options, and 2.11.0 adds an abort_signal for graceful cancellation (20). An agent needs a name, a model and an instruction, in Python, TypeScript, Go, Java or Kotlin (15).",
          "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": 6,
        "category": "schema",
        "leads": "google-adk",
        "name": "Schema \u0026 documentation",
        "reasons": {
          "a": "An API reference on adk.dev (25). llms.txt with about 250 entries and Markdown versions of each page (10). The docs explain the agent types and when to use workflow agents, but say little about when not to use ADK (15). Tools are typed functions, and McpToolset keeps the server's schemas (12). Examples throughout, but the MCP page has no error handling section and we found no exception reference (10). Dated changelog and release notes (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": 87,
          "b": 81
        }
      }
    ],
    "facts": [
      {
        "a": "Agent framework",
        "b": "Agent framework",
        "name": "Kind"
      },
      {
        "a": "Google",
        "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": "Apache-2.0",
        "b": "Apache-2.0",
        "name": "Licence"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-10-23",
        "b": "2026-05-29",
        "name": "Last release"
      },
      {
        "a": "no document linked",
        "b": "2022-09-15",
        "name": "Terms last updated"
      },
      {
        "a": "2026-10-01",
        "b": "2023-03-28",
        "name": "Privacy policy last updated"
      },
      {
        "a": "yes",
        "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": "22k stars",
        "b": "30k stars, 171k PyPI/wk",
        "name": "Popularity"
      },
      {
        "a": "3/5 (8)",
        "b": "none",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "Agent Development Kit (ADK) scores 68.7 (B) on agent readiness against smolagents's 58.7 (C), and leads in 6 of 7 scored categories.",
        "question": "Which is better for AI agents, Agent Development Kit (ADK) or smolagents?"
      },
      {
        "answer": "Yes. Agent Development Kit (ADK) is open source (Apache-2.0). smolagents is open source (Apache-2.0).",
        "question": "Are Agent Development Kit (ADK) and smolagents open source?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 80 against 64",
          "Schema \u0026 documentation, 87 against 81",
          "Agent ergonomics, 80 against 68",
          "Security \u0026 auth, 92 against 66",
          "Maintenance \u0026 community, 90 against 34"
        ],
        "also": null,
        "goodFor": "Teams on Google Cloud or working outside Python, and for anyone who wants approval, guardrail callbacks and evaluation in one framework.",
        "slug": "google-adk",
        "watchFor": "Six CVEs in 2026, three of them critical, one in tool confirmation itself"
      },
      {
        "aheadOn": null,
        "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": {
      "google-adk": [
        {
          "causes": [
            "event"
          ],
          "date": "2026-11-01",
          "delta": -5,
          "from": 73.7,
          "fromGrade": "BB",
          "to": 68.7,
          "toGrade": "B"
        },
        {
          "causes": [
            "method"
          ],
          "date": "2026-10-27",
          "delta": 0.1,
          "from": 73.6,
          "fromGrade": "BB",
          "to": 73.7,
          "toGrade": "BB"
        },
        {
          "causes": [
            "evidence",
            "event"
          ],
          "date": "2026-10-17",
          "delta": -1.1,
          "from": 74.7,
          "fromGrade": "BB",
          "to": 73.6,
          "toGrade": "BB"
        }
      ],
      "smolagents": null
    },
    "job": {
      "capability": "agent.framework",
      "name": "Agent frameworks"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/agentos-vs-google-adk.json",
        "title": "AgentOS vs Agent Development Kit (ADK)",
        "url": "https://www.anchorterminal.com/compare/agentos-vs-google-adk"
      },
      {
        "json": "https://www.anchorterminal.com/compare/agentos-vs-smolagents.json",
        "title": "AgentOS vs smolagents",
        "url": "https://www.anchorterminal.com/compare/agentos-vs-smolagents"
      },
      {
        "json": "https://www.anchorterminal.com/compare/agno-vs-google-adk.json",
        "title": "Agno vs Agent Development Kit (ADK)",
        "url": "https://www.anchorterminal.com/compare/agno-vs-google-adk"
      },
      {
        "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-google-adk.json",
        "title": "BoxLang AI vs Agent Development Kit (ADK)",
        "url": "https://www.anchorterminal.com/compare/boxlang-ai-vs-google-adk"
      },
      {
        "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-google-adk.json",
        "title": "Claude Agent SDK vs Agent Development Kit (ADK)",
        "url": "https://www.anchorterminal.com/compare/claude-agent-sdk-vs-google-adk"
      },
      {
        "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-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-smolagents.json",
        "title": "CrewAI vs smolagents",
        "url": "https://www.anchorterminal.com/compare/crewai-vs-smolagents"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cursor-agent-sdk-vs-google-adk.json",
        "title": "Cursor Agent SDK vs Agent Development Kit (ADK)",
        "url": "https://www.anchorterminal.com/compare/cursor-agent-sdk-vs-google-adk"
      },
      {
        "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-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-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-guilds-run.json",
        "title": "Agent Development Kit (ADK) vs guilds.run",
        "url": "https://www.anchorterminal.com/compare/google-adk-vs-guilds-run"
      },
      {
        "json": "https://www.anchorterminal.com/compare/google-adk-vs-langgraph.json",
        "title": "Agent Development Kit (ADK) vs LangGraph",
        "url": "https://www.anchorterminal.com/compare/google-adk-vs-langgraph"
      },
      {
        "json": "https://www.anchorterminal.com/compare/google-adk-vs-llamaindex.json",
        "title": "Agent Development Kit (ADK) vs LlamaIndex Framework",
        "url": "https://www.anchorterminal.com/compare/google-adk-vs-llamaindex"
      },
      {
        "json": "https://www.anchorterminal.com/compare/google-adk-vs-mastra.json",
        "title": "Agent Development Kit (ADK) vs Mastra",
        "url": "https://www.anchorterminal.com/compare/google-adk-vs-mastra"
      },
      {
        "json": "https://www.anchorterminal.com/compare/google-adk-vs-microsoft-agent-framework.json",
        "title": "Agent Development Kit (ADK) vs Microsoft Agent Framework",
        "url": "https://www.anchorterminal.com/compare/google-adk-vs-microsoft-agent-framework"
      },
      {
        "json": "https://www.anchorterminal.com/compare/google-adk-vs-openai-agents-sdk.json",
        "title": "Agent Development Kit (ADK) vs OpenAI Agents SDK",
        "url": "https://www.anchorterminal.com/compare/google-adk-vs-openai-agents-sdk"
      },
      {
        "json": "https://www.anchorterminal.com/compare/google-adk-vs-pydantic-ai.json",
        "title": "Agent Development Kit (ADK) vs Pydantic AI",
        "url": "https://www.anchorterminal.com/compare/google-adk-vs-pydantic-ai"
      },
      {
        "json": "https://www.anchorterminal.com/compare/google-adk-vs-strands-agents.json",
        "title": "Agent Development Kit (ADK) vs Strands Agents",
        "url": "https://www.anchorterminal.com/compare/google-adk-vs-strands-agents"
      },
      {
        "json": "https://www.anchorterminal.com/compare/google-adk-vs-tradingagents.json",
        "title": "Agent Development Kit (ADK) vs TradingAgents",
        "url": "https://www.anchorterminal.com/compare/google-adk-vs-tradingagents"
      },
      {
        "json": "https://www.anchorterminal.com/compare/google-adk-vs-vercel-ai-sdk.json",
        "title": "Agent Development Kit (ADK) vs AI SDK",
        "url": "https://www.anchorterminal.com/compare/google-adk-vs-vercel-ai-sdk"
      },
      {
        "json": "https://www.anchorterminal.com/compare/guilds-run-vs-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": 16,
        "edge": "google-adk",
        "google-adk": 80,
        "key": "reliability",
        "name": "Reliability",
        "smolagents": 64,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 6,
        "edge": "google-adk",
        "google-adk": 87,
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "smolagents": 81,
        "weight": 13
      },
      {
        "by": 12,
        "edge": "google-adk",
        "google-adk": 80,
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "smolagents": 68,
        "weight": 13
      },
      {
        "by": 26,
        "edge": "google-adk",
        "google-adk": 92,
        "key": "security",
        "name": "Security \u0026 auth",
        "smolagents": 66,
        "weight": 14
      },
      {
        "by": 0,
        "edge": "",
        "google-adk": 60,
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "smolagents": 60,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 56,
        "edge": "google-adk",
        "google-adk": 90,
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "smolagents": 34,
        "weight": 7
      },
      {
        "by": 4,
        "edge": "google-adk",
        "google-adk": 69,
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "smolagents": 65,
        "weight": 7
      }
    ],
    "summary": "Agent Development Kit (ADK) scores 68.7 (B) on agent readiness against smolagents's 58.7 (C), and leads in 6 of 7 scored categories. Both do agent frameworks.",
    "tasks": null,
    "tutorials": [],
    "verdicts": {
      "google-adk": "Python, TypeScript, Go, Java and Kotlin, with tool confirmation and context compaction built in. Google has published six CVEs against ADK in 2026, three of them critical, one in tool confirmation itself, and minor 2.x releases keep carrying breaking changes.",
      "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/google-adk-vs-smolagents",
    "json": "https://www.anchorterminal.com/compare/google-adk-vs-smolagents.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/google-adk-vs-smolagents.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/google-adk-vs-smolagents.min.md"
  },
  "markdown": "Agent Development Kit (ADK) scores 68.7 (B) on agent readiness against smolagents's 58.7 (C), and leads in 6 of 7 scored categories. Both do agent frameworks.\n\n- Agent Development Kit (ADK): grade B, 68.7/100, rank #273 of 1510. Markdown https://www.anchorterminal.com/tools/google-adk.md · JSON https://www.anchorterminal.com/api/v1/tools/google-adk.json\n- smolagents: grade C, 58.7/100, rank #739 of 1510. 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### Agent Development Kit (ADK) (B)\n\nGood for: Teams on Google Cloud or working outside Python, and for anyone who wants approval, guardrail callbacks and evaluation in one framework.\n\nAhead on:\n- Reliability, 80 against 64\n- Schema \u0026 documentation, 87 against 81\n- Agent ergonomics, 80 against 68\n- Security \u0026 auth, 92 against 66\n- Maintenance \u0026 community, 90 against 34\n\nWatch for: Six CVEs in 2026, three of them critical, one in tool confirmation itself\n\n### smolagents (C)\n\nGood for: Small Python projects and research that want code-writing agents with minimal abstraction.\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: Agent Development Kit (ADK) +56\n\n- Agent Development Kit (ADK) (90): 2.13.0 on 2026-10-23 (30). 15 Python releases in the 90 days from 3 August across the 1.x and 2.x lines, from 2.6.2 to 2.13.0, the newest 1.x being 1.39.1 on 2026-08-27 (20). 300 open issues and 261 open pull requests per the 1 October check, and we couldn't see reply times (15). Python is current, @google/adk is at 2.4.0 on npm, the Go module at v1.9.0 (tagged 15 October) and the Java artefact at 1.13.0 (21 October) (15). CI passes per the 1 October check, and 2.7.0 fixed zizmor findings in the workflows (10).\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### Security \u0026 auth: Agent Development Kit (ADK) +26\n\n- Agent Development Kit (ADK) (92): We found no usage telemetry in the docs or the Python source, and capturing message content in traces is opt-in (30). Tool confirmation for human approval, extended to workflow tool nodes in 2.11.0 and to any workflow node through `require_confirmation` in 2.12.0, the docs say to always pass tool_filter to McpToolset, 2.12.0 limits the mutating /dev and agent builder endpoints of adk web to local clients by default, and sandboxed code execution is recommended for model-written code (20). Before-tool callbacks, an after_tool_callback that screens tool output since 2.12.0, plugins, a Model Armor plugin, an optional ToolCallIntegrityPlugin since 2.11.0, and a safety page that covers indirect prompt injection through tool results (15). OpenTelemetry traces with Cloud Trace and about 20 third-party integrations (15). SECURITY.md routes reports to Google's g.co/vulnz with a one-day triage target, per the 1 October check, not re-read on 1 November (the repository still has no SECURITY.md file and GitHub's security page answered 403). Google as CNA has published six 2026 CVEs with fixed versions, the newest on 23 and 28 October, but there are no repository advisories and no bounty is mentioned in the policy (12). Framework reading, so SOC 2 isn't scored.\n- smolagents (66): Framework reading (telemetry defaults, approvals, guardrails, sandboxing). No telemetry found in the source (25). No human approval hook beyond step callbacks; the local executor restricts imports but the guide says it isn't a security tool, and isolation needs a remote executor (10). The secure execution guide covers LLM-generated code risks, without prompt-injection guidance for tool output (7). OpenTelemetry tracing through OpenInference and run inspection (12). SECURITY.md with private reporting and CVE credit, and the remote-executor RCE was fixed in public, but two 2026 CVE records say the vendor didn't respond (12). 25+10+7+12+12 = 66.\n\n### Reliability: Agent Development Kit (ADK) +16\n\n- Agent Development Kit (ADK) (80): Official packages on PyPI (Requires-Python \u003e=3.11 since 2.12.0, constraint files for 3.11 to 3.15) and npm (20). The continuous-integration workflow passes on main, per the 1 October check, not re-read on 1 November (25). 300 open issues and 261 open pull requests, per the 1 October check, not re-read on 1 November (12). The changelog calls out breaking changes, but they keep shipping in minor releases of a post-1.0 package (2.6.0 on 2026-07-29 and 2.7.0 on 2026-08-13), 2.12.0 on 2026-10-13 dropped Python 3.10 with no line in its changelog, and 2.8.0 reverted an A2A guard that had broken every tool confirmation. On 8 October the changelog relabelled the 2.11.0 dev UI config change a bug fix and the 2.9.0 resumption changes behaviour changes. 2.13.0 (22 October) marks one more breaking change, the telemetry schema default, in a minor release (8). 2.12.0, past 1.0 (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### Agent ergonomics: Agent Development Kit (ADK) +12\n\n- Agent Development Kit (ADK) (80): An agent with one MCP server is about 15 lines with the built-in McpToolset, and tool_filter limits which tools load, with no dynamic filtering or deferred loading that we saw (20). RunConfig caps model calls per run, and the context compression page documents token-based and sliding-window compaction through EventsCompactionConfig, plus context caching (20). No exception reference or MCP error handling documented (5). Invocations are resumable, model calls take retry options, and 2.11.0 adds an abort_signal for graceful cancellation (20). An agent needs a name, a model and an instruction, in Python, TypeScript, Go, Java or Kotlin (15).\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### Schema \u0026 documentation: Agent Development Kit (ADK) +6\n\n- Agent Development Kit (ADK) (87): An API reference on adk.dev (25). llms.txt with about 250 entries and Markdown versions of each page (10). The docs explain the agent types and when to use workflow agents, but say little about when not to use ADK (15). Tools are typed functions, and McpToolset keeps the server's schemas (12). Examples throughout, but the MCP page has no error handling section and we found no exception reference (10). Dated changelog and release notes (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 | Agent Development Kit (ADK) | smolagents | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 80 | 64 | Agent Development Kit (ADK) +16 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 87 | 81 | Agent Development Kit (ADK) +6 |\n| Agent ergonomics | 13% (16.2 this run) | 80 | 68 | Agent Development Kit (ADK) +12 |\n| Security \u0026 auth | 14% (17.5 this run) | 92 | 66 | Agent Development Kit (ADK) +26 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 60 | 60 | even |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 90 | 34 | Agent Development Kit (ADK) +56 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 69 | 65 | Agent Development Kit (ADK) +4 |\n| Negative events | ≤15 | -12 | -6 | |\n| **Total** | | **68.7 · B** | **58.7 · C** | |\n\n## Facts side by side\n\n| Fact | Agent Development Kit (ADK) | smolagents |\n| --- | --- | --- |\n| Kind | Agent framework | Agent framework |\n| Vendor | Google | 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 | Apache-2.0 | Apache-2.0 |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| Last release | 2026-10-23 | 2026-05-29 |\n| Terms last updated | no document linked | 2022-09-15 |\n| Privacy policy last updated | 2026-10-01 | 2023-03-28 |\n| Customer content may train models | yes | 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 | 22k stars | 30k stars, 171k PyPI/wk |\n| Agent reviews | 3/5 (8) | none |\n\n## How the scores have moved\n\n### Agent Development Kit (ADK)\n\n- -5.0 on 1 November 2026 (BB to B): negative event\n- +0.1 on 27 October 2026: checklist\n- -1.1 on 17 October 2026: new evidence, negative event\n\n### smolagents\n\nNo score change since it was listed.\n\n## Verdicts\n\n**Agent Development Kit (ADK).** Python, TypeScript, Go, Java and Kotlin, with tool confirmation and context compaction built in. Google has published six CVEs against ADK in 2026, three of them critical, one in tool confirmation itself, and minor 2.x releases keep carrying breaking changes.\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### Agent Development Kit (ADK)\n\n1. Run Python 2.7.0 or later and Java 1.13.0 or later, which fix the adk web code-injection CVE, the tool-confirmation forgery and the Java dev server's cross-origin flaw\n2. Always pass tool_filter to McpToolset\n3. Pin a 2.x minor and read the changelog before each bump. 2.12.0 needs Python 3.11 or later, which its changelog doesn't say\n4. Set EventsCompactionConfig on the App for long sessions so context doesn't grow without limit\n5. Keep ADK Web off public interfaces\n6. Set `ADK_TELEMETRY_SCHEMA_VERSION_OPT_IN=otel_semconv_1_36` on 2.13.0 or later if dashboards or alerts read the `call_llm` span\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, Agent Development Kit (ADK) or smolagents?\n\nAgent Development Kit (ADK) scores 68.7 (B) on agent readiness against smolagents's 58.7 (C), and leads in 6 of 7 scored categories.\n\n### Are Agent Development Kit (ADK) and smolagents open source?\n\nYes. Agent Development Kit (ADK) is open source (Apache-2.0). smolagents is open source (Apache-2.0).\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/google-adk-vs-smolagents.json, and with the fewest tokens: https://www.anchorterminal.com/compare/google-adk-vs-smolagents.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"google-adk\", \"b\": \"smolagents\"}`. From a terminal: `anchor compare google-adk smolagents`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/google-adk.json and https://www.anchorterminal.com/api/v1/tools/smolagents.json\n\n## Other comparisons with Agent Development Kit (ADK) or smolagents\n\n- [AgentOS vs Agent Development Kit (ADK)](https://www.anchorterminal.com/compare/agentos-vs-google-adk.md)\n- [AgentOS vs smolagents](https://www.anchorterminal.com/compare/agentos-vs-smolagents.md)\n- [Agno vs Agent Development Kit (ADK)](https://www.anchorterminal.com/compare/agno-vs-google-adk.md)\n- [Agno vs smolagents](https://www.anchorterminal.com/compare/agno-vs-smolagents.md)\n- [BoxLang AI vs Agent Development Kit (ADK)](https://www.anchorterminal.com/compare/boxlang-ai-vs-google-adk.md)\n- [BoxLang AI vs smolagents](https://www.anchorterminal.com/compare/boxlang-ai-vs-smolagents.md)\n- [Claude Agent SDK vs Agent Development Kit (ADK)](https://www.anchorterminal.com/compare/claude-agent-sdk-vs-google-adk.md)\n- [Claude Agent SDK vs smolagents](https://www.anchorterminal.com/compare/claude-agent-sdk-vs-smolagents.md)\n- [CrewAI vs Agent Development Kit (ADK)](https://www.anchorterminal.com/compare/crewai-vs-google-adk.md)\n- [CrewAI vs smolagents](https://www.anchorterminal.com/compare/crewai-vs-smolagents.md)\n- [Cursor Agent SDK vs Agent Development Kit (ADK)](https://www.anchorterminal.com/compare/cursor-agent-sdk-vs-google-adk.md)\n- [Cursor Agent SDK vs smolagents](https://www.anchorterminal.com/compare/cursor-agent-sdk-vs-smolagents.md)\n- [Docker Agent vs Agent Development Kit (ADK)](https://www.anchorterminal.com/compare/docker-agent-vs-google-adk.md)\n- [Docker Agent vs smolagents](https://www.anchorterminal.com/compare/docker-agent-vs-smolagents.md)\n- [Agent Development Kit (ADK) vs guilds.run](https://www.anchorterminal.com/compare/google-adk-vs-guilds-run.md)\n- [Agent Development Kit (ADK) vs LangGraph](https://www.anchorterminal.com/compare/google-adk-vs-langgraph.md)\n- [Agent Development Kit (ADK) vs LlamaIndex Framework](https://www.anchorterminal.com/compare/google-adk-vs-llamaindex.md)\n- [Agent Development Kit (ADK) vs Mastra](https://www.anchorterminal.com/compare/google-adk-vs-mastra.md)\n- [Agent Development Kit (ADK) vs Microsoft Agent Framework](https://www.anchorterminal.com/compare/google-adk-vs-microsoft-agent-framework.md)\n- [Agent Development Kit (ADK) vs OpenAI Agents SDK](https://www.anchorterminal.com/compare/google-adk-vs-openai-agents-sdk.md)\n- [Agent Development Kit (ADK) vs Pydantic AI](https://www.anchorterminal.com/compare/google-adk-vs-pydantic-ai.md)\n- [Agent Development Kit (ADK) vs Strands Agents](https://www.anchorterminal.com/compare/google-adk-vs-strands-agents.md)\n- [Agent Development Kit (ADK) vs TradingAgents](https://www.anchorterminal.com/compare/google-adk-vs-tradingagents.md)\n- [Agent Development Kit (ADK) vs AI SDK](https://www.anchorterminal.com/compare/google-adk-vs-vercel-ai-sdk.md)\n- [guilds.run vs 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": "Agent Development Kit (ADK) vs smolagents",
        "url": ""
      }
    ],
    "description": "Agent Development Kit scores 68.7 (B) to smolagents's 58.7 (C) for agent frameworks. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Agent Development Kit (ADK) B 68.7",
      "smolagents C 58.7",
      "scores"
    ],
    "h1": "Agent Development Kit (ADK) vs smolagents",
    "image": "https://www.anchorterminal.com/assets/og/default.png",
    "path": "/compare/google-adk-vs-smolagents",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Agent Development Kit vs smolagents for AI agents (2026)",
    "toc": null,
    "updated": "2026-11-07",
    "url": "https://www.anchorterminal.com/compare/google-adk-vs-smolagents"
  },
  "tokens": {
    "markdown": 4500,
    "slim": 2380
  },
  "version": 1
}
