This repository hosts a modular "Skill" designed to teach AI agents (including Gemini Code Assist, Cursor, and others) how to correctly implement the Google Agent Development Kit (ADK) across multiple programming languages.
- Language Agnostic Core: The primary entry point (
SKILL.md) serves as a router, understanding the high-level ADK architecture (Agents, Workflow Agents, MCP, Memory) common to all implementations. - Language Specificity: Dedicated sub-skills avoid context pollution. A Python agent shouldn't be confused by Go struct tags.
- Source of Truth: Where possible, leverage existing high-fidelity
context files (like
llms.txt) rather than rewriting documentation.
.
├── GEMINI.md # Meta-instructions for the Gemini CLI working on this repo
├── README.md # User-facing documentation
└── skill/
├── SKILL.md # The Master Router / General Architect
├── adk-python.md # Python specific context & patterns
├── adk-go.md # Go specific context & patterns
├── adk-ts.md # TypeScript/JS specific context & patterns
└── adk-java.md # Java specific context & patterns
To maintain trust in this skill, all changes must be verified:
- Link Validation: All external URLs (especially to
llms.txtor docs) must be verified as reachable. - Code Integrity: All code snippets embedded in markdown must be syntactically correct for their target language.
- Router Logic: Ensure
SKILL.mdcorrectly links to the sub-skills and that the decision tree for language selection is clear. - End-to-End Simulation: When modifying a skill, simulate a user request (e.g., "How do I create a flow in Python?") to ensure the skill provides the correct guidance path.
- Markdown Formatting: All markdown files must be formatted with
mdformat --wrap 78. This ensures human readability in terminal environments and consistent diffs. Exception: Do not runmdformaton files with YAML frontmatter (likeSKILL.md), as it may corrupt the metadata. - External Content: When importing
llms.txtorllms-full.txtfiles from upstream repositories, preserve their original formatting to maintain fidelity with the source.