.claude/skills/google-adk-python/SKILL.md
# Google ADK Python Skill You are an expert guide for Google's Agent Development Kit (ADK) Python - an open-source, code-first toolkit for building, evaluating, and deploying AI agents. ## When to Use This Skill Use this skill when users need to: - Build AI agents with tool integration and orchestration capabilities - Create multi-agent systems with hierarchical coordination - Implement workflow agents (sequential, parallel, loop) for predictable pipelines - Integrate LLM-powered agents with
npx skillsauth add mrgoonie/claudekit-skills .claude/skills/google-adk-pythonInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
You are an expert guide for Google's Agent Development Kit (ADK) Python - an open-source, code-first toolkit for building, evaluating, and deploying AI agents.
Use this skill when users need to:
LlmAgent: LLM-powered agents capable of dynamic routing and adaptive behavior
Workflow Agents: Structured, predictable orchestration patterns
BaseAgent: Foundation for custom agent implementations
Tools Ecosystem:
Multi-Agent Architecture:
# Stable release (recommended)
pip install google-adk
# Development version (latest features)
pip install git+https://github.com/google/adk-python.git@main
from google.adk.agents import LlmAgent
from google.adk.tools import google_search
agent = LlmAgent(
name="search_assistant",
model="gemini-2.5-flash",
instruction="You are a helpful assistant that searches the web for information.",
description="Search assistant for web queries",
tools=[google_search]
)
from google.adk.agents import LlmAgent
# Specialized agents
researcher = LlmAgent(
name="Researcher",
model="gemini-2.5-flash",
instruction="Research topics thoroughly using web search.",
tools=[google_search]
)
writer = LlmAgent(
name="Writer",
model="gemini-2.5-flash",
instruction="Write clear, engaging content based on research.",
)
# Coordinator agent
coordinator = LlmAgent(
name="Coordinator",
model="gemini-2.5-flash",
instruction="Delegate tasks to researcher and writer agents.",
sub_agents=[researcher, writer]
)
from google.adk.tools import Tool
def calculate_sum(a: int, b: int) -> int:
"""Calculate the sum of two numbers."""
return a + b
# Convert function to tool
sum_tool = Tool.from_function(calculate_sum)
agent = LlmAgent(
name="calculator",
model="gemini-2.5-flash",
tools=[sum_tool]
)
from google.adk.agents import SequentialAgent
workflow = SequentialAgent(
name="research_workflow",
agents=[researcher, summarizer, writer]
)
from google.adk.agents import ParallelAgent
parallel_research = ParallelAgent(
name="parallel_research",
agents=[web_researcher, paper_researcher, expert_researcher]
)
from google.adk.tools import google_search
# Tool with confirmation required
agent = LlmAgent(
name="careful_searcher",
model="gemini-2.5-flash",
tools=[google_search],
tool_confirmation=True # Requires approval before execution
)
# Containerize agent
docker build -t my-agent .
# Deploy to Cloud Run
gcloud run deploy my-agent --image my-agent
# Deploy to Vertex AI for scalable agent hosting
# Integrates with Google Cloud's managed infrastructure
# Run agents locally or on custom servers
# Full control over deployment environment
Optimized for Gemini:
Model Agnostic: While optimized for Gemini, ADK supports other LLM providers through standard APIs.
ADK includes built-in interface for:
When implementing ADK-based agents:
Remember: ADK treats agent development like traditional software engineering - use version control, write tests, and follow engineering best practices.
tools
Web testing with Playwright, Vitest, k6. E2E/unit/integration/load/security/visual/a11y testing. Use for test automation, flakiness, Core Web Vitals, mobile gestures, cross-browser.
development
Build 3D web apps with Three.js (WebGL/WebGPU). Use for 3D scenes, animations, custom shaders, PBR materials, VR/XR experiences, games, data visualizations, product configurators.
tools
Replace with description of the skill and when Claude should use it.
tools
Create or update Claude skills. Use for new skills, skill references, skill scripts, optimizing existing skills, extending Claude's capabilities.