
Adk Scaffold
Scaffold or extend Google ADK agent projects with agent-starter-pack, RAG datastores, A2A exposure, and Cloud deployment choices.
Overview
adk-scaffold is an agent skill most often used in Build (also Ship) that walks you through agent-starter-pack scaffolding and enhancements for Google ADK projects.
Install
npx skills add https://github.com/google/adk-docs --skill adk-scaffoldWhat is this skill?
- MUST READ gate before any new ADK agent or project enhancement
- Runs agent-starter-pack via uvx with guided requirement gathering (problem, APIs, safety, deployment)
- RAG paths: Vertex AI Vector Search vs Vertex AI Search via --agent agentic_rag --datastore
- A2A exposure with --agent adk_a2a for multi-agent interoperability
- Deployment options: prototype-first vs Agent Engine, Cloud Run, or GKE
- 4 always-ask requirement questions
- 2 Vertex datastore choices for agentic_rag
Adoption & trust: 2.7k installs on skills.sh; 1.4k GitHub stars; 3/3 security scanners passed (skills.sh audits).
What problem does it solve?
You want a new ADK agent or upgrades like RAG, A2A, or CI/CD but lack a consistent project layout and deployment path on GCP.
Who is it for?
Builders starting or extending Google ADK agents who need structured prompts for RAG, A2A, safety, and GCP deployment targets.
Skip if: Teams not using ADK or agent-starter-pack who only need generic Python microservice templates without agent tooling.
When should I use this skill?
User wants to build a new ADK agent or enhance an existing project (CI/CD, RAG, deployment).
What do I get? / Deliverables
You get requirement-aligned uvx agent-starter-pack commands, template choices, and a scaffolded ADK repo ready for prototype or chosen cloud deployment.
- Scaffolded ADK project tree
- Selected agent template and datastore flags
- Deployment-oriented project config from starter-pack
Recommended Skills
Journey fit
Spans multiple journey phases - primary shelf plus alternate fits below.
Canonical shelf is Build because the skill gates creating and enhancing ADK agent codebases before implementation proceeds. Agent-tooling fits the ADK starter-pack workflow, requirement interviews, and agent template selection (RAG, A2A, base agent).
Where it fits
Clarify agent purpose, APIs, and safety guardrails before committing to an ADK template.
Run uvx agent-starter-pack with agentic_rag or adk_a2a flags after requirement answers.
Wire external APIs and datastore auth requirements into the starter scaffold.
Choose prototype-only versus Agent Engine, Cloud Run, or GKE deployment paths.
How it compares
Opinionated ADK scaffolding skill, not a generic MCP server or hand-rolled monorepo generator.
Common Questions / FAQ
Who is adk-scaffold for?
Solo and indie developers shipping Google ADK agents who want the agent to read scaffolding rules before writing project files or deployment config.
When should I use adk-scaffold?
Use it in Build when creating a new agent (search, RAG, A2A) or enhancing repos with CI/CD and datastores; use Ship when choosing Agent Engine, Cloud Run, or GKE deployment.
Is adk-scaffold safe to install?
It is Google-authored under Apache-2.0; review the Security Audits panel on this Prism page and validate uvx/agent-starter-pack sources before running in production accounts.
SKILL.md
READMESKILL.md - Adk Scaffold
# ADK Project Scaffolding Guide Use the `agent-starter-pack` CLI (via `uvx`) to create new ADK agent projects or enhance existing ones with deployment, CI/CD, and infrastructure scaffolding. --- ## Step 1: Gather Requirements Start with the use case, then ask follow-ups based on answers. **Always ask:** 1. **What problem will the agent solve?** — Core purpose and capabilities 2. **External APIs or data sources needed?** — Tools, integrations, auth requirements 3. **Safety constraints?** — What the agent must NOT do, guardrails 4. **Deployment preference?** — Prototype first (recommended) or full deployment? If deploying: Agent Engine, Cloud Run, or GKE? **Ask based on context:** - If **retrieval or search over data** mentioned (RAG, semantic search, vector search, embeddings, similarity search, data ingestion) → **Datastore?** Use `--agent agentic_rag --datastore <choice>`: - `vertex_ai_vector_search` — for embeddings, similarity search, vector search - `vertex_ai_search` — for document search, search engine - If agent should be **available to other agents** → **A2A protocol?** Use `--agent adk_a2a` to expose the agent as an A2A-compatible service. - If **full deployment** chosen → **CI/CD runner?** GitHub Actions (default) or Google Cloud Build? - If **Cloud Run** or **GKE** chosen → **Session storage?** In-memory (default), Cloud SQL (persistent), or Agent Engine (managed). - If **deployment with CI/CD** chosen → **Git repository?** Does one already exist, or should one be created? If creating, public or private? --- ## Step 2: Write DESIGN_SPEC.md Compose a **detailed** spec with these sections. Present the full spec for user approval before scaffolding. ```markdown # DESIGN_SPEC.md ## Overview 2-3 paragraphs describing the agent's purpose and how it works. ## Example Use Cases 3-5 concrete examples with expected inputs and outputs. ## Tools Required Each tool with its purpose, API details, and authentication needs. ## Constraints & Safety Rules Specific rules — not just generic statements. ## Success Criteria Measurable outcomes for evaluation. ## Edge Cases to Handle At least 3-5 scenarios the agent must handle gracefully. ``` The spec should be thorough enough for another developer to implement the agent without additional context. --- ## Step 3: Create or Enhance the Project ### Create a New Project ```bash uvx agent-starter-pack create <project-name> \ --agent <template> \ --deployment-target <target> \ --region <region> \ --prototype \ -y ``` **Constraints:** - Project name must be **26 characters or less**, lowercase letters, numbers, and hyphens only. - Do NOT `mkdir` the project directory before running `create` — the CLI creates it automatically. If you mkdir first, `create` will fail or behave unexpectedly. - Auto-detect the guidance filename based on the IDE you are running in and pass `--agent-guidance-filename` accordingly. - When enhancing an existing project, check where the agent code lives. If it's not in `app/`, pass `--agent-directory <dir>` (e.g. `--agent-directory agent`). Getting this wrong causes enhance to miss or misplace files. #### Create Flags | Flag | Short | Default | Description | |------|-------|---------|-------------| | `--agent` | `-a` | `adk` | Agent template (see template table below) | | `--deployment-target` | `-d` | `agent_engine` | Deployment target (`agent_engine`, `cloud_run`, `gke`, `none`) | | `--region` | | `us-central1` | GCP region | | `--prototype` | `-p` | off | Skip CI/CD and Terraform (recommended for first pass) | | `--cicd-runner` | | `skip` | `github_actions` or `google_cloud_build` | | `--datastore` | `-ds` | — | Datast