TL;DR

Google Agent Development Kit (ADK) is an open-source, code-first framework for building, evaluating, and deploying AI agents. It treats agent development like software development — with proper testing, modularity, and deployment pipelines. Key highlights:

  • 8,200+ GitHub stars, Apache 2.0 license, actively maintained by Google
  • 4 languages — Python, Go, Java, and TypeScript SDKs
  • Model-agnostic — optimized for Gemini but works with any LLM provider
  • Multi-agent orchestration — hierarchical agent trees with automatic routing
  • Rich tool ecosystem — MCP tools, OpenAPI specs, custom functions, Google Search built-in
  • A2A protocol — agent-to-agent communication for distributed systems
  • Built-in dev UI — visual debugger with event traces, artifacts, and evaluations
  • Deploy anywhere — Cloud Run, Vertex AI Agent Engine, or any container platform

Install: pip install google-adk

Think of it as Google’s answer to LangChain and CrewAI — but with the structure of a proper software framework, not a notebook experiment.


Quick Reference

DetailInfo
Repositorygoogle/adk-python
Stars8,200+
LanguagePython, Go, Java, TypeScript
LicenseApache 2.0
Installpip install google-adk
Docsgoogle.github.io/adk-docs
RequiresPython 3.9+, Gemini API key (or other LLM provider)

What Is Google ADK?

Google ADK is a framework that applies software engineering principles to AI agent creation. Instead of gluing together prompts and API calls in a Jupyter notebook, you define agents as composable modules with clear interfaces, testable logic, and deployment configurations.

The framework was born from Google’s internal agent development practices and open-sourced to provide a structured alternative to the growing ecosystem of agent frameworks. While it’s optimized for Gemini models and the Google Cloud ecosystem, the team made it genuinely model-agnostic — you can swap in OpenAI, Anthropic, or local models.

What sets ADK apart from tools like LangChain or CrewAI is the emphasis on production readiness. It ships with evaluation tools, a visual debugger, session management, and deployment templates out of the box. This isn’t a prototyping tool — it’s built for agents that need to run in production.


Three things converged to push ADK past 8,000 stars in April 2026:

1. The multi-agent era arrived. Single-agent chatbots are giving way to systems where specialized agents collaborate. ADK’s hierarchical agent architecture makes this natural — define a coordinator that routes to specialist sub-agents, and the framework handles the orchestration.

2. A2A protocol integration. Google’s Agent-to-Agent protocol lets ADK agents communicate with agents built on other frameworks. This interoperability is critical as companies deploy agents from different teams and vendors.

3. Four-language support. Most agent frameworks are Python-only. ADK shipping Go, Java, and TypeScript SDKs opened it to backend teams that don’t want Python in their stack. The Java ADK alone attracted significant enterprise interest.


Key Features with Code Examples

Basic Agent Definition

Creating an agent takes a few lines. Here’s a search assistant:

from google.adk.agents import Agent
from google.adk.tools import google_search

root_agent = Agent(
    name="search_assistant",
    model="gemini-2.5-flash",
    instruction="You are a helpful assistant. Answer user "
                "questions using Google Search when needed.",
    description="An assistant that can search the web.",
    tools=[google_search]
)

The Agent class handles conversation management, tool calling, and response generation. You provide the model, instructions, and tools — ADK handles the orchestration loop.

Multi-Agent Systems

The real power shows in multi-agent setups. Define specialists and a coordinator:

from google.adk.agents import LlmAgent

# Specialist agents
researcher = LlmAgent(
    name="researcher",
    model="gemini-2.5-flash",
    instruction="You research topics thoroughly using "
                "available tools. Return structured findings.",
    tools=[google_search]
)

writer = LlmAgent(
    name="writer",
    model="gemini-2.5-flash",
    instruction="You write clear, concise content based "
                "on research provided by other agents."
)

# Coordinator routes to specialists
coordinator = LlmAgent(
    name="coordinator",
    model="gemini-2.5-flash",
    description="I coordinate research and writing tasks.",
    sub_agents=[researcher, writer]
)

The coordinator automatically routes requests to the appropriate sub-agent based on the task. No manual routing logic needed — the model figures out which specialist to invoke.

Custom Tools

Define tools as simple Python functions:

from google.adk.tools import FunctionTool

def get_weather(city: str) -> dict:
    """Get current weather for a city."""
    # Your API call here
    return {"city": city, "temp": 22, "condition": "sunny"}

weather_tool = FunctionTool(func=get_weather)

agent = Agent(
    name="weather_agent",
    model="gemini-2.5-flash",
    instruction="Help users check weather conditions.",
    tools=[weather_tool]
)

ADK also supports OpenAPI spec imports, MCP tool servers, and pre-built integrations with Google services like BigQuery, Cloud Storage, and Pub/Sub.

Tool Confirmation (Human-in-the-Loop)

For sensitive operations, ADK supports confirmation flows:

from google.adk.tools import FunctionTool

def delete_record(record_id: str) -> str:
    """Delete a database record. Requires confirmation."""
    # Dangerous operation
    return f"Deleted record {record_id}"

tool = FunctionTool(
    func=delete_record,
    require_confirmation=True
)

When the agent tries to use this tool, execution pauses and waits for explicit user approval before proceeding.


Architecture: How It Works

ADK’s architecture has four layers:

Agent Layer — Three agent types:

  • LlmAgent: Uses language models for reasoning and tool selection
  • Workflow agents: Deterministic pipelines (sequential, parallel, loop)
  • Custom agents: Arbitrary orchestration logic you define

Tool Layer — Unified interface for:

  • Python functions (wrapped as FunctionTool)
  • OpenAPI specifications (auto-generated tool interfaces)
  • MCP servers (Model Context Protocol compatible tools)
  • Google Cloud services (BigQuery, Vertex AI, etc.)

Session Layer — Manages conversation state, context windows, and agent memory. Supports session rewinding to replay from a previous point.

Deployment Layer — Containerization templates for Cloud Run, Vertex AI Agent Engine integration, or standalone deployment.

The A2A (Agent-to-Agent) protocol sits alongside this stack, enabling remote agent communication across framework boundaries. An ADK agent can call a LangChain agent running on a different server, and vice versa.


The Development UI

ADK ships with a built-in web UI (adk web) that provides:

  • Event traces — see every tool call, model invocation, and agent handoff
  • Artifact inspection — view files, images, and data generated during execution
  • Evaluation runner — test agents against predefined evaluation sets
  • Agent builder — visual agent configuration without writing code

Run it locally:

pip install google-adk[web]
adk web --agent your_agent_module

The UI opens at localhost:8000 and gives you a chat interface with full debugging capabilities. It’s particularly useful for understanding how multi-agent routing decisions happen.


Getting Started

Installation

# Create virtual environment
python -m venv adk-env
source adk-env/bin/activate

# Install ADK
pip install google-adk

# Set your API key
export GOOGLE_API_KEY="your-gemini-api-key"

Create Your First Agent

# Scaffold a new project
adk create my_agent

# Run it in CLI mode
adk run my_agent

# Or launch the web UI
adk web my_agent

Evaluate Your Agent

ADK includes evaluation tooling to test agent behavior:

adk eval \
  my_agent \
  my_agent/eval_set.evalset.json

Define evaluation sets as JSON files with input/expected-output pairs. The eval runner tests your agent against each case and reports pass/fail results.


Community Reactions

The developer community has been notably positive about ADK’s structure:

Reddit r/AI_Agents — “Google ADK is seriously underrated for building production agents. Everyone talks about LangChain, CrewAI, AutoGen… but when Google dropped ADK I started messing with it and honestly? It’s the most production-ready framework I’ve used.”

InfoWorld review (April 2026) — “The Google Agent Development Kit is a capable and mostly complete framework for developing agents. Direct competitors include Amazon Bedrock AgentCore, Azure AI Foundry Agents, and the OpenAI Agents SDK.”

Common praise: Clean API design, proper evaluation tooling, multi-language support, A2A interoperability.

Common criticism: Gemini-first experience means non-Google models require more configuration. Documentation could be more comprehensive for advanced patterns. The web UI has some rough edges compared to LangSmith.


Who Should Use This (And Who Shouldn’t)

Use ADK if you:

  • Need multi-agent systems with proper orchestration
  • Want agents in production (not just prototypes)
  • Use Google Cloud or Gemini models
  • Need evaluation and testing built into your workflow
  • Want multi-language support (Python, Go, Java, TypeScript)
  • Care about A2A interoperability with other agent frameworks

Skip ADK if you:

  • Need a quick prototype in 20 minutes (try SmolAgents instead)
  • Are heavily invested in the OpenAI ecosystem (use OpenAI Agents SDK)
  • Want the largest community and ecosystem (LangChain still wins here)
  • Need no-code agent building (look at n8n or Flowise)

ADK vs. Alternatives

FeatureGoogle ADKLangChainCrewAIOpenAI Agents SDK
LanguagesPython, Go, Java, TSPython, JSPythonPython
Multi-agentBuilt-in hierarchiesVia LangGraphRole-based crewsHandoffs
Model supportAny (Gemini optimized)AnyAnyOpenAI only
Eval toolingBuilt-inLangSmith (paid)BasicBasic
A2A protocolNativeCommunityNoNo
Dev UIBuilt-inLangSmithNoNo
MCP supportYesYesLimitedYes
DeployCloud Run, Vertex AIAnyAnyAny
LicenseApache 2.0MITMITMIT

ADK’s strongest advantage is the combination of multi-language support, built-in evaluation, and A2A interoperability. LangChain has a larger ecosystem. CrewAI is simpler for basic multi-agent setups. The OpenAI SDK is the cleanest API but locks you to OpenAI.


FAQ

Is Google ADK free to use?

Yes, completely. ADK is Apache 2.0 licensed — use it commercially, modify it, distribute it. The framework itself is free. You only pay for the LLM API calls (Gemini, OpenAI, etc.) and any cloud infrastructure you deploy to.

Can I use ADK with models other than Gemini?

Yes. ADK is model-agnostic. You can configure OpenAI, Anthropic, local Ollama models, or any OpenAI-compatible API. However, some features like native Google Search tool integration work best with Gemini.

How does ADK compare to LangChain?

LangChain has a larger ecosystem and more community integrations. ADK has better built-in evaluation tooling, multi-language support (Go, Java, TypeScript), and native A2A protocol support. LangChain is better for rapid prototyping; ADK is better for production multi-agent systems.

What is the A2A protocol?

Agent-to-Agent (A2A) is Google’s open protocol for agents built on different frameworks to communicate. An ADK agent can call a LangChain agent on a different server, exchange context, and coordinate tasks — without sharing the same codebase or framework.

Can I deploy ADK agents outside of Google Cloud?

Absolutely. While Vertex AI Agent Engine provides managed hosting, you can containerize any ADK agent and deploy it on AWS, Azure, a VPS, or even locally. The adk deploy command generates Dockerfiles for Cloud Run, but the container works anywhere.

Does ADK support streaming responses?

Yes. ADK supports streaming for both single-agent and multi-agent setups. The web UI shows streaming responses in real time, and the SDK provides async iterators for programmatic streaming.


Bottom Line

Google ADK fills an important gap in the agent framework landscape. It’s not the simplest tool (SmolAgents wins there) or the most ecosystem-rich (LangChain), but it’s arguably the most production-ready open-source option for building multi-agent systems.

The combination of four-language support, built-in evaluation, visual debugging, and A2A interoperability makes it particularly strong for teams that need agents in production — not just demos. If you’re on Google Cloud, it’s the obvious choice. If you’re not, it’s still worth evaluating against LangChain and CrewAI for any serious agent project.

With 8,200+ stars and growing, ADK is positioned to become one of the standard frameworks for agent development in 2026 and beyond.