Google ADK - AI Agent Development

VerifiedCaution

Provides guidance for using Google's Agent Development Kit (ADK) to build AI agents. Covers installation, agent types (LLM, workflow, custom), function tools, multi-agent orchestration, callbacks, and deployment. Useful when creating Gemini agents or working with ADK-specific concepts like SequentialAgent or LoopAgent.

Sby Skills Guide Bot
DevelopmentIntermediate
6/2/2026
Claude Code
#google-adk#ai-agents#gemini#multi-agent#agent-development-kit

Recommended for

Automated summary

This skill provides guidance for building AI agents using Google's Agent Development Kit (ADK), covering installation, agent types, tools, workflows, and deployment.

Strengths

  • Comprehensive reference with detailed agent configuration options and best practices.
  • Quick-start examples in Python and TypeScript for immediate use.
  • Built-in checks to verify current official documentation for accuracy.

Limitations

  • Requires periodic manual verification of official docs due to active development.
  • Examples are limited to Python and TypeScript; other languages not covered.
When to use it

Use this skill when building AI agents with Google ADK, especially for multi-agent systems, custom tools, or complex orchestration.

When not to use it

Avoid this skill if you're using alternative agent frameworks (LangChain, CrewAI) or need a no-code agent builder.

Security analysis

Caution
Quality score85/100

The skill involves running bash commands for installation and execution, which is a powerful capability, but all instructions are for legitimate ADK development purposes. No malicious or destructive actions are instructed.

Findings
  • •Uses Bash tool which could execute arbitrary commands, though only standard development instructions are provided.
How this analysis is made

Examples

Create a minimal Gemini agent
Create a simple AI agent using Google ADK that can greet users by name. Use the gemini-2.0-flash model and provide a function tool.
Multi-agent system with SequentialAgent
Set up a multi-agent workflow with Google ADK where one agent processes user input and passes results to another agent using SequentialAgent.
Add callbacks for logging
Implement callbacks in a Google ADK agent to log every step and tool call for observability.

name: google-adk description: Use when building AI agents with Google ADK (Agent Development Kit), creating Gemini agents, implementing multi-agent systems, or working with ADK tools and workflows. Covers installation, agent types, function tools, callbacks, sessions, and deployment. allowed-tools:

  • Read
  • Write
  • Edit
  • Bash
  • Glob
  • Grep
  • WebFetch
  • WebSearch

Google ADK Agent Development

This skill provides comprehensive guidance for building AI agents using Google's Agent Development Kit (ADK).

IMPORTANT: Always Verify with Current Documentation

Before providing any guidance, ALWAYS use WebFetch to check the official ADK documentation at https://google.github.io/adk-docs/ for the most current information.

The ADK is actively developed and APIs may change. When answering questions:

  1. First use WebFetch on the relevant documentation page (e.g., https://google.github.io/adk-docs/agents/ for agent questions)
  2. Cross-reference the fetched content with the reference material in this skill
  3. If there are discrepancies, prefer the official documentation
  4. Inform the user if you find updated information that differs from cached knowledge

Key documentation pages to check:

  • Installation/Quickstart: https://google.github.io/adk-docs/get-started/quickstart/
  • Agents: https://google.github.io/adk-docs/agents/
  • Tools: https://google.github.io/adk-docs/tools/
  • Multi-agent systems: https://google.github.io/adk-docs/agents/multi-agents/
  • Callbacks: https://google.github.io/adk-docs/callbacks/

When to Use This Skill

  • User mentions "ADK", "Agent Development Kit", or "Google ADK"
  • User wants to build AI agents with Gemini or other LLMs
  • User asks about multi-agent systems or agent orchestration
  • User needs help with ADK tools, callbacks, or workflows
  • User mentions ADK-specific terms like LlmAgent, SequentialAgent, ParallelAgent, LoopAgent

Quick Start

Installation

# Python
pip install google-adk

# TypeScript
npm install @google/adk @google/adk-devtools

Minimal Agent (Python)

from google.adk import Agent

def greet(name: str) -> dict:
    """Greet a user by name."""
    return {"message": f"Hello, {name}!"}

root_agent = Agent(
    name="greeter",
    model="gemini-2.0-flash",
    instruction="You are a friendly greeter. Use the greet tool to say hello.",
    tools=[greet],
)

Run the Agent

adk run my_agent      # CLI
adk web               # Web UI at http://localhost:8000

For Detailed Documentation

Read the comprehensive reference at: ~/.claude/skills/google-adk/reference.md

This reference includes:

  • Complete agent configuration options
  • Function tool best practices with examples
  • Multi-agent system patterns
  • Workflow agents (Sequential, Parallel, Loop)
  • Callbacks for observability and guardrails
  • Session and state management
  • All supported models and pre-built tools

Key Concepts Summary

Agent Types

  1. LLM Agents: Use LLMs for dynamic reasoning (non-deterministic)
  2. Workflow Agents: Deterministic execution patterns
    • SequentialAgent: One after another
    • ParallelAgent: Concurrent execution
    • LoopAgent: Iterative until condition met
  3. Custom Agents: Extend BaseAgent for specialized needs

Essential Configuration

Agent(
    name="unique_name",           # Required - unique identifier
    model="gemini-2.0-flash",     # Required - LLM model
    instruction="...",            # Required - system prompt
    description="...",            # Optional - for multi-agent routing
    tools=[...],                  # Optional - available tools
    sub_agents=[...],             # Optional - child agents
)

Tool Definition Pattern

def my_tool(param: str, optional_param: int = 0) -> dict:
    """Tool description for the LLM.

    Args:
        param: Required parameter description.
        optional_param: Optional with default value.

    Returns:
        Dictionary with status and results.
    """
    return {"status": "success", "result": "..."}

Always return dictionaries with status indicators for LLM comprehension.

Official Documentation

https://google.github.io/adk-docs/

From the file to a first result

The download contains exactly the content displayed on this page. This copy may differ from the latest version in the source repository.

View the source and supporting files

This download contains SKILL.md only. Any scripts, references, templates and dependencies are not included. Get the required files from the source, preserving their directory structure, before continuing.

1. Download the file

Download SKILL.md

From the root of a test project, save the file as .skill-downloads/google-adk-ai-agent-development-mma3jr6u/SKILL.md, or use the command below. This folder is for inspecting the skill before installation.

Command for macOS/Linux or WSL: requires a POSIX shell and curl. On Windows without WSL, use the download button and create the folder manually.

mkdir -p '.skill-downloads/google-adk-ai-agent-development-mma3jr6u' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/google-adk-ai-agent-development-mma3jr6u/download' --output '.skill-downloads/google-adk-ai-agent-development-mma3jr6u/SKILL.md.part' && mv '.skill-downloads/google-adk-ai-agent-development-mma3jr6u/SKILL.md.part' '.skill-downloads/google-adk-ai-agent-development-mma3jr6u/SKILL.md'

2. Check prerequisites

Read SKILL.md before using it. If it references scripts or external services, inspect them and prepare the required access in your test environment.

Original excerpt: Installation
# Python
pip install google-adk

# TypeScript
npm install @google/adk @google/adk-devtools

The platforms on this page are catalog indications. The paths below follow tool documentation; they do not prove this skill has been run in those tools. No minimum tool version is confirmed for this listing.

3. Load the skill

After inspection, copy the complete folder into your project using one of the commands below, then open a new tool session. The command stops if a folder with the same name already exists: compare the files before replacing it.

Claude Code
test -f '.skill-downloads/google-adk-ai-agent-development-mma3jr6u/SKILL.md' && test -s '.skill-downloads/google-adk-ai-agent-development-mma3jr6u/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/google-adk' && cp -R '.skill-downloads/google-adk-ai-agent-development-mma3jr6u' '.claude/skills/google-adk'

OpenSkills

OpenSkills must already be installed. The local install/read procedure is checked with OpenSkills 1.5.0, which requires Node.js ≥ 20.6.0. Catalog slugs are not resolved automatically.

Official OpenSkills installation
openskills install './.skill-downloads/google-adk-ai-agent-development-mma3jr6u'

openskills read 'google-adk-ai-agent-development-mma3jr6u'

Reading should display the installed file content and its base directory. It does not run the skill or install its dependencies.

For an agent that reads AGENTS.md, then sync the index. This command changes AGENTS.md: review the diff before using it.

openskills sync

Manual method or another tool: attach SKILL.md to a conversation, or open it in an agent that can read files. Include any required supporting resources. No universal folder is recognized by every tool.

4. Try a first task

Use a short, synthetic input: an API endpoint, a small document or an interface brief. In a new conversation, attach the file or give the agent its path, then adapt this request:

Read .skill-downloads/google-adk-ai-agent-development-mma3jr6u/SKILL.md and apply its instructions to this example: [describe a test input]. Identify any missing files, dependencies or access. Produce the result requested by the skill without inventing data or running unreviewed scripts.

Expected result: output matching the skill instructions, or a precise list of missing prerequisites. A read confirmation alone does not validate a first use. If an external resource is unavailable, that path remains untested.

Related skills