adk-core
This skill should be used when the user asks about "creating a new ADK project", "initializing ADK", "setting up Google ADK", "adk create command", "ADK project structure", "YAML agent configuration", "creating an agent", "LlmAgent", "BaseAgent", "custom agent", "agent with different model", "Claude with ADK", "OpenAI with ADK", "LiteLLM", "multi-model agent", or needs guidance on bootstrapping an ADK development environment, authentication setup, choosing between Python code and YAML-based agent definitions, agent configuration, model selection, system instructions, or extending the base agent class for non-LLM logic.
When & Why to Use This Skill
ADK Core is a foundational developer toolkit designed to streamline the initialization and configuration of Google Agent Development Kit (ADK) projects. It provides a standardized framework for bootstrapping AI agents, offering robust support for project scaffolding, authentication setup (Vertex AI/AI Studio), and multi-model integration including Gemini, Claude, and OpenAI. By supporting both declarative YAML configurations and extensible Python classes, it enables developers to rapidly transition from local prototyping to production-ready agentic architectures.
Use Cases
- Project Bootstrapping: Quickly initialize a standardized AI agent project structure using the 'adk create' command to ensure best practices in directory organization.
- Multi-Model Configuration: Seamlessly integrate and switch between different LLMs like Gemini and Claude within a single agent framework using LiteLLM prefixes.
- Authentication Management: Setting up secure API access for Google AI Studio or Vertex AI to handle different environment requirements from development to deployment.
- Custom Agent Logic: Extending the BaseAgent class to implement deterministic, non-LLM logic or complex API orchestrations that require manual control.
- Rapid Prototyping: Utilizing YAML-based agent definitions to define agent behaviors and system instructions without writing boilerplate Python code.
| name | ADK Core |
|---|---|
| description | This skill should be used when the user asks about "creating a new ADK project", "initializing ADK", "setting up Google ADK", "adk create command", "ADK project structure", "YAML agent configuration", "creating an agent", "LlmAgent", "BaseAgent", "custom agent", "agent with different model", "Claude with ADK", "OpenAI with ADK", "LiteLLM", "multi-model agent", or needs guidance on bootstrapping an ADK development environment, authentication setup, choosing between Python code and YAML-based agent definitions, agent configuration, model selection, system instructions, or extending the base agent class for non-LLM logic. |
| version | 2.0.0 |
ADK Core
Comprehensive guide for initializing Google Agent Development Kit (ADK) projects and creating agents. Covers project setup, authentication, agent configuration, and model selection.
When to Use
Project Setup:
- Starting a new ADK project from scratch
- Setting up authentication (API key or Vertex AI)
- Understanding ADK project structure
- Choosing between Python and YAML configuration
- Running agents locally for development
Agent Creation:
- Creating a new ADK agent from scratch
- Configuring agent parameters (model, name, instruction, description)
- Using non-Gemini models (Claude, OpenAI via LiteLLM)
- Building custom agents without LLM reasoning
When NOT to Use
- Adding tools to agents → Use
@adk-toolsinstead - Multi-agent orchestration → Use
@adk-multi-agentinstead - Callbacks and state management → Use
@adk-behaviorinstead - Deploying to production → Use
@adk-deploymentinstead - Memory and knowledge management → Use
@adk-memoryinstead
Key Concepts
Project Initialization
Installation: pip install google-adk in Python 3.10+ virtual environment. Verify with adk --version.
Project Creation: adk create <name> scaffolds a new agent project with agent.py, __init__.py, and .env.
Authentication Options: Google AI Studio (GOOGLE_API_KEY) for prototyping, Vertex AI (GOOGLE_CLOUD_PROJECT) for production.
Running Agents: adk run for CLI, adk web for development UI, adk api_server for HTTP API.
YAML Configuration: Declarative agent definition without Python code. Quick prototyping for simple agents.
Project Structure: agent.py exports root_agent. ADK CLI discovers and runs the exported agent.
Agent Types
LlmAgent is the standard agent type for AI reasoning, conversation, and tool use. Requires model and name parameters. Use instruction for system prompts and description for routing in multi-agent systems.
BaseAgent is for custom non-LLM logic. Extend it and implement run_async() to yield responses. Use when you need deterministic behavior or external API orchestration.
Model Selection: Default to gemini-3-flash-preview. Use LiteLLM prefix for other providers (e.g., anthropic/claude-sonnet-4).
References
Detailed guides with code examples:
Project Setup:
references/init.md- Complete initialization workflowreferences/create-project.md- Python project scaffoldingreferences/yaml-config.md- YAML-based configuration
Agent Creation:
references/llm-agent.md- Complete LlmAgent configuration and parametersreferences/custom-agent.md- BaseAgent extension patternsreferences/multi-model.md- LiteLLM setup and model switching