Google Agent Development Kit(ADK)/ Gemini CLI


1. 介绍

1.1. 双形态定位

Google 在本组文档中有两个相关但定位不同的形态,必须分开讨论:

  • Agent Development Kit(ADK):面向生产多智能体系统的代码优先框架,2025-04-09 于 Google Cloud Next 2025 发布,Apache 2.0 开源,覆盖 Python、TypeScript、Go、Java 四种语言。官方定位是「让智能体开发更像软件开发」。
  • Gemini CLI:面向终端的开源智能体工具,2025-06-25 发布,Apache 2.0,基于 ReAct 循环,直接对标 Claude Code 与 Codex CLI。

二者的关系类似于 Anthropic 的 Claude Agent SDK 与 Claude Code CLI——但又不完全对应:ADK 是独立框架而非 Gemini CLI 的库化封装。

ADK 的关键差异化在于:它同时提供确定性工作流智能体与 LLM 驱动的动态路由,而不是要求用户在「刚性流水线」与「完全动态」之间二选一。

1.2. 基本信息卡

项目内容置信度
开发商Google高(官方)
ADK 发布时间2025-04-09(Google Cloud Next 2025,与 A2A 协议同日)高(官方)
Gemini CLI 发布时间2025-06-25高(新华社 / 9to5Google)
开源 / 许可证开源,Apache 2.0高(官网 / pkg.go.dev)
支持语言Python、TypeScript、Go、Java高(官网)
模型绑定针对 Gemini 优化,但模型无关;经 LiteLLM 可接 OpenAI / Anthropic / Cohere / Mistral / Bedrock 等高(官网 + 第三方评测)
部署目标本地、Vertex AI Agent Engine、Cloud Run、GKE、Docker高(官网)
最新版本Python 有第三方口径称稳定版 v1.28.1;Java / Go 有 0.6.0 记录;版本随语言与发布节奏差异大,标 低—中
Gemini CLI 免费额度个人 Google 账号:60 次请求 / 分钟、1,000 次请求 / 天(Gemini 2.5 Pro,1M 上下文)高(官方)
Gemini CLI 付费路径Google AI Studio / Vertex AI API key 按量计费;组织级可用 Code Assist Standard / Enterprise高(官方)

1.3. 发展时间线

时间事件来源等级
2025-04-09Google Cloud Next 2025 发布 ADK;同日发布 A2A 协议A(官方)
2025-06-23Google 将 A2A 捐赠给 Linux FoundationA(官方)
2025-06-25Gemini CLI 发布,Apache 2.0,含免费额度A(官方 + 新华社)
2025 年 I/OADK 与 A2A、Agent Engine 同步更新B
2026 年(进行中)ADK 2.0 开发线:加入显式图工作流B

1.4. 在 AI Harness 体系中的位置

ADK 是本组七个平台中六层覆盖最完整的一个,尤其 L4(Session / Memory / Artifact 三件套)与 L5(内置评估框架)明显强于同类 SDK。

但它的定位仍然是 Agent Framework(Harness 的子集),不是 Agent Platform:

  • 不提供 UI 租户体系、计费、多租户管理(Dev UI 只用于本地调试);
  • 治理层(L6)依赖回调与凭据服务,没有开箱即用的 RBAC 与审批队列;
  • 部署与运维能力由 Vertex AI / Cloud Run 等 Google Cloud 产品承接。

Gemini CLI 则属于「Harness 在终端场景的垂直集成形态」,与参数卡中的 AI IDE 类别相邻。

2. 名词解释

术语英文/缩写释义
ADKAgent Development KitGoogle 开源的多智能体开发框架,代码优先,覆盖 Python / TypeScript / Go / Java
AgentAgent基本执行单元:含模型、指令(instruction / global_instruction)、工具、可选子智能体
LlmAgentLlmAgent由 LLM 驱动的推理型智能体,可通过 transfer 动态路由到子智能体
SequentialAgentSequentialAgent确定性工作流智能体,按序执行子智能体,构成可预测流水线
ParallelAgentParallelAgent并发执行子智能体的工作流智能体
LoopAgentLoopAgent迭代执行子智能体的工作流智能体,带 max_iterations 上限
Sub-agentsub_agents以层次结构组合的专门化智能体,父智能体负责路由与委派
RunnerRunner运行时组件:调用智能体、管理会话、分发工具调用;ADK 的执行是事件驱动
EventEvent每一次用户消息、工具调用、LLM 响应都以事件形式流经共享事件总线
SessionSession一次会话的状态容器,含事件历史与 state 字典
SessionServiceSessionService会话持久化抽象:内存 / 数据库 / Vertex AI 等可替换后端
MemoryServiceMemoryService长期记忆服务,提供 search_memoryadd_session_to_memory
ArtifactArtifact工件(文件、二进制产物)管理服务,提供 save_artifact / load_artifact / list_artifacts
ToolTool类型化函数或方法;ADK 依据类型注解与 docstring 自动生成函数调用 schema
FunctionToolFunctionTool普通函数工具
LongRunningFunctionToolLongRunningFunctionTool长耗时函数工具:启动外部任务、返回操作 id、暂停运行、由应用恢复
McpToolsetMcpToolsetMCP 工具集接入器,一次导入即可连接任意 MCP 服务器
AgentEvaluatorAgentEvaluator内置评估器,可对最终响应质量与逐步执行轨迹双重评分
EvalsetEvalset预定义测试用例集,用于系统性评估智能体性能
A2AAgent2AgentGoogle 发起的智能体互操作协议,使用标准化 Agent Card 做能力发现、JSON-RPC 传递消息
Agent CardAgent CardA2A 中的能力发现载体
Agent EngineVertex AI Agent EngineGoogle 托管的智能体运行时,ADK 一键部署目标
GEMINI.mdGEMINI.mdGemini CLI 的项目级系统提示词文件,用于定制指令
ContextContext运行时上下文对象,聚合 session、state、artifact、memory、credential 等能力

3. 功能说明

3.1. 五类智能体与两种编排取向

智能体类型控制流典型用途可预测性
LlmAgentLLM 驱动,可动态 transfer需要自适应决策的根节点
SequentialAgent严格顺序可预测流水线:抽取 → 校验 → 生成
ParallelAgent并发多源检索、多路分析中高
LoopAgent迭代,max_iterations 封顶反思循环、重试直到满足判据
层次组合以上任意嵌套3~6 个专门智能体的中等复杂度系统取决于组合方式

这一设计的价值在于:同一框架内提供了「确定性」与「自适应」两个档位,团队可以按节点重要性混用。相比之下,OpenAI Agents SDK 只有 handoff 一种动态机制,LangGraph 则是显式图优先。

3.2. 工具生态

ADK 的工具分为五类:

  1. 预构建工具:Google Search、Vertex AI Search、代码执行沙箱(Code Executor);
  2. 自定义函数工具:普通 Python / Go / Java / TS 函数,框架从类型注解与 docstring 自动生成 schema;
  3. 长耗时函数工具LongRunningFunctionTool,支持启动外部任务 → 返回操作 id → 暂停运行 → 应用侧恢复;
  4. MCP 工具:通过 McpToolset 一次接入任意 MCP 服务器;
  5. 第三方框架适配器:可通过 LangchainTool / CrewaiTool 直接消费 LangChain 与 CrewAI 的工具。

第五点是 ADK 的一个容易被低估的优势:它不要求生态从零重建,可以复用既有框架资产。

公开评测指出的一项限制:部分版本存在「单个智能体只能挂一个内置工具」的约束,需 。

3.3. Session / Memory / Artifact 三件套

这是 ADK 在 L4 层最完整的部分,三个服务职责分离明确:

服务管理对象关键 API生命周期
SessionService会话事件历史 + state 字典session / state单次会话
MemoryService跨会话语义记忆search_memoryadd_session_to_memory跨会话
ArtifactService文件与二进制工件save_artifactload_artifactlist_artifactsget_artifact_version跨会话,带版本

三者通过 InvocationContextContext 注入智能体,开发者通过 context.state 读写状态、通过 context.save_artifact() 落盘工件。

这种「会话态 / 长期记忆 / 工件」三分的设计,比单纯把记忆塞进向量库更接近工程实际。

3.4. Runner 与事件驱动执行

ADK 最独特的设计是事件驱动:每一次用户消息、工具调用、LLM 响应都作为事件流经共享事件总线,由 Runner 统一调度。

带来的收益:

  • 编排逻辑与智能体行为清晰分离;
  • 执行轨迹在每一步都可检查;
  • 天然支持流式与实时(Live)场景(run_liveLiveRequestQueue)。

RunConfig 提供丰富的运行期开关,包括 context_window_compression(上下文窗口压缩)、max_llm_callshistory_configinclude_thoughts_from_other_agents 等。

3.5. 回调体系

ADK 的回调覆盖面在本组平台中最广:

回调层级用途
before_agent_callback / after_agent_callback智能体进入 / 退出智能体时的拦截与清理
before_model_callback / after_model_callback模型请求改写、响应过滤、缓存
before_tool_callback / after_tool_callback工具参数校验、结果清洗、审计
on_model_error_callback / on_tool_error_callback错误重试与降级
before_agent_callback(全局)/ global_instruction应用跨智能体统一约束

回调是 ADK 承担 L6 治理职责的主要载体。

3.6. 内置评估框架

ADK 提供 AgentEvaluator.evaluate(),特点是双重评分

  1. 对最终响应质量评分;
  2. 对逐步执行轨迹评分。

配合 evalsets(预定义测试用例集),可把「每次提交跑一遍评估、通过率达标才发布」做成工程惯例。第三方评测认为这使 ADK 在 3~6 个专门智能体的中等复杂度系统中抽象层次「接近正确」。

同时也存在已知短板:子智能体的单元测试支持较弱

3.7. 部署路径与 Dev UI

  • 本地adk web / adk run / Dev UI 调试;
  • Vertex AI Agent Engine:托管运行时,一条命令部署;
  • Cloud Run / GKE / Docker:容器化后自建基础设施;
  • A2A 服务器launcher/web/a2a 子启动器提供 A2A 能力;
  • REST APIlauncher/web/api 子启动器。

3.8. Gemini CLI 的能力与问题

能力

  • ReAct 循环:读 / 写文件、执行 shell、联网检索;
  • 内置工具:lsread-fileread-many-filesfind-filesgrepeditwrite-fileshellweb-fetchweb-searchmemoryTool
  • MCP 服务器支持(本地与远程);
  • 项目级 GEMINI.md 定制系统提示词;
  • 人工确认:默认在执行任何潜在破坏性操作前请求确认(允许一次 / 总是允许 / 拒绝);
  • 多层沙箱:macOS Seatbelt、Docker / Podman 容器、代理。

公开反映的问题(来自用户与评测汇总,非官方口径,标 ):

问题表现
激进限流429 错误常见,付费订阅者亦有报告
静默降级触及限额时从 Gemini Pro 静默降级到 Flash,输出质量下降而无提示
编辑可靠性存在覆写整个文件而非精确编辑的行为
稳定性有报告称陷入循环或停滞数分钟
认证脆弱无头服务器、部分 Workspace 域名、远程 shell 上认证易失败

4. 平台架构

图 4-1|Google ADK 分层架构:从智能体定义到互操作部署

Google ADK 分层架构(五层栈 · 事件驱动运行时) 信息截止 2026-09-12 · 示意:基于本文分析绘制 应用层 · 你的智能体定义 root_agent = LlmAgent / SequentialAgent / ParallelAgent / LoopAgent 以上智能体可任意层次嵌套,组合多智能体系统 调用 ADK 运行时 · Runner 事件总线调度(本图重点) 编排层 动态路由·顺序/并行/循环 回调层 agent/model/tool/error 上下文层 state/branch/node_path 配置层 压缩/max_llm_calls 注入上下文 服务层 · 可替换后端(本组 L4 最强) SessionService · MemoryService · ArtifactService · CredentialService 会话历史 + state · 跨会话记忆 · 带版本工件 · 凭据存取 存取 工具层 · 五类工具生态 预构建(Google Search / Code Exec)· 自定义函数 · 长耗时函数 McpToolset · LangchainTool / CrewaiTool 适配器 · 类型注解自动生成 schema 暴露/部署 互操作与部署 A2A · MCP · OpenAPI 三协议 · 本地 / Agent Engine / Cloud Run / GKE / Docker 结构解读:事件驱动 Runner 是运行时核心;确定性工作流与动态路由在同一框架内并存,构成 ADK 的关键差异化。

数据来源:基于本文分析绘制的示意图。

4.1. ADK 分层架构

┌──────────────────────────────────────────────────────────┐
│ 应用层:你的智能体定义                                      │
│  root_agent = LlmAgent / SequentialAgent / ParallelAgent /  │
│  LoopAgent(可任意层次嵌套)                                │
└──────────────────────────────────────────────────────────┘
                          │
┌──────────────────────────────────────────────────────────┐
│ ADK 运行时                                                 │
│  Runner(事件总线调度)                                     │
│  ├─ 编排层:transfer 动态路由 / 顺序 / 并行 / 循环           │
│  ├─ 回调层:agent / model / tool / error 八类回调            │
│  ├─ 上下文层:InvocationContext(state / branch / node_path)│
│  └─ 配置层:RunConfig(压缩 / max_llm_calls / history)      │
└──────────────────────────────────────────────────────────┘
                          │
┌──────────────────────────────────────────────────────────┐
│ 服务层(可替换后端)                                         │
│  SessionService(内存 / DB / Vertex AI)                    │
│  MemoryService(search_memory / add_session_to_memory)     │
│  ArtifactService(GCS / 本地,带版本)                       │
│  CredentialService(load_credential / save_credential)     │
└──────────────────────────────────────────────────────────┘
                          │
┌──────────────────────────────────────────────────────────┐
│ 工具层                                                     │
│  预构建(Google Search / Vertex AI Search / Code Exec)     │
│  自定义函数 · LongRunningFunctionTool · McpToolset          │
│  LangchainTool / CrewaiTool 适配器                          │
└──────────────────────────────────────────────────────────┘
                          │
┌──────────────────────────────────────────────────────────┐
│ 互操作与部署                                                │
│  A2A(Agent Card + JSON-RPC)· MCP · OpenAPI                │
│  本地 / Agent Engine / Cloud Run / GKE / Docker             │
└──────────────────────────────────────────────────────────┘

4.2. 事件驱动执行流

  1. 应用调用 Runner,传入用户消息与 session;
  2. Runner 创建 InvocationContext,装配 session / state / services;
  3. 进入 root_agent:触发 before_agent_callback
  4. 若需模型调用:触发 before_model_callback → 调用模型 → after_model_callback
  5. 若模型返回工具调用:触发 before_tool_callback → 执行工具 → after_tool_callback → 结果作为新事件回灌;
  6. 若为工作流智能体:按 Sequential / Parallel / Loop 语义调度子智能体,每个子智能体递归执行 3~5 步;
  7. 完成:触发 after_agent_callbackoutput_key 可把输出写入 state 供后续节点读取。

4.3. Gemini CLI 架构

终端(交互式 / 非交互式脚本调用)
        │
Gemini CLI 主进程(Node.js 18+)
  ├─ ReAct 循环:推理 → 选工具 → 执行 → 观察 → 重复
  ├─ 内置工具:ls / read-file / find-files / grep / edit /
  │            write-file / shell / web-fetch / web-search
  ├─ MCP 客户端(本地 / 远程服务器)
  ├─ GEMINI.md 项目级指令加载
  ├─ 人工确认(允许一次 / 总是允许 / 拒绝)
  └─ 沙箱层(macOS Seatbelt / Docker / Podman / 代理)
        │
云端推理:Gemini 2.5 Pro(1M 上下文)

5. Harness 设计

5.1. 六层能力总览

名称实现强度判断依据
L1上下文工程中强context_window_compressioninclude_contentsglobal_instruction vs static_instruction、Artifact 外置上下文
L2工具与执行五类工具 + Code Executor 沙箱 + 第三方框架适配器
L3编排与控制五类智能体 + 层次组合;确定性工作流与动态路由并存;2.0 前无显式图
L4记忆与状态强(本组最强)Session / Memory / Artifact 三服务职责分离,工件带版本
L5评估与观测AgentEvaluator 双重评分(最终响应 + 逐步轨迹)+ evalsets;可接入 Cloud Trace
L6治理与安全八类回调 + 凭据服务 + 沙箱;无内建 RBAC / 审批队列 / 金额级预算护栏

5.2. L1 上下文工程层

ADK 在 L1 上的手段相对朴素但够用:

  • include_contents 控制是否把历史内容带入本次调用;
  • RunConfig.context_window_compression 提供上下文窗口压缩配置;
  • global_instruction(跨智能体全局指令)与 static_instruction(静态指令)分离,避免重复注入;
  • Artifact 机制把大对象外置为工件,只在上下文中保留引用——与 Claude Agent SDK 的「文件系统即上下文」思路一致。

短板:没有像 Skills 那样的渐进式披露能力,也没有检索排序原语;RAG 需靠 Vertex AI Search 或自建。

5.3. L2 工具与执行层

  • 注册:类型化函数自动 schema 化,工程负担低;
  • 沙箱:提供 Code Executor 沙箱(ADK)与多层沙箱(Gemini CLI:Seatbelt / Docker / Podman),是本组中沙箱能力较明确的平台;
  • 互操作:MCP + A2A + OpenAPI 三协议并行;
  • 生态复用:LangchainTool / CrewaiTool 适配器可消费第三方框架工具。

已知限制:公开评测提到「单个智能体只能挂一个内置工具」的约束,以及严格的文件 / 目录约定,需 。

5.4. L3 编排与控制层

这是 ADK 与 OpenAI Agents SDK 分野最明显的一层。

ADK 在同一框架内提供两种编排取向:

取向载体可预测性适用节点
确定性SequentialAgent / ParallelAgent / LoopAgent关键业务节点、需回归断言的节点
自适应LlmAgent + transfer 动态路由入口分诊、开放式探索

这让团队可以在同一个系统内按节点混合,而不必全盘选择一端。

灵活性 ↔ 可预测性的张力因此被部分化解,但也带来两个新问题:

  1. 约定强、灵活性受损:ADK 有严格的文件 / 目录约定(智能体必须以特定结构组织),这提高了可维护性,却降低了即兴重构的自由度;
  2. 显式图缺失:在 ADK 2.0 的图工作流落地前,复杂条件分支仍需靠层次嵌套表达,可读性弱于 LangGraph 的显式图。

LoopAgent.max_iterations 是 L3 侧唯一的迭代硬上限,可作为防失控的兜底。

5.5. L4 记忆与状态层

本组七平台中,ADK 的 L4 设计最完整:

维度载体说明
会话态Session + state事件历史 + 键值状态,output_key 可把节点输出写入 state
长期记忆MemoryServiceadd_session_to_memory 把会话沉淀为记忆,search_memory 检索
工件ArtifactService带版本的工件管理,get_artifact_version 支持版本回溯
分支Context.branch事件分支上下文,支持多路径
凭据CredentialServiceload_credential / save_credential,跨会话保存凭据

这种分层使「记住什么」成为可配置的工程决策,而不是单一向量库的黑箱。

5.6. L5 评估与观测层

ADK 是少数把评估做成框架内置能力的方案:

  • AgentEvaluator.evaluate() 对最终响应与逐步轨迹双重评分
  • evalsets 支持把评估固化为可重复执行的资产;
  • 事件驱动模型天然产出可检查的执行轨迹;
  • 可接入 Google Cloud Trace(推测,未获官方文档直接确认,标 )。

「逐步轨迹评分」这一项尤其关键——它意味着评估不只看结果对错,还看过程是否合理。这正是 Harness 相对裸模型调用的本质增值点。

已知短板:子智能体的单元测试支持较弱。

5.7. L6 治理与安全层

治理能力实现方式强度
行为拦截八类回调(agent / model / tool / error)中强
执行隔离Code Executor 沙箱;Gemini CLI 多层沙箱中强
凭据管理CredentialService + request_credential
长耗时操作确认LongRunningFunctionTool + request_confirmation
迭代上限LoopAgent.max_iterationsmax_llm_calls
成本硬止损无金额级预算参数缺失
RBAC / 多租户无内建缺失
审计报表依赖回调自建

开放性 ↔ 治理的张力在 A2A 上体现得最典型:A2A 让 ADK 智能体可以与其他框架、其他组织的智能体互通(Microsoft Azure AI Foundry、SAP Joule、Box、Auth0、Zoom 均已支持),但 Agent Card 的能力发现机制本身就是攻击面——一个对外宣告能力的智能体,同时也在对外宣告可被探测的接口。截至检索时 A2A 处于 0.2 版本,成熟度仍有限。

5.8. 三条内在张力的具体表现

张力在本平台的体现缓解手段
灵活性 ↔ 可预测性确定性工作流与动态路由并存,但严格目录约定 + 缺显式图关键节点用 Sequential / Loop + max_iterations;入口用 LlmAgent 分诊;等待 ADK 2.0 图工作流
开放性 ↔ 治理A2A + MCP + OpenAPI 三协议打开互操作;Agent Card 能力发现即攻击面回调拦截;A2A 仅对授信组织开放;沙箱隔离
成本 ↔ 深度LoopAgent 迭代与并行智能体放大 token 消耗;无金额级护栏LoopAgent.max_iterationsmax_llm_calls;Gemini CLI 利用免费额度做探索、付费 key 做生产

6. 实际案例

案例一:Google 内部产品同源验证

Google 公开表示,ADK 是支撑其自有产品的框架——包括 Agentspace 与 Customer Engagement Suite 中的智能体。这一点的价值在于「内部先跑通再开源」:ADK 解决的不是社区愿望清单上的通用问题,而是 Google 团队实际遇到的问题(Vertex AI 托管、会话连续性、跨轮记忆、可接入 Cloud Trace 的观测、高并发扩展)。该表述出自官方仓库说明,未见第三方独立审计的量化数据。

案例二:Gemini CLI 的规模验证

Gemini CLI 在发布后不到一年内 GitHub stars 超过 10 万,是同类终端智能体中增长最快的项目之一;其免费额度(60 次 / 分钟、1,000 次 / 天,Gemini 2.5 Pro + 1M 上下文)被官方称为「业界最大额度」。star 数来自第三方目录站,非官方口径,标 。

案例三:A2A 生态采纳

A2A 协议已获 Microsoft Azure AI Foundry、SAP Joule、Box、Auth0、Zoom 等厂商支持。这是跨组织智能体网络可行性的早期信号,但该能力「在今天的意义小于十二个月后的意义」。

未检索到公开量化数据的部分:截至检索日期 2026-09-12,未检索到以 ADK 为底座的第三方企业落地量化效果数据(如成本下降、任务成功率、人力替代率)。上述案例均未包含可验证的量化指标,此处如实标注,不做补全。

7. 总结

7.1. 优势

  1. 六层覆盖最完整:本组七个平台中,唯一在 L4 与 L5 同时达到「强」的方案。
  2. 编排双取向:确定性工作流与动态路由同框架混用,可按节点选择可预测性档位。
  3. 事件驱动设计:编排逻辑与智能体行为分离,轨迹每步可检查。
  4. 评估内置AgentEvaluator 支持最终响应与逐步轨迹双重评分,工程化评估门槛低。
  5. 多语言:Python / TypeScript / Go / Java 四语言覆盖,适配不同技术栈团队。
  6. 生态复用:LangchainTool / CrewaiTool 适配器避免生态从零重建。
  7. 模型无关:针对 Gemini 优化但可经 LiteLLM 接其他厂商模型。

7.2. 劣势

  1. Google Cloud 绑定倾向:最佳实践路径高度围绕 Vertex AI / Cloud Run,基础设施无关的项目吸引力下降。
  2. 约定严格:严格的文件 / 目录约定降低灵活性与即兴重构空间。
  3. 无显式图:ADK 2.0 图工作流落地前,复杂分支可读性弱于 LangGraph。
  4. L6 不完整:无内建 RBAC、审批队列、金额级成本护栏。
  5. 子智能体单测弱:公开评测明确指出的短板。
  6. Gemini CLI 稳定性争议:限流、静默降级、覆写式编辑、认证脆弱等问题被反复报告(第三方口径)。

7.3. 适用边界

场景是否适用理由
已在 Google Cloud 上的生产多智能体适用部署路径最短,Agent Engine 承接运维
需要跨会话记忆与工件版本的系统适用L4 三件套职责分离
需要把评估做成 CI 门禁的团队适用AgentEvaluator + evalsets
需要跨组织智能体互通适用(早期)A2A 原生支持,但协议仍处 0.2
基础设施无关 / 多云中立项目需权衡最佳实践路径围绕 GCP
需要开箱即用租户与计费不适用ADK 是 Framework 不是 Platform
需要金额级成本硬止损不适用无对应参数

7.4. 选型建议

  • 若团队已在 Google Cloud 上,且需要生产级多智能体编排,ADK 是本组中最均衡的选择。
  • 若团队首要诉求是最完整的可观测与评估闭环,可参考 LangGraph + LangSmith(详见 04-langgraph.md),但 ADK 的评估是框架内置、成本更低。
  • 若团队需要零代码 / 业务人员参与搭建,应选 Agent Platform(详见 05-dify.md06-coze.md)。
  • 采用 ADK 时必须自建的两项:金额级预算护栏、审计报表。

信息缺口声明

  1. 各语言版本精确版本号:Python 有第三方口径称 v1.28.1,Java / Go 有 0.6.0 记录,但未与官方发布页逐项核对,标 。
  2. ADK 2.0 图工作流:仅见第三方文章提及「在研」,未获官方路线图确认,其功能集与 GA 时间标 。
  3. 「单智能体单内置工具」限制:来自第三方评测,未与官方文档交叉验证,标 。
  4. Cloud Trace 集成:由事件驱动与 Google Cloud 生态推测,未获官方文档直接确认,标 。
  5. A2A 当前版本与安全模型:第三方称协议处于 0.2,未与 Linux Foundation 官方仓库核对;其认证与授权机制未做专项检索。
  6. Gemini CLI star 数与问题反馈:star 数来自第三方目录站;限流 / 静默降级 / 覆写编辑等问题来自用户与评测汇总,均标 。
  7. 企业落地量化数据:未检索到以 ADK 为底座的可验证第三方企业效果数据,未做补全。
  8. 定价细节:ADK 框架本身免费,但 Vertex AI Agent Engine 与 Gemini 模型的具体计费未在本次检索中取得官方价目,标 。

8. 参考资料

  1. Agent Development Kit 官方文档(中文站)— Google。https://adk.wiki
  2. Agent Development Kit (Python) API Reference — Google。https://adk.dev/api-reference/python/
  3. Agent Development Kit (ADK) for Go — pkg.go.dev。https://pkg.go.dev/google.golang.org/adk
  4. Google ADK Review: The Agent Framework for Gemini — Awesome Agents。https://awesomeagents.ai/reviews/review-google-adk
  5. What is Google ADK? The Agent Development Kit Explained for 2026 — FutureAGI。https://futureagi.com/blog/what-is-google-adk-2026/
  6. Google unveils open-source Gemini CLI — Xinhua, 2025-06-26。https://www.news.cn/english/20250626/db3b06bf72604b5ab029616134bf59ed/c.html
  7. Gemini CLI brings Google's AI agent to your terminal for free — 9to5Google, 2025-06-25。https://9to5google.com/2025/06/25/google-gemini-cli/
  8. Gemini CLI Free Open-Source AI Agent — Belitsoft, 2025-06-25。https://belitsoft.com/news/gemini-cli-free-20250625
  9. Google Open Source Blog(A2A 捐赠 Linux Foundation)— Google, 2025-06。https://opensource.googleblog.com/
  10. R01-概述检索报告(ADK 编排原语、A2A 时间线)— 本项目内部检索报告。
  11. 项目参数卡 v1.0(六层能力模型与概念边界)— 本项目内部基准文件。

Google Agent Development Kit(ADK)/ Gemini CLI

1. Introduction

1.1. Dual-Form Positioning

Google has two related but differently-positioned forms in this group of documents, and they must be discussed separately:

  • Agent Development Kit (ADK): a code-first framework for production multi-agent systems, released on 2025-04-09 at Google Cloud Next 2025, open-source under Apache 2.0, covering four languages: Python, TypeScript, Go, and Java. Google's official positioning is "make agent development more like software development."
  • Gemini CLI: an open-source agent tool for the terminal, released on 2025-06-25, Apache 2.0, based on the ReAct loop, directly competing with Claude Code and Codex CLI.

The relationship between the two is similar to Anthropic's Claude Agent SDK and Claude Code CLI — but not exactly parallel: ADK is a standalone framework, not a library wrapper around Gemini CLI.

ADK's key differentiator is that it simultaneously provides deterministic workflow agents and LLM-driven dynamic routing, rather than forcing users to choose between a "rigid pipeline" and "fully dynamic" approach.

1.2. Fact Sheet

ItemContentConfidence
DeveloperGoogleHigh (official)
ADK release date2025-04-09 (Google Cloud Next 2025, same day as the A2A protocol)High (official)
Gemini CLI release date2025-06-25High (Xinhua / 9to5Google)
Open source / licenseOpen source, Apache 2.0High (official site / pkg.go.dev)
Supported languagesPython, TypeScript, Go, JavaHigh (official site)
Model bindingOptimized for Gemini but model-agnostic; can connect to OpenAI / Anthropic / Cohere / Mistral / Bedrock etc. via LiteLLMHigh (official site + third-party reviews)
Deployment targetsLocal, Vertex AI Agent Engine, Cloud Run, GKE, DockerHigh (official site)
Latest versionPython has third-party reports of stable version v1.28.1; Java / Go have 0.6.0 records; version varies greatly by language and release cadence, marked [To be verified]Low–Medium
Gemini CLI free quotaPersonal Google account: 60 requests / minute, 1,000 requests / day (Gemini 2.5 Pro, 1M context)High (official)
Gemini CLI paid pathGoogle AI Studio / Vertex AI API key billed on usage; organization-level Code Assist Standard / Enterprise availableHigh (official)

1.3. Development Timeline

DateEventSource Level
2025-04-09Google Cloud Next 2025 released ADK; the A2A protocol was released the same dayA (official)
2025-06-23Google donated A2A to the Linux FoundationA (official)
2025-06-25Gemini CLI released, Apache 2.0, with a free quotaA (official + Xinhua)
2025 I/OADK updated in tandem with A2A and Agent EngineB
2026 (in progress)ADK 2.0 development line: adding explicit graph workflowsB

1.4. Position in the AI Harness System

ADK has the most complete six-layer coverage among the seven platforms in this group, with L4 (the Session / Memory / Artifact trio) and L5 (built-in evaluation framework) notably stronger than comparable SDKs.

But its positioning is still Agent Framework (a subset of Harness), not Agent Platform:

  • It does not provide a UI tenant system, billing, or multi-tenant management (Dev UI is only for local debugging);
  • The governance layer (L6) relies on callbacks and credential services, with no out-of-the-box RBAC or approval queues;
  • Deployment and operations capabilities are carried by Google Cloud products such as Vertex AI / Cloud Run.

Gemini CLI, by contrast, belongs to "Harness's vertically-integrated form in the terminal scenario," adjacent to the AI IDE category in the parameter card.

2. Glossary

TermEnglish / AbbreviationDefinition
ADKAgent Development KitGoogle's open-source multi-agent development framework, code-first, covering Python / TypeScript / Go / Java
AgentAgentBasic execution unit: contains a model, instructions (instruction / global_instruction), tools, and optional sub-agents
LlmAgentLlmAgentReasoning agent driven by an LLM, can dynamically route to sub-agents via transfer
SequentialAgentSequentialAgentDeterministic workflow agent that executes sub-agents in sequence, forming a predictable pipeline
ParallelAgentParallelAgentWorkflow agent that executes sub-agents concurrently
LoopAgentLoopAgentWorkflow agent that iterates sub-agents, with a max_iterations cap
Sub-agentsub_agentsSpecialized agents combined in a hierarchy; the parent agent handles routing and delegation
RunnerRunnerRuntime component: invokes agents, manages sessions, dispatches tool calls; ADK execution is event-driven
EventEventEvery user message, tool call, and LLM response flows through the shared event bus as an event
SessionSessionState container for a single session, containing the event history and a state dict
SessionServiceSessionServiceSession persistence abstraction: replaceable backends such as in-memory / database / Vertex AI
MemoryServiceMemoryServiceLong-term memory service providing search_memory and add_session_to_memory
ArtifactArtifactArtifact (file, binary output) management service providing save_artifact / load_artifact / list_artifacts
ToolToolTyped function or method; ADK auto-generates the function-calling schema from type annotations and the docstring
FunctionToolFunctionToolPlain function tool
LongRunningFunctionToolLongRunningFunctionToolLong-running function tool: starts an external task, returns an operation id, pauses, and is resumed by the application
McpToolsetMcpToolsetMCP toolset adapter; a single import connects to any MCP server
AgentEvaluatorAgentEvaluatorBuilt-in evaluator that can double-score both final response quality and step-by-step execution traces
EvalsetEvalsetPredefined set of test cases for systematically evaluating agent performance
A2AAgent2AgentGoogle-initiated agent interoperability protocol that uses a standardized Agent Card for capability discovery and JSON-RPC for messaging
Agent CardAgent CardCapability-discovery carrier in A2A
Agent EngineVertex AI Agent EngineGoogle's managed agent runtime, a one-click deployment target for ADK
GEMINI.mdGEMINI.mdGemini CLI's project-level system-prompt file for custom instructions
ContextContextRuntime context object that aggregates capabilities such as session, state, artifact, memory, and credential

3. Feature Description

3.1. Five Agent Types and Two Orchestration Orientations

Agent TypeControl FlowTypical UsePredictability
LlmAgentLLM-driven, can dynamically transferRoot nodes requiring adaptive decisionsLow
SequentialAgentStrict sequencePredictable pipeline: extract → validate → generateHigh
ParallelAgentConcurrentMulti-source retrieval, multi-path analysisMedium–High
LoopAgentIterative, capped by max_iterationsReflection loops, retry until criteria are metMedium
Hierarchical combinationAny nesting of the aboveMedium-complexity systems of 3~6 specialized agentsDepends on the combination

The value of this design is that a single framework provides both a "deterministic" and an "adaptive" gear, so teams can mix them by node importance. By contrast, the OpenAI Agents SDK has only one dynamic mechanism — handoff — while LangGraph is explicit-graph-first.

3.2. Tool Ecosystem

ADK's tools fall into five categories:

  1. Pre-built tools: Google Search, Vertex AI Search, and a code-execution sandbox (Code Executor);
  2. Custom function tools: plain Python / Go / Java / TS functions, for which the framework auto-generates the schema from type annotations and the docstring;
  3. Long-running function tools: LongRunningFunctionTool, supporting start external task → return operation id → pause → resume from the application side;
  4. MCP tools: connect any MCP server with a single McpToolset import;
  5. Third-party framework adapters: consume LangChain and CrewAI tools directly via LangchainTool / CrewaiTool.

The fifth point is an easily underrated advantage of ADK: it does not require rebuilding the ecosystem from scratch, and can reuse existing framework assets.

A limitation noted in public reviews: some versions have a constraint that "a single agent can only attach one built-in tool," needs.

3.3. The Session / Memory / Artifact Trio

This is ADK's most complete part at the L4 layer, with a clear separation of duties among the three services:

ServiceManaged ObjectKey APILifecycle
SessionServiceSession event history + state dictsession / stateSingle session
MemoryServiceCross-session semantic memorysearch_memory, add_session_to_memoryCross-session
ArtifactServiceFiles and binary artifactssave_artifact, load_artifact, list_artifacts, get_artifact_versionCross-session, versioned

The three are injected into agents via InvocationContext and Context; developers read and write state through context.state and persist artifacts through context.save_artifact().

This three-way split of "session state / long-term memory / artifacts" is closer to engineering reality than simply stuffing memory into a vector store.

3.4. Runner and Event-Driven Execution

ADK's most distinctive design is event-driven execution: every user message, tool call, and LLM response flows through the shared event bus as an event, uniformly scheduled by the Runner.

The benefits:

  • Orchestration logic is cleanly separated from agent behavior;
  • Execution traces are inspectable at every step;
  • Streaming and real-time (Live) scenarios are natively supported (run_live, LiveRequestQueue).

RunConfig provides a rich set of runtime switches, including context_window_compression, max_llm_calls, history_config, and include_thoughts_from_other_agents.

3.5. Callback System

ADK has the broadest callback coverage among the platforms in this group:

CallbackLevelUse
before_agent_callback / after_agent_callbackAgentInterception and cleanup when entering / exiting an agent
before_model_callback / after_model_callbackModelRequest rewriting, response filtering, caching
before_tool_callback / after_tool_callbackToolParameter validation, result cleaning, auditing
on_model_error_callback / on_tool_error_callbackErrorRetry and degradation
before_agent_callback (global) / global_instructionApplicationUniform constraints across agents

Callbacks are the primary vehicle through which ADK assumes L6 governance responsibilities.

3.6. Built-in Evaluation Framework

ADK provides AgentEvaluator.evaluate(), characterized by double scoring:

  1. Scores the final response quality;
  2. Scores the step-by-step execution trace.

Combined with evalsets (predefined sets of test cases), this makes "run an evaluation on every commit, release only when the pass rate is met" a standard engineering practice. Third-party reviews consider this places ADK's abstraction level "close to right" for medium-complexity systems of 3~6 specialized agents.

There is also a known shortcoming: unit-test support for sub-agents is weak.

3.7. Deployment Paths and Dev UI

  • Local: adk web / adk run / Dev UI debugging;
  • Vertex AI Agent Engine: a managed runtime, deployable with a single command;
  • Cloud Run / GKE / Docker: containerize and run on your own infrastructure;
  • A2A server: the launcher/web/a2a sub-launcher provides A2A capabilities;
  • REST API: the launcher/web/api sub-launcher.

3.8. Gemini CLI Capabilities and Issues

Capabilities:

  • ReAct loop: read / write files, execute shell, web retrieval;
  • Built-in tools: ls, read-file, read-many-files, find-files, grep, edit, write-file, shell, web-fetch, web-search, memoryTool;
  • MCP server support (local and remote);
  • Project-level GEMINI.md custom system prompt;
  • Human confirmation: by default asks for confirmation before any potentially destructive operation (allow once / always allow / deny);
  • Multi-layer sandboxing: macOS Seatbelt, Docker / Podman containers, proxies.

Publicly reported issues (compiled from users and reviews, not an official statement, marked [To be verified]):

IssueSymptom
Aggressive rate limiting429 errors are common, also reported by paid subscribers
Silent degradationSilently downgrades from Gemini Pro to Flash when hitting limits, degrading output quality without any notice
Edit reliabilityExhibits behavior of overwriting entire files rather than making precise edits
StabilitySome reports of getting stuck in loops or stalling for minutes
Fragile authenticationAuthentication frequently fails on headless servers, some Workspace domains, and remote shells

4. Platform Architecture

图 4-1|Google ADK 分层架构:从智能体定义到互操作部署

Google ADK 分层架构(五层栈 · 事件驱动运行时) 信息截止 2026-09-12 · 示意:基于本文分析绘制 应用层 · 你的智能体定义 root_agent = LlmAgent / SequentialAgent / ParallelAgent / LoopAgent 以上智能体可任意层次嵌套,组合多智能体系统 调用 ADK 运行时 · Runner 事件总线调度(本图重点) 编排层 动态路由·顺序/并行/循环 回调层 agent/model/tool/error 上下文层 state/branch/node_path 配置层 压缩/max_llm_calls 注入上下文 服务层 · 可替换后端(本组 L4 最强) SessionService · MemoryService · ArtifactService · CredentialService 会话历史 + state · 跨会话记忆 · 带版本工件 · 凭据存取 存取 工具层 · 五类工具生态 预构建(Google Search / Code Exec)· 自定义函数 · 长耗时函数 McpToolset · LangchainTool / CrewaiTool 适配器 · 类型注解自动生成 schema 暴露/部署 互操作与部署 A2A · MCP · OpenAPI 三协议 · 本地 / Agent Engine / Cloud Run / GKE / Docker 结构解读:事件驱动 Runner 是运行时核心;确定性工作流与动态路由在同一框架内并存,构成 ADK 的关键差异化。

数据来源:基于本文分析绘制的示意图。

4.1. ADK Layered Architecture

┌──────────────────────────────────────────────────────────┐
│ 应用层:你的智能体定义                                      │
│  root_agent = LlmAgent / SequentialAgent / ParallelAgent /  │
│  LoopAgent(可任意层次嵌套)                                │
└──────────────────────────────────────────────────────────┘
                          │
┌──────────────────────────────────────────────────────────┐
│ ADK 运行时                                                 │
│  Runner(事件总线调度)                                     │
│  ├─ 编排层:transfer 动态路由 / 顺序 / 并行 / 循环           │
│  ├─ 回调层:agent / model / tool / error 八类回调            │
│  ├─ 上下文层:InvocationContext(state / branch / node_path)│
│  └─ 配置层:RunConfig(压缩 / max_llm_calls / history)      │
└──────────────────────────────────────────────────────────┘
                          │
┌──────────────────────────────────────────────────────────┐
│ 服务层(可替换后端)                                         │
│  SessionService(内存 / DB / Vertex AI)                    │
│  MemoryService(search_memory / add_session_to_memory)     │
│  ArtifactService(GCS / 本地,带版本)                       │
│  CredentialService(load_credential / save_credential)     │
└──────────────────────────────────────────────────────────┘
                          │
┌──────────────────────────────────────────────────────────┐
│ 工具层                                                     │
│  预构建(Google Search / Vertex AI Search / Code Exec)     │
│  自定义函数 · LongRunningFunctionTool · McpToolset          │
│  LangchainTool / CrewaiTool 适配器                          │
└──────────────────────────────────────────────────────────┘
                          │
┌──────────────────────────────────────────────────────────┐
│ 互操作与部署                                                │
│  A2A(Agent Card + JSON-RPC)· MCP · OpenAPI                │
│  本地 / Agent Engine / Cloud Run / GKE / Docker             │
└──────────────────────────────────────────────────────────┘

4.2. Event-Driven Execution Flow

  1. The application invokes Runner, passing in the user message and session;
  2. Runner creates an InvocationContext, assembling session / state / services;
  3. Enters root_agent: triggers before_agent_callback;
  4. If a model call is needed: triggers before_model_callback → calls the model → after_model_callback;
  5. If the model returns tool calls: triggers before_tool_callback → executes the tool → after_tool_callback → the result is fed back as a new event;
  6. If it is a workflow agent: schedules sub-agents per Sequential / Parallel / Loop semantics, each sub-agent recursively executing 3~5 steps;
  7. Completion: triggers after_agent_callback; output_key can write the output into state for later nodes to read.

4.3. Gemini CLI Architecture

终端(交互式 / 非交互式脚本调用)
        │
Gemini CLI 主进程(Node.js 18+)
  ├─ ReAct 循环:推理 → 选工具 → 执行 → 观察 → 重复
  ├─ 内置工具:ls / read-file / find-files / grep / edit /
  │            write-file / shell / web-fetch / web-search
  ├─ MCP 客户端(本地 / 远程服务器)
  ├─ GEMINI.md 项目级指令加载
  ├─ 人工确认(允许一次 / 总是允许 / 拒绝)
  └─ 沙箱层(macOS Seatbelt / Docker / Podman / 代理)
        │
云端推理:Gemini 2.5 Pro(1M 上下文)

5. Harness Design

5.1. Six-Layer Capability Overview

LayerNameImplementation StrengthBasis
L1Context engineeringMedium–Strongcontext_window_compression, include_contents, global_instruction vs static_instruction, Artifact externalized context
L2Tools and executionStrongFive tool categories + Code Executor sandbox + third-party framework adapters
L3Orchestration and controlStrongFive agent types + hierarchical composition; deterministic workflows and dynamic routing coexist; no explicit graph before 2.0
L4Memory and stateStrong (strongest in this group)Session / Memory / Artifact three services with separated duties, versioned artifacts
L5Evaluation and observabilityStrongAgentEvaluator double scoring (final response + step-by-step trace) + evalsets; can integrate Cloud Trace
L6Governance and securityMediumEight callback types + credential service + sandboxing; no built-in RBAC / approval queues / monetary budget guardrails

5.2. L1 Context Engineering Layer

ADK's methods at L1 are relatively simple but adequate:

  • include_contents controls whether historical content is brought into the current call;
  • RunConfig.context_window_compression provides context-window compression configuration;
  • global_instruction (cross-agent global instructions) and static_instruction (static instructions) are separated to avoid redundant injection;
  • The Artifact mechanism externalizes large objects as artifacts, keeping only references in the context — consistent with Claude Agent SDK's "file system as context" approach.

Shortcomings: no progressive disclosure capability like Skills, and no retrieval/ranking primitives; RAG must rely on Vertex AI Search or be built in-house.

5.3. L2 Tools and Execution Layer

  • Registration: typed functions are automatically schematized, keeping engineering overhead low;
  • Sandboxing: provides a Code Executor sandbox (ADK) and multi-layer sandboxing (Gemini CLI: Seatbelt / Docker / Podman), making it the platform in this group with relatively clear sandbox capabilities;
  • Interoperability: three protocols in parallel — MCP + A2A + OpenAPI;
  • Ecosystem reuse: LangchainTool / CrewaiTool adapters can consume third-party framework tools.

Known limitations: public reviews mention the constraint that "a single agent can only attach one built-in tool," as well as strict file / directory conventions, needs.

5.4. L3 Orchestration and Control Layer

This is the layer where ADK diverges most clearly from the OpenAI Agents SDK.

ADK provides two orchestration orientations within a single framework:

OrientationCarrierPredictabilityApplicable Nodes
DeterministicSequentialAgent / ParallelAgent / LoopAgentHighCritical business nodes, nodes requiring regression assertions
AdaptiveLlmAgent + transfer dynamic routingLowEntry triage, open-ended exploration

This lets teams mix by node within a single system rather than committing wholesale to one end.

The tension between flexibility ↔ predictability is thereby partly resolved, but it also introduces two new problems:

  1. Strong conventions, reduced flexibility: ADK has strict file / directory conventions (agents must be organized in a specific structure), which improves maintainability but reduces the freedom of improvised refactoring;
  2. No explicit graph: until ADK 2.0's graph workflows land, complex conditional branches must still be expressed through hierarchical nesting, which is less readable than LangGraph's explicit graphs.

LoopAgent.max_iterations is the only hard iteration cap on the L3 side and can serve as a fallback against runaway loops.

5.5. L4 Memory and State Layer

Among the seven platforms in this group, ADK has the most complete L4 design:

DimensionCarrierDescription
Session stateSession + stateEvent history + key-value state; output_key can write a node's output into state
Long-term memoryMemoryServiceadd_session_to_memory precipitates a session into memory; search_memory retrieves
ArtifactsArtifactServiceVersioned artifact management; get_artifact_version supports version rollback
BranchesContext.branchEvent-branch context, supporting multiple paths
CredentialsCredentialServiceload_credential / save_credential, persisting credentials across sessions

This layering makes "what to remember" a configurable engineering decision rather than the black box of a single vector store.

5.6. L5 Evaluation and Observability Layer

ADK is one of the few approaches that make evaluation a built-in framework capability:

  • AgentEvaluator.evaluate() performs double scoring on the final response and the step-by-step trace;
  • evalsets support fixing evaluation into repeatably executable assets;
  • The event-driven model naturally produces inspectable execution traces;
  • Can integrate with Google Cloud Trace (inferred, not directly confirmed by official documentation, marked [To be verified]).

The "step-by-step trace scoring" item is especially critical — it means evaluation looks not only at whether the result is correct, but also at whether the process is reasonable. This is precisely Harness's essential value-add over bare model calls.

Known shortcoming: unit-test support for sub-agents is weak.

5.7. L6 Governance and Security Layer

Governance CapabilityImplementationStrength
Behavior interceptionEight callback types (agent / model / tool / error)Medium–Strong
Execution isolationCode Executor sandbox; Gemini CLI multi-layer sandboxMedium–Strong
Credential managementCredentialService + request_credentialMedium
Long-running operation confirmationLongRunningFunctionTool + request_confirmationMedium
Iteration capLoopAgent.max_iterations, max_llm_callsMedium
Hard cost stop-lossNo monetary-level budget parameterMissing
RBAC / multi-tenancyNot built inMissing
Audit reportsBuilt in-house via callbacksWeak

The openness ↔ governance tension is most typified in A2A: A2A lets ADK agents interoperate with agents from other frameworks and organizations (Microsoft Azure AI Foundry, SAP Joule, Box, Auth0, and Zoom are all supported), but the Agent Card's capability-discovery mechanism is itself an attack surface — an agent that announces its capabilities is at the same time announcing an interface that can be probed. As of the retrieval date, A2A was at version 0.2, with limited maturity.

5.8. Concrete Manifestations of the Three Internal Tensions

TensionManifestation in This PlatformMitigation
Flexibility ↔ predictabilityDeterministic workflows and dynamic routing coexist, but strict directory conventions + no explicit graphUse Sequential / Loop + max_iterations for critical nodes; use LlmAgent for entry triage; wait for ADK 2.0 graph workflows
Openness ↔ governanceA2A + MCP + OpenAPI open interoperability across three protocols; Agent Card capability discovery is itself an attack surfaceCallback interception; open A2A only to trusted organizations; sandbox isolation
Cost ↔ depthLoopAgent iteration and parallel agents amplify token consumption; no monetary-level guardrailsLoopAgent.max_iterations; max_llm_calls; Gemini CLI uses the free quota for exploration and paid keys for production

6. Real-World Cases

Case One: Same-source validation with Google's internal products

Google has publicly stated that ADK is the framework underpinning its own products — including agents in Agentspace and the Customer Engagement Suite. The value here is "run it internally first, then open-source it": ADK does not solve a generic problem from a community wish-list, but the problems Google teams actually encountered (Vertex AI hosting, session continuity, cross-turn memory, Cloud Trace-integratable observability, and high-concurrency scaling). This statement comes from the official repository description, with no quantified data from independent third-party audits.

Case Two: Gemini CLI's scale validation

Within less than a year of release, Gemini CLI surpassed 100,000 GitHub stars, making it one of the fastest-growing projects among comparable terminal agents; its free quota (60 / minute, 1,000 / day, Gemini 2.5 Pro + 1M context) is called by Google "the largest quota in the industry." The star count comes from a third-party directory site, not an official figure, marked [To be verified].

Case Three: A2A ecosystem adoption

The A2A protocol is already supported by vendors including Microsoft Azure AI Foundry, SAP Joule, Box, Auth0, and Zoom. This is an early signal of the viability of cross-organization agent networks, but this capability "means less today than it will twelve months from now."

Parts for which no public quantified data was found: as of the retrieval date 2026-09-12, no third-party enterprise adoption data quantified against ADK was found (such as cost reduction, task success rate, or human-replacement rate). None of the above cases include verifiable quantitative metrics; this is stated honestly here and not padded out.

7. Summary

7.1. Strengths

  1. Most complete six-layer coverage: among the seven platforms in this group, the only approach that reaches "strong" on both L4 and L5.
  2. Dual orchestration orientations: deterministic workflows and dynamic routing mix within one framework, letting you choose the predictability gear per node.
  3. Event-driven design: orchestration logic is separated from agent behavior, and traces are inspectable at every step.
  4. Built-in evaluation: AgentEvaluator supports double scoring of the final response and the step-by-step trace, lowering the bar for engineering-level evaluation.
  5. Multi-language: Python / TypeScript / Go / Java coverage across four languages, suiting teams with different tech stacks.
  6. Ecosystem reuse: LangchainTool / CrewaiTool adapters avoid rebuilding the ecosystem from scratch.
  7. Model-agnostic: optimized for Gemini but can connect other vendors' models via LiteLLM.

7.2. Weaknesses

  1. Google Cloud binding bias: best-practice paths are heavily centered on Vertex AI / Cloud Run, decreasing appeal for infrastructure-agnostic projects.
  2. Strict conventions: strict file / directory conventions reduce flexibility and room for improvised refactoring.
  3. No explicit graph: until ADK 2.0's graph workflows land, complex branches are less readable than LangGraph.
  4. Incomplete L6: no built-in RBAC, approval queues, or monetary-level cost guardrails.
  5. Weak sub-agent unit testing: a shortcoming clearly identified in public reviews.
  6. Gemini CLI stability controversy: issues such as rate limiting, silent degradation, overwriting edits, and fragile authentication are repeatedly reported (third-party accounts).

7.3. Applicability Boundary

ScenarioApplicable?Reason
Production multi-agent systems already on Google CloudApplicableShortest deployment path; Agent Engine handles operations
Systems needing cross-session memory and versioned artifactsApplicableL4 trio with separated duties
Teams that want evaluation as a CI gateApplicableAgentEvaluator + evalsets
Cross-organization agent interoperabilityApplicable (early)Native A2A support, but the protocol is still at 0.2
Infrastructure-agnostic / multi-cloud-neutral projectsWeigh tradeoffsBest-practice paths center on GCP
Out-of-the-box tenancy and billingNot applicableADK is a Framework, not a Platform
Monetary-level hard cost stop-lossNot applicableNo corresponding parameter

7.4. Selection Recommendations

  • If your team is already on Google Cloud and needs production-grade multi-agent orchestration, ADK is the most balanced choice in this group.
  • If your team's top priority is the most complete observability and evaluation loop, consider LangGraph + LangSmith (see 04-langgraph.md), but ADK's evaluation is built into the framework at lower cost.
  • If your team needs no-code / business-user participation in building, choose an Agent Platform (see 05-dify.md, 06-coze.md).
  • Two things you must build yourself when adopting ADK: monetary-level budget guardrails and audit reports.

Information Gap Declaration

  1. Exact version numbers per language: Python has third-party reports of v1.28.1, and Java / Go have 0.6.0 records, but these were not cross-checked item by item against official release pages, marked [To be verified].
  2. ADK 2.0 graph workflows: only third-party articles mention them as "in research"; not confirmed by the official roadmap; their feature set and GA date are marked [To be verified].
  3. The "one built-in tool per agent" constraint: from third-party reviews, not cross-verified with official documentation, marked [To be verified].
  4. Cloud Trace integration: inferred from the event-driven model and the Google Cloud ecosystem, not directly confirmed by official documentation, marked [To be verified].
  5. A2A's current version and security model: third parties say the protocol is at 0.2, not cross-checked against the Linux Foundation official repo; its authentication and authorization mechanisms were not specially researched.
  6. Gemini CLI star count and issue reports: the star count comes from a third-party directory site; issues such as rate limiting / silent degradation / overwriting edits are compiled from users and reviews, all marked [To be verified].
  7. Enterprise adoption quantified data: no verifiable third-party enterprise effectiveness data based on ADK was found; none was padded in.
  8. Pricing details: the ADK framework itself is free, but the specific billing for Vertex AI Agent Engine and Gemini models was not obtained from official pricing during this research, marked [To be verified].

8. References

  1. Agent Development Kit official documentation (Chinese site) — Google. https://adk.wiki
  2. Agent Development Kit (Python) API Reference — Google. https://adk.dev/api-reference/python/
  3. Agent Development Kit (ADK) for Go — pkg.go.dev. https://pkg.go.dev/google.golang.org/adk
  4. Google ADK Review: The Agent Framework for Gemini — Awesome Agents. https://awesomeagents.ai/reviews/review-google-adk
  5. What is Google ADK? The Agent Development Kit Explained for 2026 — FutureAGI. https://futureagi.com/blog/what-is-google-adk-2026/
  6. Google unveils open-source Gemini CLI — Xinhua, 2025-06-26. https://www.news.cn/english/20250626/db3b06bf72604b5ab029616134bf59ed/c.html
  7. Gemini CLI brings Google's AI agent to your terminal for free — 9to5Google, 2025-06-25. https://9to5google.com/2025/06/25/google-gemini-cli/
  8. Gemini CLI Free Open-Source AI Agent — Belitsoft, 2025-06-25. https://belitsoft.com/news/gemini-cli-free-20250625
  9. Google Open Source Blog (A2A donated to the Linux Foundation) — Google, 2025-06. https://opensource.googleblog.com/
  10. R01-Overview research report (ADK orchestration primitives, A2A timeline) — internal research report for this project.
  11. Project parameter card v1.0 (six-layer capability model and conceptual boundaries) — internal baseline document for this project.