adk-dev-guide▌
google/adk-docs · updated May 6, 2026
MDX-style export adds YAML metadata + attribution linking explainx.ai and this canonical listing URL.
Essential reference guide for ADK agent development, covering spec-driven workflow, code preservation rules, and operational best practices.
- ›Read DESIGN_SPEC.md first as your primary source of truth; all implementation decisions must align with it
- ›Follow four mandatory phases: understand spec, build and implement, evaluate (using /adk-eval-guide ), and deploy with human approval
- ›Preserve all unrelated code when making modifications; only alter explicitly targeted segments and never c
ADK Development Workflow & Guidelines
Session Continuity
If this is a long session, re-read the relevant skill before each phase —
/adk-cheatsheet before writing code, /adk-eval-guide before running evals,
/adk-deploy-guide before deploying, /adk-scaffold before scaffolding.
Context compaction may have dropped earlier skill content.
DESIGN_SPEC.md — Your Primary Reference
IMPORTANT: If DESIGN_SPEC.md exists in this project, it is your primary source of truth.
Read it FIRST to understand:
- Functional requirements and capabilities
- Success criteria and quality thresholds
- Agent behavior constraints
- Expected tools and integrations
The spec is your contract. All implementation decisions should align with it. When in doubt, refer back to DESIGN_SPEC.md.
Phase 1: Understand the Spec
Before writing any code:
- Read
DESIGN_SPEC.mdthoroughly - Identify the core capabilities required
- Note any constraints or things the agent should NOT do
- Understand success criteria for evaluation
Phase 2: Build and Implement
Implement the agent logic:
- Write/modify code in the agent directory (check the agent guidance file, e.g. GEMINI.md or CLAUDE.md, for directory name)
- Use
make playground(oradk web .) for interactive testing during development - Iterate on the implementation based on user feedback
For ADK API patterns and code examples, use /adk-cheatsheet.
Phase 3: Evaluate
This is the most important phase. Evaluation validates agent behavior end-to-end using evalsets and scoring metrics.
MANDATORY: Activate /adk-eval-guide before running evaluation. It contains the evalset schema, config format, and critical gotchas. Do NOT skip this.
Tests (pytest) are NOT evaluation. They test code correctness but say nothing about whether the agent behaves correctly. Always run adk eval.
- Start small: Begin with 1-2 sample eval cases, not a full suite
- Run evaluations:
adk eval(ormake evalif the project has a Makefile) - Discuss results with the user
- Fix issues and iterate on the core cases first
- Only after core cases pass, add edge cases and new scenarios
- Repeat until quality thresholds are met
Expect 5-10+ iterations here.
Phase 4: Deploy
Once evaluation thresholds are met:
- Deploy when ready — see
/adk-deploy-guidefor deployment options
IMPORTANT: Never deploy without explicit human approval.
Operational Guidelines for Coding Agents
Principle 1: Code Preservation & Isolation
When executing code modifications, your paramount objective is surgical precision. You must alter only the code segments directly targeted by the user's request, while strictly preserving all surrounding and unrelated code.
Mandatory Pre-Execution Verification:
Before finalizing any code replacement, verify:
- Target Identification: Clearly define the exact lines or expressions to be changed, based solely on the user's explicit instructions.
- Preservation Check: Ensure all code, configuration values (e.g.,
model,version,api_key), comments, and formatting outside the identified target remain identical.
Example:
- User Request: "Change the agent's instruction to be a recipe suggester."
- Incorrect (VIOLATION):
root_agent = Agent( name="recipe_suggester", model="gemini-1.5-flash", # UNINTENDED - model was not requested to change instruction="You are a recipe suggester." ) - Correct (COMPLIANT):
root_agent = Agent( name="recipe_suggester", # OK, related to new purpose model="gemini-3-flash-preview", # PRESERVED instruction="You are a recipe suggester." # OK, the direct target )
Principle 2: Execution Best Practices
-
Model Selection — CRITICAL:
- NEVER change the model unless explicitly asked. If the code uses
gemini-3-flash-preview, keep it asgemini-3-flash-preview. Do NOT "upgrade" or "fix" model names. - When creating NEW agents (not modifying existing), use Gemini 3 series:
gemini-3-flash-preview,gemini-3-pro-preview. - Do NOT use older models (
gemini-2.0-flash,gemini-1.5-flash, etc.) unless the user explicitly requests them.
- NEVER change the model unless explicitly asked. If the code uses
-
Location Matters More Than Model:
- If a model returns a 404, it's almost always a
GOOGLE_CLOUD_LOCATIONissue (e.g., needingglobalinstead ofus-central1). - Changing the model name to "fix" a 404 is a violation — fix the location instead.
- Some models (like
gemini-3-flash-preview) require specific locations. Check the error message for hints.
- If a model returns a 404, it's almost always a
-
ADK Built-in Tool Imports (Precision Required):
# CORRECT - imports the tool instance from google.adk.tools.load_web_page import load_web_page # WRONG - imports the module, not the tool from google.adk.tools import load_web_pagePass the imported tool directly to
tools=[load_web_page], nottools=[load_web_page.load_web_page]. -
Running Python Commands:
- Always use
uvto execute Python commands (e.g.,uv run python script.py) - Run
make install(oruv sync) before executing scripts - Consult
MakefileandREADME.mdfor available commands (if present)
- Always use
-
Breaking Infinite Loops:
- Stop immediately if you see the same error 3+ times in a row
- Don't retry failed operations — fix the root cause first
- RED FLAGS: Lock IDs incrementing, names appending v5->v6->v7, "I'll try one more time" repeatedly
- State conflicts (Error 409: Resource already exists): Import existing resources with
terraform importinstead of retrying creation - Tool bugs: Fix source code bugs before continuing — don't work around them
- When stuck: Run underlying commands directly (e.g.,
terraformCLI) instead of calling problematic tools
-
Troubleshooting:
- Check
/adk-cheatsheetfirst — it covers most common patterns - Search the installed ADK package with Glob/Grep/Read (find it with
python -c "import google.adk; print(google.adk.__path__[0])"— useuv run pythonif using uv) - For ADK docs index, use
curl https://adk.dev/llms.txt - For framework questions or GCP products, check official documentation
- When encountering persistent errors, a targeted Google Search often finds solutions faster
- Check
Scaffold as Reference
When you need specific infrastructure files but don't want to scaffold the current project directly, use the /adk-scaffold skill to create a temporary reference project in /tmp/ and copy over what you need.
See /adk-scaffold for full CLI commands and options.
Development Commands
Projects created via the Agent Starter Pack CLI include a Makefile with these commands.
To create or enhance a project, see the /adk-scaffold skill for full instructions.
For non-scaffolded projects, use the ADK CLI equivalents.
| Make (scaffolded) | ADK CLI equivalent | Purpose |
|---|---|---|
make playground |
adk web . |
Interactive local testing |
make test |
pytest |
Run unit and integration tests |
make eval |
adk eval <agent_dir> <evalset> |
Run evaluation against evalsets |
make lint |
ruff check . |
Check code quality |
make setup-dev-env |
— (scaffolded only) | Set up dev infrastructure (Terraform) |
make deploy |
— (scaffolded only) | Deploy to dev (requires human approval) |
Skills Version
Troubleshooting hint: If you encounter repeated errors, unexpected tool failures, or instructions in these skills that seem incomplete or reference features you can't find, the skills may be outdated. Run:
npx skills check -gIf it reports outdated skills, tell the user to update:
npx skills update -gDo NOT run this check on every session — only when you suspect stale skills are causing problems.
How to use adk-dev-guide on Cursor
AI-first code editor with Composer
Prerequisites
Before installing skills in Cursor, ensure your development environment meets these requirements:
- ›Cursor installed and configured on your development machine
- ›Node.js version 16.0+ with npm package manager (verify with
node --version) - ›Active project directory or workspace where you want to add adk-dev-guide
Execute installation command
Execute the skills CLI command in your project's root directory to begin installation:
The skills CLI fetches adk-dev-guide from GitHub repository google/adk-docs and configures it for Cursor.
Select Cursor when prompted
The CLI will show a list of available agents. Use arrow keys to navigate and space to select Cursor:
Verify installation
Confirm successful installation by checking the skill directory location:
Reload or restart Cursor to activate adk-dev-guide. Access the skill through slash commands (e.g., /adk-dev-guide) or your agent's skill management interface.
Security & Verification Notice
We perform automated surface-level scans (Gen AI Scanner, Socket, Snyk) during installation. These checks detect common vulnerabilities but do not guarantee complete security. Always review skill source code and verify the publisher's reputation before production use.
Skills execute code in your development environment. Always verify the publisher's identity, review recent commits, and test in isolated environments before production deployment.
List & Monetize Your Skill
Submit your Claude Code skill and start earning
Use Cases▌
Task Automation & Efficiency
Automate repetitive workflows and reduce manual effort
Example
Generate reports, summarize documents, draft communications
Save 3-5 hours per week on routine tasks
Knowledge Enhancement
Learn new skills, understand complex topics, get expert guidance
Example
Explain concepts, provide examples, suggest learning resources
Accelerate learning and skill development by 2x
Quality Improvement
Enhance output quality through reviews, suggestions, and refinements
Example
Review drafts, suggest improvements, catch errors
Improve work quality by 30-40% with less effort
Implementation Guide▌
Prerequisites
- ›Claude Desktop or compatible AI client with skill support
- ›Clear understanding of task or problem to solve
- ›Willingness to iterate and refine outputs
Time Estimate
15-45 minutes depending on use case complexity
Installation Steps
- 1.Install skill using provided installation command
- 2.Test with simple use case relevant to your work
- 3.Evaluate output quality and relevance
- 4.Iterate on prompts to improve results
- 5.Integrate into regular workflow if valuable
Common Pitfalls
- ⚠Expecting perfect results without iteration
- ⚠Not providing enough context in prompts
- ⚠Using skill for tasks outside its intended scope
- ⚠Accepting outputs without review and validation
Best Practices▌
✓ Do
- +Start with clear, specific prompts
- +Provide relevant context and constraints
- +Review and refine all outputs before using
- +Iterate to improve output quality
- +Document successful prompt patterns
✗ Don't
- −Don't use without understanding skill limitations
- −Don't skip validation of outputs
- −Don't share sensitive information in prompts
- −Don't expect skill to replace human judgment
💡 Pro Tips
- ★Be specific about desired format and style
- ★Ask for multiple options to choose from
- ★Request explanations to understand reasoning
- ★Combine AI efficiency with human expertise
When to Use This▌
✓ Use When
Use when skill capabilities match your task, clear ROI on time saved, and you can validate outputs. Best for repetitive tasks, learning, and quality improvement.
✗ Avoid When
Avoid when task requires deep expertise you can't validate, involves sensitive decisions, or when learning process is more valuable than speed of completion.
Learning Path▌
- 1Familiarize yourself with skill capabilities and limitations
- 2Start with low-risk, non-critical tasks
- 3Progress to more complex and valuable use cases
- 4Build expertise through regular use and experimentation
Discussion
Product Hunt–style comments (not star reviews)- No comments yet — start the thread.
Ratings
4.6★★★★★25 reviews- ★★★★★Neel Johnson· Dec 24, 2024
adk-dev-guide reduced setup friction for our internal harness; good balance of opinion and flexibility.
- ★★★★★Pratham Ware· Dec 4, 2024
adk-dev-guide has been reliable in day-to-day use. Documentation quality is above average for community skills.
- ★★★★★Yash Thakker· Nov 23, 2024
Solid pick for teams standardizing on skills: adk-dev-guide is focused, and the summary matches what you get after install.
- ★★★★★Ira Ndlovu· Nov 15, 2024
Registry listing for adk-dev-guide matched our evaluation — installs cleanly and behaves as described in the markdown.
- ★★★★★Evelyn Kim· Nov 3, 2024
adk-dev-guide fits our agent workflows well — practical, well scoped, and easy to wire into existing repos.
- ★★★★★Dhruvi Jain· Oct 14, 2024
We added adk-dev-guide from the explainx registry; install was straightforward and the SKILL.md answered most questions upfront.
- ★★★★★Liam Mensah· Oct 6, 2024
adk-dev-guide fits our agent workflows well — practical, well scoped, and easy to wire into existing repos.
- ★★★★★Oshnikdeep· Sep 21, 2024
adk-dev-guide fits our agent workflows well — practical, well scoped, and easy to wire into existing repos.
- ★★★★★Michael Yang· Sep 1, 2024
Solid pick for teams standardizing on skills: adk-dev-guide is focused, and the summary matches what you get after install.
- ★★★★★Aditi Malhotra· Aug 20, 2024
We added adk-dev-guide from the explainx registry; install was straightforward and the SKILL.md answered most questions upfront.
showing 1-10 of 25