Skip to content

[Community Project] create-google-adk-agent — one-command scaffold for ADK projects #129

@unrealandychan

Description

@unrealandychan
 1|# [Community Project] `create-google-adk-agent` — one-command scaffold for ADK projects
 2|
 3|## 👋 Hey ADK community!
 4|
 5|I wanted to share a project I've been building that I think fills a real gap in the ADK developer experience: **`create-google-adk-agent`** — a CLI scaffold tool (think `create-next-app`, but for Google ADK agents).
 6|
 7|- 📦 npm: https://www.npmjs.com/package/create-google-adk-agent
 8|- 🐍 PyPI: https://pypi.org/project/create-google-adk-agent/
 9|- 💻 GitHub: https://github.com/unrealandychan/create-adk-agent
10|
11|---
12|
13|## 🤔 The Problem
14|
15|Getting started with a new ADK project today involves a fair bit of ceremony: manually creating the directory structure, writing boilerplate `__init__.py` and `agent.py` files, wiring up environment variables, choosing and configuring an LLM provider, and — if you want to go beyond Google AI Studio — navigating LiteLLM or Vertex AI setup from scratch.
16|
17|There's no official `adk init` or scaffold CLI for local development, especially for developers who aren't yet on GCP or want to prototype quickly with OpenAI, Anthropic, or a local Ollama model. This friction is real for newcomers and even experienced practitioners spinning up new projects.
18|
19|---
20|
21|## ✨ What `create-google-adk-agent` Does
22|
23|It's a single command that walks you through an interactive setup and generates a fully runnable ADK project:
24|
25|```bash
26|# via npm (no install needed)
27|npx create-google-adk-agent
28|
29|# or via Python
30|uvx create-google-adk-agent
31|# or: pip install create-google-adk-agent && create-google-adk-agent
32|```
33|
34|### Interactive flow
35|
36|```
37|✔ Project name: my-research-agent
38|✔ Agent type: multi-agent
39|✔ LLM provider: OpenAI (via LiteLLM)
40|✔ Model: gpt-4o
41|
42|✅ Project created! Run:
43|   cd my-research-agent
44|   uv run adk web
45|```
46|
47|### Supported agent types
48|| Type | Description |
49||---|---|
50|| `single` | A single root agent |
51|| `multi-agent` | Orchestrator + sub-agent scaffold |
52|| `agentic_rag` | RAG pipeline with document ingestion wired in |
53|
54|### Supported LLM providers
55|- **Google AI Studio** (Gemini)
56|- **Vertex AI**
57|- **OpenAI** (via LiteLLM)
58|- **Anthropic** (via LiteLLM)
59|- **Ollama** (local models)
60|
61|### Built-in tools (opt-in during setup)
62|- 🌐 **Web Fetch** — fetch and parse web pages
63|- 📄 **File Reader** — read PDF and `.docx` documents
64|- 🐍 **Python Code Executor** — sandboxed code execution
65|- 🕐 **Datetime** — current date/time utilities
66|
67|### MCP server support
68|Auto-generates `mcp.json` for: `filesystem`, `fetch`, `github`, `memory`, `slack`
69|
70|### Other niceties
71|- `--yes` / `-y` flag for fully non-interactive / CI mode
72|- Copilot instructions pre-wired (`.github/copilot-instructions.md`)
73|- `uv` + `adk web` ready out of the box
74|
75|---
76|
77|## 💡 Two Things I'd Love to Discuss
78|
79|### 1. Add to a community projects section
80|If this repo has (or plans to have) a community projects listing in the README or a dedicated `COMMUNITY.md`, I'd love for `create-google-adk-agent` to be included. I think it genuinely lowers the barrier to entry for new ADK developers.
81|
82|### 2. Contribute the built-in tools to `tools/`
83|The four built-in tools (web fetch, file reader, Python executor, datetime) were written to be drop-in ADK-compatible tools. I'd be happy to contribute them as proper community tools under a `tools/` module in this repo — with tests, type annotations, and documentation — if that's something the maintainers would find valuable. They cover some of the most common "first things I reach for" when building agents.
84|
85|---
86|
87|## 🙏 Thanks
88|
89|Thanks for building ADK and fostering this community space. Happy to answer any questions, take feedback, or open a separate PR for the tools contribution if there's interest!
90|
91|— Andy ([@unrealandychan](https://github.com/unrealandychan))
92|

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions