Skills
Build and evaluate Google ADK Python agents with ak:google-adk-python
Design Google ADK agent structure, tools, sessions, multi-agent workflows, evaluation, and deployment artifacts while verifying the installed SDK and provider contract.
Use ak:google-adk-python to design or implement Python agents with Google's
Agent Development Kit. The Skill covers single and multi-agent composition,
workflow agents, tools and MCP, A2A, sessions, state, memory, artifacts,
callbacks, plugins, evaluation, and deployment planning. Treat its API and model
examples as tagged guidance that must be checked against the installed SDK.
Choose ak:google-adk-python for an ADK codebase
Use ak:google-adk-python when
- You are creating or changing a Python agent that uses Google ADK.
- You need sequential, parallel, loop, coordinator, or remote A2A patterns.
- You are integrating Python functions, long-running tools, MCP servers, state, artifacts, memory, callbacks, plugins, or tracing.
- You need an evaluation set, CLI test route, service wrapper, or deployment artifacts for Cloud Run, Vertex AI, or GKE.
Choose another workflow when
- You are still choosing an agent framework. Compare requirements and current primary documentation before committing to ADK.
- You need a provider-independent architecture only. Use
ak:askorak:planand keep the framework as a decision. - You need to build an MCP server rather than consume one as an ADK tool. Use an MCP-building workflow.
- You only need deployment of an already verified application. Use
ak:deployorak:devopswith the provider boundary made explicit.
Prepare the SDK, provider, and project
Before you start:
- Complete Onboarding, and confirm Engineer Kit is installed for the active runtime and scope.
- Identify the installed
google-adkversion, Python version, package manager, project layout, model provider, model ID, region, authentication method, and target environment. - Verify current ADK and provider documentation for every load-bearing API, command, model, service, quota, price, region, and deployment claim.
- Provide test credentials only through the project's approved secret mechanism. Keep production keys and customer data outside prompts and fixtures.
- Define tool permissions, data retention, session and memory boundaries, human approvals, evaluation criteria, latency or cost budget, and deployment authority.
The tagged Skill recommends Python 3.10 or newer and describes Python 3.11 as the preferred development baseline. It also uses this discovery convention:
my_agent/
├── __init__.py
└── agent.pyThe source expects agent.py to expose root_agent or app, with the package
initialization importing the agent definition. Confirm the current ADK loader
contract before creating or restructuring files.
| Runtime | Invocation | Availability boundary |
|---|---|---|
| Claude Code | /ak:google-adk-python ... | Can inspect and edit the Python project and run approved local checks. Provider calls, MCP servers, cloud CLIs, and deployment require separately available access. |
| Cursor | /ak:google-adk-python ... | Slash invocation is user-verified. Equivalent tools, credentials, subagent behavior, and cloud access depend on the Cursor session. |
| Codex | $ak:google-adk-python ... | Uses native Skill discovery. Project tools and provider access depend on the session; Engineer Hook projection remains partial. |
See Runtime adapters for broader target differences.
Run the Skill
Pass the agent outcome and operating boundaries in natural language. The Skill does not define its own mode flags; ADK CLI commands belong to the generated or existing project and must match its installed version.
/ak:google-adk-python "Add a Google ADK Python support agent to this existing package. Use the installed SDK, expose read-only account tools through a filtered MCPToolset, keep approval for any write, add a small eval set and unit tests, and do not call a paid model or deploy."/ak:google-adk-python "Add a Google ADK Python support agent to this existing package. Use the installed SDK, expose read-only account tools through a filtered MCPToolset, keep approval for any write, add a small eval set and unit tests, and do not call a paid model or deploy."$ak:google-adk-python "Add a Google ADK Python support agent to this existing package. Use the installed SDK, expose read-only account tools through a filtered MCPToolset, keep approval for any write, add a small eval set and unit tests, and do not call a paid model or deploy."For a new project, specify whether the deliverable is architecture only, a local prototype, an evaluated service, or deployment-ready artifacts. Each outcome crosses a different dependency and authority boundary.
Select an agent and state pattern deliberately
| Need | Tagged pattern | Evidence to require |
|---|---|---|
| Dynamic reasoning and tool routing | Agent or LlmAgent | Model/tool behavior under representative prompts |
| Fixed pipeline | SequentialAgent | Step order, intermediate state, and failure handling |
| Independent concurrent work | ParallelAgent | Isolation, aggregation, limits, and deterministic tests |
| Bounded refinement | LoopAgent | Exit rule, max_iterations, cost and failure bounds |
| Remote collaboration | RemoteA2aAgent | Current A2A contract, agent card, authentication, timeout, and recovery |
| Temporary per-session values | ToolContext.state | Session lifecycle and persistence test |
| Binary or large outputs | Artifacts | Storage backend, version behavior, access, retention, and cleanup |
| Cross-session recall | Memory service | Data governance, retrieval quality, deletion, and cost |
Use an App when the verified SDK and project need plugins, event compaction, or
custom lifecycle behavior. Do not add production infrastructure merely because
a reference example shows it.
Observe an evidence-led ADK workflow
- The run verifies the installed contract. It inspects package versions, imports, existing agents, configuration, provider setup, and current primary docs before choosing APIs or model IDs.
- The run defines the agent boundary. It writes the responsibility, instructions, tools, data, session behavior, human approvals, and failure behavior before code.
- The run selects composition and persistence. It chooses dynamic versus workflow agents and separates ephemeral state, artifacts, sessions, and long-term memory.
- The run implements the smallest surface. It adds agent modules, typed and documented tools, filtered MCP access, callbacks or plugins only where the requirements need them.
- The run tests without hiding model variance. It runs deterministic unit checks first, then approved integration and evaluation cases, recording model, provider, configuration, inputs, and results.
- The run prepares deployment separately. Cloud Run, Vertex AI, GKE, secrets, scaling, observability, and rollback become an explicit deployment phase rather than an automatic continuation.
The tagged guide lists adk web <agents_dir>, adk run <agent_dir>,
adk api_server <agents_dir>, and adk eval <agent> <evalset.json> as core
development routes. Check adk --help and the installed package before using
their exact argument shape.
Keep model, tool, data, and cloud effects explicit
Agent tests can call real services
Running an ADK agent may invoke a model, MCP server, database, remote agent, or cloud API. That can transmit data, mutate systems, consume quota, and incur cost even when the command is described as a test.
- Default tools and fixtures to local, fake, read-only, or sandboxed behavior. Require confirmation immediately before sensitive or irreversible operations.
- Filter MCP tools to the smallest surface, validate arguments, set timeouts, and test error propagation and session behavior.
- Do not log prompts, tool arguments, model responses, traces, session state, memory, or artifacts without applying the project's privacy and retention policy.
- Treat every model name in the tagged references, including Gemini examples and non-Google provider claims, as point-in-time. Verify present availability, compatibility, pricing, and data terms.
- Ask separately before package installation, model calls, remote evaluation, cloud resource creation, secret changes, traffic exposure, deployment, or deletion.
Verify code, evaluations, and deployment evidence
A complete implementation should provide:
- The agent responsibility, composition, model and provider contract, tool list, approval gates, and persistence design.
- Exact files created or changed, including agent modules, tools, tests, eval sets, configuration, and any approved deployment artifacts.
- Installed SDK and Python versions, commands run, unit results, integration results, and evaluation criteria with pass and failure evidence.
- Evidence that tool filters, invalid inputs, timeouts, provider failures, session boundaries, artifact access, and human approvals behave as intended.
- Model-call count or available usage evidence, external services contacted, known cost exposure, skipped live checks, and remaining portability risk.
- For deployment, the target project and region, identity, secret references, health evidence, observability, scaling bounds, rollback route, and URL or endpoint only after an authorized deployment actually succeeds.
An evaluation score is not a production guarantee. Record the cases, judge or matcher, model configuration, sample size, and known blind spots.
Troubleshoot or continue
| Symptom | Safe next step |
|---|---|
| An import or constructor from the guide fails | Inspect the installed google-adk version and current primary docs; adapt the code instead of pinning blindly to the tagged example. |
| A model ID is rejected or unavailable | Query the approved provider's current model catalog and region access, then choose explicitly with cost and compatibility review. |
| The ADK CLI rejects the documented command shape | Use the installed adk --help; the reference commands are point-in-time guidance. |
| An MCP tool error ends or corrupts a session | Reproduce against the installed ADK and MCP versions, inspect literal events, and upgrade or add bounded recovery only with evidence. |
| Tests unexpectedly call external systems | Stop, replace tools and models with fakes or sandbox endpoints, and re-run after confirming the authority boundary. |
| Evals pass but behavior remains unsafe | Add adversarial, tool-permission, data-leakage, timeout, and failure-path cases; keep deployment blocked. |
| The runtime does not recognize the Skill | Confirm target and scope, restart the session, then follow Runtime cannot find a Skill or Agent. |
Continue with Testing, Web testing, or Deployment only when those next actions are in scope.
Know the current limits
- The Skill bundles guidance and examples, not
google-adk, Python, a model, credentials, MCP servers, cloud CLIs, cloud resources, or an eval dataset. - Several API, CLI, server endpoint, model, memory, plugin, and deployment examples are tied to the tagged source and may not match the installed SDK.
- Model-agnostic intent does not prove feature parity across providers or models.
- Stable and beta contain identical
ak:google-adk-pythonSkill files for this release pair; provider and SDK behavior may still evolve independently.
Target signed-in Chrome state with ak:chrome-profile
Open an exact tab in an approved real Chrome profile, bind through Chrome DevTools MCP, and protect account state.
Curate LLM-friendly documentation indexes with ak:llms
Scan local Markdown documentation, generate llms.txt and optional llms-full.txt artifacts, then review titles, descriptions, URLs, curation, and publication safety.