Skip to content

miticojo/adk-skill

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 

Repository files navigation

ADK Skill

An Agent Skill for building single-agent and multi-agent systems with Google's Agent Development Kit (ADK) in Python, Java, Go, and TypeScript.

This skill gives your coding agent deep knowledge of ADK architecture, patterns, and best practices -- covering agent types, tools, callbacks, state management, multi-agent orchestration, testing, and deployment across all supported languages.

What's Included

adk-skill/
├── SKILL.md                          # Core instructions (500 lines)
└── references/
    ├── a2a-protocol.md               # A2A protocol: expose, consume, agent cards
    ├── design-patterns.md            # Agent design patterns & best practices
    ├── tools-reference.md            # FunctionTool, MCP, Toolbox, RAG, SkillToolset, API Registry
    ├── advanced-patterns.md          # Multi-agent, App config, plugins, AG-UI, streaming, multi-model
    ├── evaluation.md                 # Eval data formats, 8 metrics, user simulation
    ├── troubleshooting.md            # Common errors, debugging, performance tips
    └── multi-language.md             # Java, Go, TypeScript patterns

SKILL.md covers project structure, all 4 agent types (LlmAgent, SequentialAgent, ParallelAgent, LoopAgent), function tools, AgentTool, MCP integration, A2A remote agents, callbacks, state management, structured output, testing with InMemoryRunner, App runtime config (context compaction, resumability), plugins, streaming/Live API, SkillToolset, multi-model support (Gemini 3, Claude, Ollama, LiteLLM), design patterns with key rules, decision guides, and links to external documentation.

Reference files provide advanced patterns loaded on demand:

  • a2a-protocol.md -- A2A (Agent-to-Agent) protocol: exposing agents via to_a2a() and adk api_server, consuming with RemoteA2aAgent, agent cards, Go patterns, metadata propagation, testing, troubleshooting (validated with integration tests)
  • design-patterns.md -- 15 agent design patterns (sequential pipeline, fan-out/fan-in, reflection, routing, planning, error handling, HITL, guardrails, resource optimization, reasoning, context engineering, prompting), universal anti-patterns table, multi-agent collaboration models, state management rules, memory architecture
  • tools-reference.md -- FunctionTool, ToolboxToolset, MCP connections, RAG retrieval, SkillToolset (Agent Skills loading), APIRegistryToolset, Cloud Pub/Sub, OpenAPI tools, long-running tools, best practices
  • advanced-patterns.md -- App object (context compaction, resumability), plugins (BasePlugin, global lifecycle hooks), session rewind, AG-UI integration (CopilotKit), Interactions API, multi-model support (Claude, Ollama, LiteLLM, vLLM), hierarchical workflows, agent transfer, deployment, anti-patterns
  • evaluation.md -- eval data formats (EvalSet/EvalCase), all 8 built-in metrics, tool trajectory matching, rubric-based evaluation, user simulation, pytest integration, CLI and web UI, TypeScript support
  • troubleshooting.md -- setup errors (missing __init__.py, root_agent, API keys), runtime issues (empty responses, state sharing, LoopAgent), context/session errors (compaction, rewind, resume, rate limiting), A2A errors, MCP integration, testing tips, performance
  • multi-language.md -- Java (builder pattern, @Schema annotations, Maven), Go (struct config, launcher), TypeScript (Zod schemas, npm), cross-language tool comparison

The skill also references the official ADK documentation and ADK samples for always up-to-date API details.

Install

Quick Install (recommended)

Install across all your agents with a single command using the Skills CLI:

npx skills add miticojo/adk-skill

The CLI auto-detects installed agents (Claude Code, Cursor, Windsurf, OpenCode, etc.) and installs the skill to each one.

Claude Code

claude mcp add-skill https://github.com/miticojo/adk-skill/tree/main/adk-skill

Or manually:

git clone https://github.com/miticojo/adk-skill.git
cp -r adk-skill/adk-skill ~/.claude/skills/

Google Antigravity

cp -r adk-skill/adk-skill ~/.gemini/antigravity/skills/

Or for workspace-only scope, copy to <your-project>/.agent/skills/. See the Antigravity skills docs for details.

Gemini CLI

cp -r adk-skill/adk-skill ~/.gemini/skills/

OpenCode

cp -r adk-skill/adk-skill ~/.config/opencode/skills/

OpenAI Codex

cp -r adk-skill/adk-skill ~/.codex/skills/

Cursor / Windsurf / Other Agents

Copy the adk-skill/ folder into your project's .cursor/skills/, .windsurf/skills/, or equivalent agent skills directory. The skill follows the open Agent Skills specification and works with any compatible agent.

Manual (any agent)

Just copy the adk-skill/ folder wherever your agent reads skills from. The only required file is SKILL.md -- the references/ folder provides additional context loaded on demand.

When Does It Activate?

The skill activates when you mention:

  • ADK, google-adk, Google Agent Development Kit
  • Building AI agents with Gemini in Python, Java, Go, or TypeScript
  • Multi-agent architectures or agent orchestration
  • Sequential, parallel, or loop agent workflows
  • Agent tools, callbacks, state management
  • Deploying agents, writing agent tests
  • A2A protocol, remote agents, agent-to-agent communication
  • Integrating MCP tools or Agent Skills with ADK
  • Streaming, Live API, AG-UI, plugins

Topics Covered

Area What You Get
Languages Python, Java, Go, TypeScript with language-specific patterns
Project Setup Directory structure, __init__.py, root_agent, pyproject.toml
Agent Types LlmAgent, SequentialAgent, ParallelAgent, LoopAgent, composition
Tools Function tools, ToolContext, AgentTool, google_search, MCPToolset, SkillToolset, RemoteA2aAgent
Callbacks & Plugins Agent/tool/model lifecycle hooks; BasePlugin for global cross-cutting concerns
State & Sessions Session state, scopes (app:, user:, temp:), context compaction, session rewind, resumability
Output Pydantic output_schema + output_key for structured data
Testing InMemoryRunner with pytest
Evaluation 8 metrics, adk eval CLI, pytest, web UI, user simulation
Design Patterns Sequential pipeline, fan-out/fan-in, reflection, routing, planning, error handling, HITL, guardrails, resource tiering, reasoning, context engineering, 12 anti-patterns
Patterns Pipeline+validation, coordinator+specialists, parallel research, guardrails
A2A Protocol Expose via to_a2a(), consume via RemoteA2aAgent, agent cards, Python + Go
Models Gemini 2.5/3, Claude, Ollama, LiteLLM, vLLM; Interactions API
Streaming Gemini Live API, LiveRequestQueue, bidirectional audio/video
UI Integration AG-UI protocol, CopilotKit, shared state, generative UI
Deployment adk run/web, Cloud Run, Vertex AI, FastAPI
Safety before_model guardrails, Plugins, LlmAsAJudge, ModelArmor
External Docs Links to official ADK docs and Google sample agents

Effectiveness

Tested by asking the same ADK architecture question (multi-source parallel research with validation, error handling, and user review) under three conditions:

Condition Score vs Baseline
No skill 33/100 --
Skill without design patterns 60/100 +82%
Skill with design patterns 86/100 +161%

Largest improvements from design patterns: architecture correctness (4 → 9), anti-pattern avoidance (2 → 9), structured output (1 → 9). The design patterns reference transformed outputs from single "God Agent" implementations into properly composed multi-agent pipelines with fan-out/fan-in, layered fallback, model tiering, and structured data flow.

License

MIT

About

Agent Skill for building AI agents with Google's Agent Development Kit (ADK) in Python, Java, Go, and TypeScript

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors