Build trustworthy, production-ready AI agents for network automation and operations.
Solve real network problems while mastering Google's Agent Development Kitโan industry-leading agentic framework.
- ๐ Overview
- ๐ฏ Tutorial Contents and Sections
- ๐ Let's get started
- ๐ Auth with Google Cloud
- ๐ Project Structure
- โก Quick Start
- ๐ค Contributing
- ๐ License
- ๐ฎ Long-Term Vision
Network engineers need AI systems that are understandable, trustworthy, and operationally relevant. Traditional script-based automation is brittle and lacks contextual reasoning, while black-box AI chatbots lack the control, observability, and accountability required for production network operations.
This project bridges that gap by demonstrating how Google's Agent Development Kit (ADK)โone of the leading agentic frameworksโenables network engineers to build agent-based systems that combine the flexibility of AI with the rigor of production operations.
Read basics about Agents, Framework and Google ADK and Agent Starter Pack in Introduction.md file.
Learn how GenAI agents work while tackling real-world use cases faced by:
- ๐ง Network Engineers - Design reviews, configuration validation, architectural analysis
- โ๏ธ Network Automators - BGP troubleshooting, device diagnostics, workflow orchestration
- ๐ ๏ธ SRE Teams - Multi-turn troubleshooting, observability integration, production deployments
- ๐ก NOC Teams - Context-aware assistance, incident response, state-aware diagnostics
- ๐ค AI Engineers - Learn how to build production-ready agents using Google's Agent Development Kit
This repository provides a collection of complete, production-ready agents (not just prompts) built using Google's Agent Development Kit. Each example demonstrates how ADK features map directly to real-world network operations, with:
- โ Complete Working Code - Ready-to-run implementations with all dependencies
- ๐ Network-Specific Use Cases - Real scenarios from production environments
- ๐ ADK Feature Demonstrations - Practical examples of advanced agent capabilities
- ๐งช Safe Testing Environment - Mocked backends for safe experimentation (swap with real APIs when ready)
Start here to understand the core concepts of AI agents.
| Topic | ADK Feature | Networking Use Case | Link |
|---|---|---|---|
1-basic-agent/ |
Agent Setup, Model Config, Output Schema, Planners, Session Management | Network Design Review Agent - AI-powered architectural review for network designs | View Details |
2-basic-agent-with-tools/ |
Custom Tools, Built-in Tools, Parallel Execution, Agent-as-Tool, MCP Integration | BGP Troubleshooting Assistant - Systematic diagnosis of BGP session issues using multiple tool patterns | View Details |
3-agent-session-context/ |
Session State, ToolContext, ReadonlyContext, FunctionTool, Multi-Turn Conversations | Multi-Turn NOC Assistant - Context-aware troubleshooting with state persistence across conversation turns | View Details |
Critical for production-ready network AI operations.
| Path | ADK Feature | Networking Use Case | Link |
|---|---|---|---|
5-agent-callbacks-guardrails/ |
Agent/Model/Tool Callbacks, CallbackContext, Content Filtering, Access Control | Production Security & Control - Callback-based guardrails for policy enforcement (e.g., prevent invalid BGP commands) | View Details |
4-agent-human-in-the-loop/ |
HITL Confirmation, ResumabilityConfig, Boolean & Tool-Based Approval Patterns | Configuration Change Approval - Safety-first network config with human approval gates for high-stakes changes | View Details |
10-agent-observability/ |
Python Logging, Opik Integration, Trace Visualization, LLM Metrics Tracking | Production Observability - Comprehensive logging and tracingโthe "audit trail" for network changes | View Details |
Move from single tasks to complex, modular agent systems.
| Path | ADK Feature | Networking Use Case | Link |
|---|---|---|---|
6-agent-workflows/ |
SequentialAgent, ParallelAgent, LoopAgent, Nested Workflows, Exit Control | Automated Network Troubleshooting Workflows - Complex sequences (Verify BGP โ Run CyPerf Test โ Analyze Results) | View Details |
7-agent-subagents/ |
Hierarchical Multi-Agent, Sub-Agent Delegation, Parent Orchestration, Dynamic Task Routing | Hierarchical Network Operations - Modular approach: one agent for security, another for performance benchmarking | View Details |
8-agent-rag-WIP/ |
RAG Integration, Document Retrieval, Knowledge Base | Documentation-Aware Agent - Connect to technical documentation and network topologies (Work in Progress) | View Details |
Deploy agents to production and enable integration with other systems.
| Path | ADK Feature | Networking Use Case | Link |
|---|---|---|---|
12-agent-deployment-vtxai/ |
Vertex AI Agent Engine, Managed Runtime, State Management, Secure Code Execution, Enterprise Observability | Vertex AI Agent Engine Deployment - Managed enterprise-grade runtime with built-in playground UI | View Details |
11-agent-deployment-cloudrun/ |
Cloud Run Deployment, Cloud Build, IAM Policy Binding, Dockerfile Configuration, Serverless Containers | Cloud Run Deployment - Serverless containerized agent with automatic scaling and IAM access control | View Details |
13-agent-react-frontend/ |
REST API, FastAPI, React Frontend | REST API Integration - Expose agents via REST API for consumption by other systems | View Details |
13-agent-streamlit-ui/ |
Streamlit, Web UI, Interactive Chat | Streamlit GUI - Browser-based interface for engineers to interact without CLI | View Details |
Advanced patterns for specific operational requirements.
| Path | ADK Feature | Networking Use Case | Link |
|---|---|---|---|
9-agent-a2a-asp/ |
RemoteA2aAgent, Agent Cards, HTTP Communication, Microservices Architecture | Agent-to-Agent Communication - Distributed NOC with agents communicating via HTTP | View Details |
14-agent-ollama/ |
LiteLLM, Ollama, Local LLM Execution | Local LLM Execution - Run agents with local models for sensitive network environments where data cannot leave premises | View Details |
Before you begin, ensure you have:
- ๐ uv - Python package manager (handles all dependency management)
- โ๏ธ Google Cloud SDK - For GCP services integration
- ๐จ make - Build automation (pre-installed on most Unix systems)
- ๐ Google Gemini API Key - Set as environment variable:
export GOOGLE_API_KEY=<your-key>Note:
You can get your Google Gemini API key from Google Cloud Console
- ๐ Auth with Google Cloud
Once you have the Google Cloud SDK installed, you need to authenticate with Google Cloud so that once you test agent locally you can eventually deploy it to Cloud.
gcloud auth logingcloud config set project <your-project-id>gcloud config set region <your-region>gcloud auth login --update-adc --project <your-project-id>For scaffolding new agents, we use Google's Agent Starter Pack.
agent-starter-packโis Google's open-source CLI that handles infrastructure setup, CI/CD, and observability. for agents so developers can focus on agent logic (prompts, tools, RAG) instead of boilerplate.
By default, the agent folder name is app and the agent file name is agent.py. You can change the agent folder name as you wish.
However, in that case you need to modify the Makefile and other files to match the new name. I have explained changes that need to be made in individual agent README.md file.
Each example follows a consistent structure for easy navigation:
I have changed the agent folder name to basic_agent from app since I wanrt to match the purpose of the agent in this case.
1-basic-agent/ # Agent Parent folder (example name)
โโโ README.md
โโโ basic_agent/ # Agent folder
โ โโโ __init__.py
โ โโโ agent.py # ๐ง Core agent logicfile [Main Agent]
โ โโโ fast_api_app.py # ๐ Start API Server to interact with the agent
โ โโโ app_utils/ # ๐ง Utilities and helpers [Tools]
โโโ tests/
โ โโโ unit/
โ โโโ integration/
โโโ pyproject.toml # ๐ฆ Project dependencies (uv) [Dependencies]
โโโ uv.lock # ๐ Locked dependencies [Dependencies]
โโโ Makefile # โ๏ธ Common tasks (install, test, deploy) [Makefile]
โโโ Dockerfile # ๐ณ Container configuration to push to Cloud Run [Dockerfile]
** If we have multiple agents in same folder there will be multiple agent.py files inside those agent folders.
Example:
basic-agent-with-tools/
โโโ agent_as_tool/
โโโ agent_google_cloud_tools_WIP/
โโโ agent_custom_tools/
โโโ agent_builtin_tools/
โโโ agent_mcp_tools_calls/
โโโ parallel_functions_calls/
โโโ tests/
โโโ Makefile
โโโ pyproject.toml
โโโ uv.lock
โโโ Dockerfile
โโโ README.md How to interact with the agent ?
- Always first in the Agent Parent folder, run below to install the dependencies.
cd <agent-parent-folder>
make install- To spin up a local development UI for agent interacction. ( Web UI Interaction with the agent)
make playground- To spin up the local development server with hot-reload. ( API Interaction with the agent)
make local-backend (Some agents have modified local-backend make command to match the agent folder name. Check Makefile before running the command.)๐ก Note: No virtual environment management neededโuv handles dependency isolation automatically.
- Chat with the agent using CLI
cd <agent-parent-folder>
uv run adk run <agent-folder>Open Makefile to understand the underlying adk command being used. We need to modify these commands when we modify the default names of files created as a part of the Agent Starter Pack. You will see this in the indidual aagent readme.
-
๐ Find sample queries to use with every agent in the SAMPLE_QUERIES.md file.
-
๐ฅ Clone the repository
git clone https://github.com/yourusername/GoogleADK-NetworkAutomation.git cd GoogleADK-NetworkAutomation -
โถ๏ธ Choose an example and run itcd 1-basic-agent make install && make playground
Note:
Without Agent Starter Pack, you would have to use Local Development & Testing (adk web,adk run,adk api_server) commands to run and interact with the agent. Under the hood, Agent Starter Pack is running same commands . Check the Makefile for more details.The playground will launch a web interface where you can interact with the agent.
+-----------------------------------------------------------------------------+ | ADK Web Server started | | | | For local testing, access at http://127.0.0.1:8501. | +-----------------------------------------------------------------------------+
-
๐ Explore the code
- ๐ Review
README.mdin each example for use case details - ๐ป Examine
agent.pyfiles to understand agent implementation
- ๐ Review
Contributions are welcome! This project aims to be a comprehensive resource for network engineers learning AI agent development.
๐ฏ Areas of Interest:
- ๐ Additional network automation use cases
- ๐ Integration examples with network device APIs
- ๐ Production deployment patterns
- ๐ Observability and monitoring enhancements
Please ensure contributions maintain the project's focus on clarity, safety, and operational relevance.
This project is provided as-is for educational and operational purposes. Please review individual dependencies and ensure compliance with your organization's policies.
Built with โค๏ธ for Network Engineers by Network Engineer Ashwin Josh


