# Scaffold Python Recipe

Should be used when the user wants to "create a new Python ADK recipe", "scaffold a new...

- Repository: https://github.com/google/adk-recipes (10565 stars)
- Category: Engineering
- License: Apache-2.0
- Last updated: 2026-11-01
- Runs scripts: yes, review before use

## Install

Claude Code: `npx skills add google/adk-recipes --skill scaffold-python-recipe -g -a claude-code -y`
Codex: `npx skills add google/adk-recipes --skill scaffold-python-recipe -g -a codex -y`
Cursor: `npx skills add google/adk-recipes --skill scaffold-python-recipe -g -a cursor -y`
Gemini CLI: `npx skills add google/adk-recipes --skill scaffold-python-recipe -g -a gemini-cli -y`

## Description

This skill should be used when the user wants to "create a new Python ADK recipe", "scaffold a new Python recipe", "generate a new Python recipe in contrib", "add a new Python recipe to the adk-recipes repository", or "create a Python adk recipe". It utilizes an automated script to copy template files and resolve basic placeholders.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# Scaffolding a New Python ADK Recipe

Use this skill to scaffold a new Python ADK recipe inside this repository using the automated script at `scripts/scaffold.py`.

---

## Rules

1. **No Manual Boilerplate Writing**: Always use `scripts/scaffold.py` to create the recipe. Never write the boilerplate files manually.
2. **Do Not Modify After Scaffolding**: Once the script runs successfully, do not make any further changes to the recipe in this turn.
3. **Use the Correct Terminology (Recipe)**: Always refer to what is being created as a **recipe**, never as a "project". Ensure all output messages, instructions, and explanations to the user use "recipe" exclusively.

---

## Inputs

You **must** have both pieces of information below before running the script. If either is missing or was not explicitly provided by the user, **ask for it**, do not assume or use a default.

### 1. Output Directory (Required, must ask if not provided)

The user must choose one of these valid locations:
- `contrib/python/`, community recipes; preferred for new Python recipes
- `core/python/`, curated recipes
- `contrib/`, legacy flat layout, still accepted; prefer `contrib/python/`

If the user has not specified which directory, ask them to choose. Do not proceed until a valid choice is confirmed.

This skill **cannot** scaffold a vertical plugin (`plugins/<vertical>/<solution>/`). Those have a different shape, `SKILL.md`, `EVAL.yaml`, `scripts/`, `assets/`, `references/`, `tests/unit/`, and no template ships for them yet. If the user asks for one, tell them so rather than scaffolding into the wrong place.

### 2. Recipe Name (Required, must ask if not provided)

The recipe name must satisfy **all** of the following rules:
- Contains only lowercase letters and hyphens (`a-z`, `-`)
- Is 30 characters or less
- Does not start or end with a hyphen

The rest: https://github.com/google/adk-recipes/blob/HEAD/.agents/skills/scaffold-python-recipe/SKILL.md
