From 004-jeremy-google-cloud-agent-sdk
Automatic activation for ALL Google Cloud Agent Development Kit (ADK) and Agent Starter Pack operations - multi-agent systems, containerized deployment, RAG agents, and production orchestration. **TRIGGER PHRASES:** - "adk", "agent development kit", "agent starter pack", "multi-agent", "build agent" - "cloud run agent", "gke deployment", "agent engine", "containerized agent" - "rag agent", "react agent", "agent orchestration", "agent templates" **AUTO-INVOKES FOR:** - Agent creation and scaffolding - Multi-agent system design - Containerized agent deployment - RAG (Retrieval-Augmented Generation) implementation - CI/CD pipeline setup for agents - Agent evaluation and monitoring
How this skill is triggered — by the user, by Claude, or both
Slash command
/004-jeremy-google-cloud-agent-sdk:agent-sdk-masterThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
This Agent Skill provides comprehensive mastery of Google's Agent Development Kit (ADK) and Agent Starter Pack for building and deploying production-grade containerized agents.
This Agent Skill provides comprehensive mastery of Google's Agent Development Kit (ADK) and Agent Starter Pack for building and deploying production-grade containerized agents.
Framework Overview:
Supported Agent Types:
Key Features:
Production Templates:
Infrastructure Automation:
1. Vertex AI Agent Engine
2. Cloud Run
3. Google Kubernetes Engine (GKE)
4. Local/Docker
Installation:
# Agent Starter Pack (recommended)
pip install agent-starter-pack
# or direct from GitHub
uvx agent-starter-pack create my-agent
# ADK only
pip install google-cloud-aiplatform[adk,agent_engines]>=1.111
Create Agent (ADK):
from google.cloud.aiplatform import agent
from vertexai.preview.agents import ADKAgent
# Simple ReAct agent
@agent.adk_agent
class MyAgent(ADKAgent):
def __init__(self):
super().__init__(
model="gemini-2.5-pro",
tools=[search_tool, code_exec_tool]
)
def run(self, query: str):
return self.generate(query)
# Multi-agent orchestration
class OrchestratorAgent(ADKAgent):
def __init__(self):
self.research_agent = ResearchAgent()
self.analysis_agent = AnalysisAgent()
self.writer_agent = WriterAgent()
def run(self, task: str):
research = self.research_agent.run(task)
analysis = self.analysis_agent.run(research)
output = self.writer_agent.run(analysis)
return output
Using Agent Starter Pack:
# Create project with template
uvx agent-starter-pack create my-rag-agent \
--template agentic_rag \
--deployment cloud_run
# Generates complete structure:
my-rag-agent/
├── src/
│ ├── agent.py # Agent implementation
│ ├── tools/ # Custom tools
│ └── config.py # Configuration
├── deployment/
│ ├── Dockerfile
│ ├── cloudbuild.yaml
│ └── terraform/
├── tests/
│ ├── unit_tests.py
│ └── integration_tests.py
└── .github/workflows/ # CI/CD pipelines
Deploy to Cloud Run:
# Using ADK CLI
adk deploy \
--target cloud_run \
--region us-central1 \
--service-account [email protected]
# Manual with Docker
docker build -t gcr.io/PROJECT/agent:latest .
docker push gcr.io/PROJECT/agent:latest
gcloud run deploy agent \
--image gcr.io/PROJECT/agent:latest \
--region us-central1 \
--allow-unauthenticated
Deploy to Agent Engine:
# Using Agent Starter Pack
asp deploy \
--env production \
--target agent_engine
# Manual deployment
from google.cloud.aiplatform import agent_engines
agent_engines.deploy_agent(
agent_id="my-agent",
project="PROJECT_ID",
location="us-central1"
)
Vector Search Integration:
from vertexai.preview.rag import VectorSearchTool
from google.cloud import aiplatform
# Set up vector search
vector_search = VectorSearchTool(
index_endpoint="projects/PROJECT/locations/LOCATION/indexEndpoints/INDEX_ID",
deployed_index_id="deployed_index"
)
# RAG agent with ADK
class RAGAgent(ADKAgent):
def __init__(self):
super().__init__(
model="gemini-2.5-pro",
tools=[vector_search, web_search_tool]
)
def run(self, query: str):
# Retrieves relevant docs automatically
response = self.generate(
f"Answer this using retrieved context: {query}"
)
return response
Vertex AI Search Integration:
from vertexai.preview.search import VertexAISearchTool
# Enterprise search integration
vertex_search = VertexAISearchTool(
data_store_id="DATA_STORE_ID",
project="PROJECT_ID"
)
agent = ADKAgent(
model="gemini-2.5-pro",
tools=[vertex_search]
)
GitHub Actions (auto-generated):
name: Deploy Agent
on:
push:
branches: [main]
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Test Agent
run: pytest tests/
- name: Deploy to Cloud Run
run: |
gcloud run deploy agent \
--source . \
--region us-central1
Cloud Build Pipeline:
steps:
# Build container
- name: 'gcr.io/cloud-builders/docker'
args: ['build', '-t', 'gcr.io/$PROJECT_ID/agent', '.']
# Run tests
- name: 'gcr.io/$PROJECT_ID/agent'
args: ['pytest', 'tests/']
# Deploy to Cloud Run
- name: 'gcr.io/cloud-builders/gcloud'
args:
- 'run'
- 'deploy'
- 'agent'
- '--image=gcr.io/$PROJECT_ID/agent'
- '--region=us-central1'
Hierarchical Agents:
# Coordinator agent with specialized sub-agents
class ProjectManagerAgent(ADKAgent):
def __init__(self):
self.researcher = ResearchAgent()
self.analyst = AnalysisAgent()
self.writer = WriterAgent()
self.reviewer = ReviewAgent()
def run(self, project_brief: str):
# Coordinate multiple agents
research = self.researcher.run(project_brief)
analysis = self.analyst.run(research)
draft = self.writer.run(analysis)
final = self.reviewer.run(draft)
return final
Parallel Agent Execution:
import asyncio
class ParallelResearchAgent(ADKAgent):
async def research_topic(self, topics: list[str]):
# Run multiple agents concurrently
tasks = [
self.specialized_agent(topic)
for topic in topics
]
results = await asyncio.gather(*tasks)
return self.synthesize(results)
Built-in Evaluation:
from google.cloud.aiplatform import agent_evaluation
# Define evaluation metrics
eval_config = agent_evaluation.EvaluationConfig(
metrics=["accuracy", "relevance", "safety"],
test_dataset="gs://bucket/eval_data.jsonl"
)
# Run evaluation
results = agent.evaluate(eval_config)
print(f"Accuracy: {results.accuracy}")
print(f"Relevance: {results.relevance}")
Cloud Trace Integration:
from google.cloud import trace_v1
# Automatic tracing
@traced_agent
class MonitoredAgent(ADKAgent):
def run(self, query: str):
# All calls automatically traced
with self.trace_span("retrieval"):
docs = self.retrieve(query)
with self.trace_span("generation"):
response = self.generate(query, docs)
return response
1. Service Account Management:
# Create minimal-permission service account
gcloud iam service-accounts create agent-sa \
--display-name "Agent Service Account"
# Grant only required permissions
gcloud projects add-iam-policy-binding PROJECT_ID \
--member="serviceAccount:[email protected]" \
--role="roles/aiplatform.user"
2. Secret Management:
from google.cloud import secretmanager
def get_api_key():
client = secretmanager.SecretManagerServiceClient()
name = "projects/PROJECT/secrets/api-key/versions/latest"
response = client.access_secret_version(name=name)
return response.payload.data.decode('UTF-8')
3. VPC Service Controls:
# Enable VPC SC for data security
gcloud access-context-manager perimeters create agent-perimeter \
--resources=projects/PROJECT_ID \
--restricted-services=aiplatform.googleapis.com
Strategies:
Pricing Examples:
Production Agent System:
┌─────────────────┐
│ Load Balancer │
└────────┬────────┘
│
┌────▼────┐
│Cloud Run│ (Agent containers)
└────┬────┘
│
┌────▼──────────┐
│ Agent Engine │ (Orchestration)
└────┬──────────┘
│
┌────▼────────────────┐
│ Vertex AI Search │ (RAG)
│ Vector Search │
│ Gemini 2.5 Pro │
└─────────────────────┘
1. Start with Templates:
# Use Agent Starter Pack templates
uvx agent-starter-pack create my-agent --template agentic_rag
2. Local Development:
# Test locally first
adk serve --port 8080
curl http://localhost:8080/query -d '{"question": "test"}'
3. Gradual Deployment:
# Deploy to dev → staging → prod
asp deploy --env dev
# Test thoroughly
asp deploy --env staging
# Final production push
asp deploy --env production
4. Monitor Everything:
Core Resources:
Tutorials:
This skill automatically activates when you mention:
Google Cloud:
Third-party:
Track:
This skill makes Jeremy a Google Cloud agent architecture expert with instant access to ADK, Agent Starter Pack, and production deployment patterns.
Guides completion of development work by verifying tests, detecting environment, and presenting structured options for merge, PR, or cleanup.
Enforces test-driven development: write failing test first, then minimal code to pass. Use when implementing features or bugfixes.
Guides creation and editing of skills using test-driven development with pressure scenarios and subagents to verify agent compliance.
2plugins reuse this skill
First indexed Jul 13, 2026
npx claudepluginhub danielmiessler/claude-code-plugins-plus --plugin 004-jeremy-google-cloud-agent-sdk