src/google/adk/cli/built_in_agents/README.md
An intelligent assistant for building ADK multi-agent systems using YAML configurations.
# From the ADK project root
adk web src/google/adk/agent_builder_assistant
# Create with defaults
agent = AgentBuilderAssistant.create_agent()
# Create with custom settings
agent = AgentBuilderAssistant.create_agent(
model="gemini-2.5-pro",
schema_mode="query",
working_directory="/path/to/project"
)
Choose between two schema handling approaches:
agent = AgentBuilderAssistant.create_agent(schema_mode="embedded")
agent = AgentBuilderAssistant.create_agent(schema_mode="query")
Create an agent that can roll n-sided number and check whether the rolled number is prime.
Could you make the agent under `./config_based/roll_and_check` a multi agent system : root_agent only for request routing and two sub agents responsible for two functions respectively ?
Please analyze my existing project structure at './config_based/roll_and_check' and suggest improvements for better organization.
read_config_files - Read multiple YAML configurations with analysiswrite_config_files - Write multiple YAML files with validationread_files - Read multiple files of any typewrite_files - Write multiple files with backup optionsdelete_files - Delete multiple files with backup optionsexplore_project - Analyze project structure and suggest pathsresolve_root_directory - Resolve paths with working directory contextgoogle_search - Search for ADK examples and documentationurl_context - Fetch content from URLs (GitHub, docs, etc.)search_adk_source - Search ADK source code with regex patternsmy_adk_project/
āāā src/
āāā my_app/
āāā root_agent.yaml
āāā sub_agent_1.yaml
āāā sub_agent_2.yaml
āāā tools/
ā āāā process_email.py # No _tool suffix
ā āāā analyze_sentiment.py
āāā callbacks/
āāā logging.py # No _callback suffix
āāā security.py
snake_casedescriptive_action.pydescriptive_name.pyproject_name.tools.module.function_nameproject_name.callbacks.module.function_nameEach chat session is bound to a single root directory:
# The assistant automatically receives working directory context
agent = AgentBuilderAssistant.create_agent(
working_directory="/path/to/project"
)
# Model instructions include: "Working Directory: /path/to/project"
No hardcoded paths - works in any ADK installation:
from google.adk.agent_builder_assistant.utils import (
find_adk_source_folder,
get_adk_schema_path,
load_agent_config_schema
)
# Find ADK source dynamically
adk_path = find_adk_source_folder()
# Load schema with caching
schema = load_agent_config_schema()
All YAML files validated against AgentConfig schema:
This comprehensive assistant provides everything needed for intelligent, efficient ADK agent system creation with proper validation, file management, and project organization.