generate-manifest
Skill11k starsChanged 44 days agoApache-2.0View on GitHub
Scan an ADK recipe directory and generate a manifest.yaml for it based on the schema at .github/schemas/manifest-schema.json. Use when the user wants to create or generate a manifest.yaml for a recipe under core/, contrib/, or plugins/.
1 other project uses a version of this.
Trending
More talk lately.about the whole repository
Most recently taken up by
- google/adk-recipesword for word, first seen Sep 28, 2026
Who's talking about google/adk-samples
- @stephanjanssen.be“Google just open sourced a Python Agent Development Kit @ github.com/google/adk-p... Native Streaming and …”Bluesky · Apr 9, 2025 · 12 likes
- google/adk-python“stream_query and HTTP Streaming to Vertex AI Agent Return Empty/Exhausted Responses (Works via ADK Web)”GitHub · Jul 8, 2025 · 5 reactions
- google/adk-recipes“Support running agents fully locally without Vertex AI (offline mode)”GitHub · Apr 14, 2025 · 4 reactions
- google/adk-recipes“[BUG]: Deployment of Data Science agent to Agent Engine fails ”GitHub · Oct 1, 2025 · 3 reactions
- A Hacker News story“CaMeL-Powered Secure Agent Demo with ADK”Hacker News · Aug 9, 2025 · 3 points
The biggest 5 of 32 mentions linking to the repository that our crawl found. Each line is their own headline.
See all 32
Talked about on GitHub, Bluesky, Hacker News and Stack Overflow (32 times).
On GitHub · 23
- Jul 8, 2025stream_query and HTTP Streaming to Vertex AI Agent Return Empty/Exhausted Responses (Works via ADK Web) — google/adk-python5 reactions
- Apr 14, 2025Support running agents fully locally without Vertex AI (offline mode) — google/adk-recipes4 reactions · 7 comments
- Oct 1, 2025[BUG]: Deployment of Data Science agent to Agent Engine fails — google/adk-recipes3 reactions · 1 comment
- Oct 28, 2026docs: fix 5 broken internal anchor links and 1 dead external link — google-gemini/gemini-cli1 reaction · 4 comments
- Oct 20, 2026Update adk-samples references and python/agents discovery paths for google/adk-recipes restructure — google/agents-cli1 reaction · 2 comments
18 more on GitHub
- Oct 12, 2026list: scan the template dir we cloned, not the clone root — GoogleCloudPlatform/agent-starter-pack1 reaction
- Feb 12, 2026interrupted sometimes didn't work — google/adk-python1 reaction · 10 comments
- Jan 8, 2026Implement 5 ADK agent projects that can be easily run by newbies — addyosmani/adk-product-engineers1 reaction
- Nov 20, 2025[BUG]: deep-search/gemini-fullstack: Wrong prompt to access session state — google/adk-recipes1 reaction
- Jun 21, 2025unable to import StdioServerParameters — google/adk-recipes1 reaction · 2 comments
- Jun 17, 2025VertexAiRagRetrieval needs llama-index package — google/adk-recipes1 reaction · 3 comments
- Jun 5, 2025Bug: display_name in file uploads causes error with Google.GenAI backend (non-Vertex) — google/adk-python1 reaction · 6 comments
- May 18, 2025Missing Image — google/adk-recipes1 reaction
- Apr 11, 2025Duplicate key name — google/adk-recipes1 reaction · 1 comment
- Oct 18, 2026Fix(audit,#17387): Day4 Track2 tranche 1 -- Lab8/Lab9 reformulations honnetes, cures accents — jsboige/CoursIA0 reactions · 14 comments
- Sep 17, 2026Rename sample references to recipe across repository — google/adk-recipes0 reactions
- Sep 12, 2026docs(deep-search): fix cloud deployment instructions and scaffold path (#2575) — google/adk-recipes0 reactions · 4 comments
- Sep 12, 2026docs: fix 404 link to relocated Deep Search sample — google/adk-docs0 reactions · 1 comment
- Sep 9, 2026Add repo skills instructions and documentation links to AI issue response workflow — google/adk-recipes0 reactions
- Jul 24, 2026Fix broken adk-samples links from deleted sample agents and notebooks — google/adk-docs0 reactions · 1 comment
- Jun 12, 2026ci: run the spam-detection bot via the adk-samples reusable workflow — google/adk-go0 reactions · 1 comment
- May 27, 2026Add Deep Search Agent project to portfolio showcase — asafsilner/silner-showcase-prime0 reactions
- Feb 12, 2026fix: path typo in story teller example — google/adk-recipes0 reactions · 3 comments
On Bluesky · 4
- Apr 9, 2025Google just open sourced a Python Agent Development Kit @ github.com/google/adk-p... Native Streaming and #MCP support out of the box 👀… — @stephanjanssen.be12 likes and reposts
- Jul 12, 2026Exploring the ADK Samples repo from Google—it’s like a guidebook for building intelligent agents. Seeing multi-language support reflects… — @iam.slys.dev1 likes and repost
- Dec 9, 2025📦 google / adk-samples ⭐ 6,900 (+67) 🗒 Python A collection of sample agents built with Agent Development Kit (ADK) — @github-trending.bsky.social1 likes and repost
- May 20, 2025Explore practical use-cases & build! 🧪 Hands-on Patent Search Codelab: codelabs.developers.google.com/patent-searc... 📚 Check out sample… — @kweinmeister.bsky.social0 likes and reposts · 1 reply
On Hacker News · 3
- Aug 9, 2025CaMeL-Powered Secure Agent Demo with ADK3 points · 1 comment
- Jun 13, 2025A collection of sample agents built with Agent Development (ADK)2 points
- Aug 13, 2025CaMeL agent to protect against indirect prompt injection1 point · 1 comment
On Stack Overflow · 2
- Aug 30, 2025Google ADK SequentialAgent sub_agents not waiting for user input1 vote
- Aug 29, 2025Issue with deploying ADK Agent on Google Agent Engine0 votes
Other versions1 project uses a version of this.
Word for word · 1
- google/adk-recipes★ 11k100% same
Edited · 0
None found.
Wrote their own version · 0
None found.
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository43 other files it gives its agents.
- AGENTS.mdAGENTS.md
- contrib/kotlin/llm-auditor/AGENTS.mdAGENTS.md
- core/python/adk-voice-agent/AGENTS.mdAGENTS.md
- core/python/adk-voice-agent/sandbox/home/AGENTS.mdAGENTS.md
- core/python/adk-voice-agent/tests/eval/fixtures/alex/repos/portland-trip/AGENTS.mdAGENTS.md
- core/python/ambient-expense-agent/AGENTS.mdAGENTS.md
- core/python/ambient-quality-agent/AGENTS.mdAGENTS.md
- core/python/cross-session-memory/AGENTS.mdAGENTS.md
- core/python/deep-search/AGENTS.mdAGENTS.md
- core/python/genmedia-for-commerce/AGENTS.mdAGENTS.md
- core/python/long-horizon-harness/AGENTS.mdAGENTS.md
- core/python/oauth-user-consent-flow/AGENTS.mdAGENTS.md
- core/python/rag-agent-search/AGENTS.mdAGENTS.md
- core/python/rag-vector-search/AGENTS.mdAGENTS.md
- core/python/safety-plugins/AGENTS.mdAGENTS.md
- core/python/adk-voice-agent/sandbox/home/CLAUDE.mdCLAUDE.md
- core/python/genmedia-for-commerce/CLAUDE.mdCLAUDE.md
- align-recipe-pyprojectSkill
- extract-python-environment-variablesSkill
- generate-python-runnability-testSkill
- github-pr-reviewSkill
- make-python-recipe-deployableSkill
- prepare-python-recipeSkill
- repo-oracleSkill
- scaffold-python-recipeSkill
- blog-writerSkill
- content-research-writerSkill
- approvalsSkill
- coding-workflowSkill
- connected-apps-mcpSkill
- deliverablesSkill
- filesystemSkill
- recommendationsSkill
- agents-cli-aquaSkill
- custom-investigationSkill
- rcaSkill
- bootstrap-google-toolsSkill
- find-skillsSkill
- google-workspaceSkill
- policySkill
- routinesSkill
- retail-product-searchSkill
- retail-virtual-tryonSkill
The file
We split this skill into the rules it gives an agent
5 rules. About 0 are common, 1 is distinctive, and 4 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈1
Distinctive · estimate
This author's own choices. Worth a look.
4
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 18
Read .github/schemas/manifest-schema.json from the repo root to understand the current required and optional fields, allowed enum values, …
- Distinctive: line 22
Read the following files if they exist:
- Very specific: line 52
Before writing the manifest, briefly state what you found for each inferred field (type, deployable, architecture.*) and cite the specific …
- Very specific: line 56
Write manifest.yaml to the root of the recipe directory.
- Very specific: line 98
After writing the manifest, run the validator from the repo root (do not cd into tools/, and do not pass --active):
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Generate Manifest
Scan a recipe directory and produce a valid manifest.yaml for it, then validate it against the schema.
Process
1. Identify the target recipe
The user will provide a path to a recipe directory (e.g. core/python/rag-agent-search, contrib/python/my-recipe, plugins/retail/store-ops). If they don't, ask for it before proceeding.
2. Read the schema
Read .github/schemas/manifest-schema.json from the repo root to understand the current required and optional fields, allowed enum values, and constraints. Do not rely on memory — always read the live schema file so changes to it are automatically picked up.
3. Scan the recipe directory and infer only what the code proves
Read the following files if they exist:
pyproject.toml/requirements.txt— primary language (forlanguagefield)app/agent.pyor equivalent entry point — single vs multi-agent, agent countMakefile— deploy targets (determinesdeployable)app/source files — stateful writes, datasource patternsAGENTS.md— architecture notes if present
Field-by-field rules — read carefully before filling any field:
| Field | Rule |
type | Infer from code. standalone = has its own runnable entry point: look for an if __name__ == "__main__" block, a make playground/run target, an adk web/adk run invocation, or a CLI. module = only importable (it just exports a root_agent/Agent for another workflow to orchestrate, with no way to run on its own). When ambiguous, re-read the schema's type description and prefer module only when there is genuinely no entry point. |
deployable | OPTIONAL. true only if a single make target or script deploys everything with no manual steps. Omit the field entirely if false (schema default is false). |
large | OPTIONAL. Whether to opt into the relaxed size tier. Exact limits depend on whether the recipe lives under core/ or contrib/ or plugins/ and are defined in .github/policy.yml (recipe_size_limits) — as of writing: contrib/ and plugins/ default is 70 files / 2 MB and large is 200 files / 10 MB; core/ default is 500 files / 50 MB. Omit the field unless the recipe would otherwise exceed the default tier's limits (schema default is false). |
status | Always "active" unless there is explicit evidence of abandonment. |
language | Read from file extensions or pyproject.toml. Never guess. |
description | Read README.md and AGENTS.md only (author-written intent, not code). Write a draft of at most 15 words summarising what the recipe does. The schema requires at least 10 characters, so keep the draft comfortably above that. Append the comment # TODO: review and expand this draft description. If neither file exists or the intent is unclear, fall back to "DESCRIPTION" with the same TODO comment. |
architecture.agent | Infer from code only: count Agent( or equivalent constructor calls. single or multi. Omit the whole architecture block if uncertain. |
architecture.stateful | Infer from code: true only if the recipe writes persistently to an external system (DB, vector store, GCS) during normal operation — not just one-time setup. |
architecture.datasources | Infer from code: hardcoded = data literals in source; local = files bundled in repo; external = live systems queried at runtime. Can be multiple. |
dependencies | Include the block but comment it out entirely. Do NOT infer library or service names — GCP product names change and guesses will be wrong. Use the commented-out sample shown in the template. |
ownership.team | Always use the exact placeholder "TODO: Replace with your team name" — this is the literal string the validator checks for, so it correctly fails validation until a human fills it in. Never invent or infer a team name. |
ownership.poc | Always use the exact placeholder "TODO: Replace with your GitHub user ID" — this is the literal string the validator checks for. Never invent or infer a GitHub ID from email addresses, file authors, or any other source. |
ownership.contributors | OPTIONAL. Omit the field entirely. Leave a commented-out sample line so the author knows it exists. Never infer contributor IDs. |
tags | Include but comment out entirely, with a sample entry showing the expected style. Do NOT generate real tags — tag choices are the author's call. |
license | OPTIONAL. If the recipe's source tree contains a LICENSE file or the author has explicitly stated a license, record the SPDX identifier (e.g. "Apache-2.0", "MIT", "BSD-3-Clause"). Otherwise comment it out. Never infer or guess — only set it if it is explicitly declared. |
4. Make judgment calls explicitly
Before writing the manifest, briefly state what you found for each inferred field (type, deployable, architecture.*) and cite the specific file/line that supports your conclusion. This lets the user catch errors before they land in the file.
5. Write the manifest
Write manifest.yaml to the root of the recipe directory. Match the concise inline-comment style used by the existing manifests in core/ and contrib/ — allowed values shown as # Options: [...] after each field:
type: "..." # Options: [standalone | module]
status: "active" # Options: [active | inactive]
language: "..." # Options: [python | java | go | kotlin | typescript]
description: "..." # TODO: review and expand this draft description
# deployable: true # (optional) one-command deploy, no manual steps; omit if false (default)
# large: true # (optional) opt into the relaxed size tier; see .github/policy.yml (recipe_size_limits) for the exact numbers; omit if false (default)
architecture: # (optional) omit the whole block if nothing below can be inferred from code
agent: "..." # Options: [single | multi]
stateful: false # Options: [true | false]
datasources: # Options: [hardcoded | local | external]
- "..."
# dependencies: (optional) uncomment and fill in with canonical names
# libraries:
# - "ADK"
# - "pandas" # example — replace with actual libraries used
# services:
# - "GCP Project"
# - "Cloud Run" # example — replace with actual GCP/external services used
ownership:
team: "TODO: Replace with your team name"
poc: "TODO: Replace with your GitHub user ID"
# contributors: (optional) uncomment and add GitHub IDs of additional contributors
# - "github-id-1"
# tags: (optional) uncomment and replace with meaningful labels
# - "rag" # example — use technology names, patterns, and use-case keywords
# - "gemini"
# license: "Apache-2.0" # (optional) SPDX identifier; only set if explicitly declared — see https://spdx.org/licenses/Omit architecture entirely if none of its sub-fields can be determined from the code.
6. Validate
After writing the manifest, run the validator from the repo root (do not cd into tools/, and do not pass --active):
uv run validate manifest <recipe-path><recipe-path> must be relative to the repo root (e.g. core/python/my-recipe, contrib/python/my-recipe, plugins/retail/store-ops), not an absolute path.
Interpret the result carefully — there are two kinds of failure:
- Real schema errors (missing required field, invalid enum value, description under 10 characters, malformed YAML): fix these in the manifest and re-validate until they are gone.
ownership.team/ownership.pocplaceholder errors: these are EXPECTED and must be left as-is. The validator deliberately fails while the placeholders are in place, to force a human to supply real values before merge. Do NOT invent a team name or GitHub ID to make validation pass.
So a correctly generated manifest will still report [FAIL] — but only on the two ownership placeholders, and nothing else. That is the intended outcome; report it to the user as "valid except for the ownership placeholders you need to fill in". Do not change or modify any other files in the repository. Also do not commit the changes.
7. Report back
Tell the user:
- What was inferred from the code and which file/line supports each inference.
- Which fields need human input before the manifest will pass validation:
ownership.teamandownership.poc(placeholders — validation intentionally fails until these are replaced with real values). Also flagdescription(draft generated — must be reviewed and expanded) anddependencies/tags(commented out, ready to uncomment and fill in).
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

