Create, test, debug, and compose Google ADK skills with per-skill dynamic tool injection. Use when the user wants to build a new ADK skill from scratch, run evals on an existing skill, improve a skill's description for better activation accuracy, or assemble multiple skills into a single agent.
How this skill is triggered — by the user, by Claude, or both
Slash command
/google-adk-skill-creator:adk-skill-creatorThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
A skill for building, evaluating, and composing Google ADK skills using the `SkillRuntime` + `adk_additional_tools` pattern.
agents/analyzer.mdagents/comparator.mdagents/grader.mdeval-viewer/generate_review.pyeval-viewer/viewer.htmlevals/evals.jsonreferences/adk-skill-format.mdreferences/adk-tools-pattern.mdreferences/cicd-guide.mdreferences/schemas.mdscripts/__init__.pyscripts/adk_runner.pyscripts/aggregate_benchmark.pyscripts/check_pass_rate.pyscripts/compose.pyscripts/eval_pipeline.pyscripts/generate_report.pyscripts/improve_description.pyscripts/package_skill.pyscripts/quick_validate.pyA skill for building, evaluating, and composing Google ADK skills using the SkillRuntime + adk_additional_tools pattern.
PYTHONPATH=skills/adk-skill-creator \
python skills/adk-skill-creator/scripts/scaffold.py <name> <output_dir>
Then:
SKILL.md — write a precise description (this controls when the agent uses the skill) and the instructions bodytools.py — implement SkillRuntime.__init__ with real dependencies, add tool methods, update get_tools()adk_additional_tools in SKILL.md frontmatter to match the method names exactlySee references/adk-skill-format.md and references/adk-tools-pattern.md.
PYTHONPATH=skills/adk-skill-creator \
python skills/adk-skill-creator/scripts/quick_validate.py <skill_dir>
Fix any reported mismatches before running evals.
Edit evals/evals.json with realistic user prompts. Each eval needs:
prompt: a realistic user messageexpected_skill_activated: true for prompts that should trigger this skillexpectations: list of verifiable assertions about the responseEdit evals/eval_factory.py to return a mock SkillRuntime with fixture data.
PYTHONPATH=skills/adk-skill-creator \
python skills/adk-skill-creator/scripts/run_eval.py <skill_dir> --model gemini-2.0-flash
Results land in runs/<timestamp>/eval_N/. Run the grader agent (agents/grader.md) on each eval_N/ directory to grade the assertions.
After grading:
skill_activated: false on cases that should trigger → description needs work → go to step 6Use agents/comparator.md to compare two versions of a skill head-to-head.
Create a trigger evals file (JSON array):
[
{"query": "show my recent transactions", "should_trigger": true},
{"query": "what is the weather today", "should_trigger": false},
{"query": "what did I spend last week", "should_trigger": true}
]
Test a candidate description:
PYTHONPATH=skills/adk-skill-creator \
python skills/adk-skill-creator/scripts/run_loop.py <skill_dir> trigger_evals.json \
--description "Your candidate description here"
The script prints accuracy and per-query results. Propose improved descriptions based on failing cases and repeat until accuracy is satisfactory.
Create agent.yaml at the project root (see references/schemas.md):
name: banking-assistant
model: gemini-2.0-flash
skills:
- skills/account-movements
- skills/transfer
runtime_factory: runtime_factory.py
Create runtime_factory.py with build_runtimes() -> dict[str, object] (see references/adk-tools-pattern.md).
Test composition:
PYTHONPATH=skills/adk-skill-creator python -c "
from pathlib import Path
from scripts.compose import compose_agent
from runtime_factory import build_runtimes
agent = compose_agent(Path('agent.yaml'), build_runtimes())
print('Agent composed successfully:', agent.name)
"
Write multi_skill_evals.json and run evals for cross-skill scenarios (see references/schemas.md).
PYTHONPATH=skills/adk-skill-creator \
python skills/adk-skill-creator/scripts/package_skill.py <skill_dir>
Validates and produces <skill_dir>.skill zip. See references/cicd-guide.md for publishing.
references/adk-skill-format.md — skill directory structure, SKILL.md format, how ADK activates skillsreferences/adk-tools-pattern.md — SkillRuntime class pattern, runtime_factory.py, eval_factory.pyreferences/schemas.md — all JSON/YAML schemasreferences/cicd-guide.md — CI/CD pipeline and skill registryagents/grader.md — grades eval results (includes deterministic skill_activated check)agents/analyzer.md — post-hoc analysis of comparator resultsagents/comparator.md — blind A/B comparison of two skill versionsnpx claudepluginhub iamdgarcia/google_adk_skill_creator --plugin google-adk-skill-creatorProvides a checklist for code reviews covering functionality, security, performance, maintainability, tests, and quality. Use for pull requests, audits, team standards, and developer training.