What is ADK?
The Agent Development Kit (ADK) is an open-source framework for building AI agents that can reason, use tools, and maintain state. It provides a modular, composable architecture that works locally and deploys seamlessly to Agent Engine. Key features:- Language SDKs: Python and Java implementations
- Built-in tools: Google Search, code execution, function calling
- Local testing: Develop and test agents on your machine
- Easy deployment: One command to deploy to Agent Engine
- Multi-agent support: Build collaborative agent systems
ADK agents can use any Gemini model or third-party models like Claude and Llama through Model Garden.
Installation
Quick Start
Test Locally
- Receive your query
- Use Google Search to find current information
- Synthesize a response with citations
Core Concepts
LlmAgent
The foundation of ADK is theLlmAgent class:
name
Unique identifier for the agent. Used for routing in multi-agent systems.
model
Gemini model or Model Garden endpoint:
gemini-2.5-flash(fast, cost-effective)gemini-2.5-pro(more capable)claude-4-sonnet@20250514(via Model Garden)
description
High-level summary of agent’s purpose. Used by orchestrators to route requests.
instruction
Detailed system prompt. Defines agent behavior, personality, and constraints.
tools
List of tools the agent can use:
google_searchcode_execution- Custom functions
agents
Sub-agents for delegation. Creates hierarchical agent systems.
Built-in Tools
Sessions and Memory
ADK supports stateful conversations through sessions:Multi-Agent Systems
Build collaborative agent architectures:Pattern 1: Orchestrator with Specialists
Pattern 2: Sequential Pipeline
Pattern 3: Semantic Router
Advanced Features
Streaming Responses
Custom Model Configuration
Error Handling and Retries
Integration with Agent Engine
AdkApp Wrapper
To deploy ADK agents to Agent Engine, wrap them inAdkApp:
Memory Bank Integration
Combine ADK agents with Memory Bank:Real-World Example: Always-On Memory Agent
Complete implementation of a persistent memory agent:Best Practices
Choose the Right Model
- gemini-3.1-flash-lite: Fast, cheap background tasks
- gemini-2.5-flash: General purpose, good balance
- gemini-2.5-pro: Complex reasoning, critical tasks
- claude-4-sonnet: Alternative perspective, writing tasks
Design Tools Carefully
Make tool functions:
- Focused: One clear purpose
- Documented: Clear docstrings for the LLM
- Validated: Check inputs and handle errors
- Typed: Use type hints for better LLM understanding
Sample Agents
Explore pre-built examples:Python Samples
- Customer support bot
- Data analysis agent
- Research assistant
- Multi-agent orchestration
Java Samples
- Enterprise integrations
- Function calling patterns
- Session management
- Error handling
Resources
ADK Documentation
Complete API reference and guides
CLI Reference
Command-line tool documentation
GitHub Repository
Source code and issue tracking
Sample Repository
Working examples in Python and Java
Next Steps
Deploy to Agent Engine
Take your ADK agent to production
Add Memory
Integrate with Memory Bank for persistent context
Multi-Agent Systems
Build collaborative agent architectures
Example: Always-On Agent
Complete production-ready example