[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6CDPXAGGDSXW7EJJSJ7FDEF":3,"skill-same:01M6CDPXAGGDSXW7EJJSJ7FDEF":90},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":23,"publishedAt":38,"linkOnly":39,"markdownContent":40,"markdownBody":41,"frontMatter":42,"refName":49,"commitSha":50,"skillDirectory":51,"forksCount":52,"repositoryHtmlUrl":53,"repositoryHomepageUrl":6,"ownerHtmlUrl":54,"ownerBlogUrl":55,"ownerDescription":56,"updatedAt":57,"install":58,"resources":71},"01M6CDPXAGGDSXW7EJJSJ7FDEF","Google Cloud Agent SDK Master",null,"Automatic activation for all google cloud agent development kit (adk) Use when appropriate context detected. Trigger with relevant phrases based on skill purpose.","BbgnsurfTech\u002Fclaude-skills-collection","BbgnsurfTech","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F59598605?v=4","01M6C5ZT4G3G4QPQB64QDVW438","Bbgnsurf Technologies","01M6C5ZT8JN4VWSZZH3DD8J4EG",29,"MIT","https:\u002F\u002Fgithub.com\u002FBbgnsurfTech\u002Fclaude-skills-collection\u002Fblob\u002Fmain\u002Fplugins\u002Fclaude-code-plugins-plus\u002Fplugins\u002Fproductivity\u002F004-jeremy-google-cloud-agent-sdk\u002Fskills\u002Fagent-sdk-master\u002FSKILL.md",[18],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[24,25,26,27,28,5,29,30,31,32,33,34,35,36,37],"google","sdk","google cloud","cloud","master","adk","agent development kit","development","agent development","grep","read","context","webfetch","use","2026-11-10 10:12:30",false,"---\nname: Google Cloud Agent SDK Master\ndescription: Automatic activation for all google cloud agent development kit (adk) Use when appropriate context detected. Trigger with relevant phrases based on skill purpose.\nversion: 1.0.0\nallowed-tools:\n- Read\n- WebFetch\n- WebSearch\n- Grep\nlicense: MIT\n---\n# Google Cloud Agent SDK Master - Production-Ready Agent Systems\n\nThis Agent Skill provides comprehensive mastery of Google's Agent Development Kit (ADK) and Agent Starter Pack for building and deploying production-grade containerized agents.\n\n## Core Capabilities\n\n### ? Agent Development Kit (ADK)\n\n**Framework Overview:**\n- **Open-source Python framework** from Google\n- Same framework powering Google Agentspace and CES\n- Build production agents in \u003C100 lines of code\n- Model-agnostic (optimized for Gemini)\n- Deployment-agnostic (local, Cloud Run, GKE, Agent Engine)\n\n**Supported Agent Types:**\n1. **LLM Agents**: Dynamic routing with intelligence\n2. **Workflow Agents**:\n   - Sequential: Linear execution\n   - Loop: Iterative processing\n   - Parallel: Concurrent execution\n3. **Custom Agents**: User-defined implementations\n4. **Multi-agent Systems**: Hierarchical coordination\n\n**Key Features:**\n- Flexible orchestration (workflow & LLM-driven)\n- Tool ecosystem (search, code execution, custom functions)\n- Third-party integrations (LangChain, CrewAI)\n- Agents-as-tools capability\n- Built-in evaluation framework\n- Cloud Trace integration\n\n### ? Agent Starter Pack\n\n**Production Templates:**\n1. **adk_base** - ReAct agent using ADK\n2. **agentic_rag** - Document retrieval + Q&A with search\n3. **langgraph_base_react** - LangGraph ReAct implementation\n4. **crewai_coding_crew** - Multi-agent coding system\n5. **adk_live** - Multimodal RAG (audio\u002Fvideo\u002Ftext)\n\n**Infrastructure Automation:**\n- CI\u002FCD setup with single command\n- GitHub Actions or Cloud Build pipelines\n- Multi-environment support (dev, staging, prod)\n- Automated testing and evaluation\n- Deployment rollback mechanisms\n\n### ? Deployment Targets\n\n**1. Vertex AI Agent Engine**\n- Fully managed runtime\n- Auto-scaling and load balancing\n- Built-in observability\n- Serverless architecture\n- Best for: Production-scale agents\n\n**2. Cloud Run**\n- Containerized serverless\n- Pay-per-use pricing\n- Custom domain support\n- Traffic splitting\n- Best for: Web-facing agents\n\n**3. Google Kubernetes Engine (GKE)**\n- Full container orchestration\n- Advanced networking\n- Resource management\n- Multi-cluster support\n- Best for: Complex multi-agent systems\n\n**4. Local\u002FDocker**\n- Development and testing\n- Custom infrastructure\n- On-premises deployment\n- Best for: POC and debugging\n\n### ? Technical Implementation\n\n**Installation:**\n```bash\n# Agent Starter Pack (recommended)\npip install agent-starter-pack\n\n# or direct from GitHub\nuvx agent-starter-pack create my-agent\n\n# ADK only\npip install google-cloud-aiplatform[adk,agent_engines]>=1.111\n```\n\n**Create Agent (ADK):**\n```python\nfrom google.cloud.aiplatform import agent\nfrom vertexai.preview.agents import ADKAgent\n\n# Simple ReAct agent\n@agent.adk_agent\nclass MyAgent(ADKAgent):\n    def __init__(self):\n        super().__init__(\n            model=\"gemini-2.5-pro\",\n            tools=[search_tool, code_exec_tool]\n        )\n\n    def run(self, query: str):\n        return self.generate(query)\n\n# Multi-agent orchestration\nclass OrchestratorAgent(ADKAgent):\n    def __init__(self):\n        self.research_agent = ResearchAgent()\n        self.analysis_agent = AnalysisAgent()\n        self.writer_agent = WriterAgent()\n\n    def run(self, task: str):\n        research = self.research_agent.run(task)\n        analysis = self.analysis_agent.run(research)\n        output = self.writer_agent.run(analysis)\n        return output\n```\n\n**Using Agent Starter Pack:**\n```bash\n# Create project with template\nuvx agent-starter-pack create my-rag-agent \\\n    --template agentic_rag \\\n    --deployment cloud_run\n\n# Generates complete structure:\nmy-rag-agent\u002F\n├── src\u002F\n│   ├── agent.py          # Agent implementation\n│   ├── tools\u002F            # Custom tools\n│   └── config.py         # Configuration\n├── deployment\u002F\n│   ├── Dockerfile\n│   ├── cloudbuild.yaml\n│   └── terraform\u002F\n├── tests\u002F\n│   ├── unit_tests.py\n│   └── integration_tests.py\n└── .github\u002Fworkflows\u002F    # CI\u002FCD pipelines\n```\n\n**Deploy to Cloud Run:**\n```bash\n# Using ADK CLI\nadk deploy \\\n    --target cloud_run \\\n    --region us-central1 \\\n    --service-account sa@project.iam.gserviceaccount.com\n\n# Manual with Docker\ndocker build -t gcr.io\u002FPROJECT\u002Fagent:latest .\ndocker push gcr.io\u002FPROJECT\u002Fagent:latest\ngcloud run deploy agent \\\n    --image gcr.io\u002FPROJECT\u002Fagent:latest \\\n    --region us-central1 \\\n    --allow-unauthenticated\n```\n\n**Deploy to Agent Engine:**\n```bash\n# Using Agent Starter Pack\nasp deploy \\\n    --env production \\\n    --target agent_engine\n\n# Manual deployment\nfrom google.cloud.aiplatform import agent_engines\nagent_engines.deploy_agent(\n    agent_id=\"my-agent\",\n    project=\"PROJECT_ID\",\n    location=\"us-central1\"\n)\n```\n\n### ? RAG Agent Implementation\n\n**Vector Search Integration:**\n```python\nfrom vertexai.preview.rag import VectorSearchTool\nfrom google.cloud import aiplatform\n\n# Set up vector search\nvector_search = VectorSearchTool(\n    index_endpoint=\"projects\u002FPROJECT\u002Flocations\u002FLOCATION\u002FindexEndpoints\u002FINDEX_ID\",\n    deployed_index_id=\"deployed_index\"\n)\n\n# RAG agent with ADK\nclass RAGAgent(ADKAgent):\n    def __init__(self):\n        super().__init__(\n            model=\"gemini-2.5-pro\",\n            tools=[vector_search, web_search_tool]\n        )\n\n    def run(self, query: str):\n        # Retrieves relevant docs automatically\n        response = self.generate(\n            f\"Answer this using retrieved context: {query}\"\n        )\n        return response\n```\n\n**Vertex AI Search Integration:**\n```python\nfrom vertexai.preview.search import VertexAISearchTool\n\n# Enterprise search integration\nvertex_search = VertexAISearchTool(\n    data_store_id=\"DATA_STORE_ID\",\n    project=\"PROJECT_ID\"\n)\n\nagent = ADKAgent(\n    model=\"gemini-2.5-pro\",\n    tools=[vertex_search]\n)\n```\n\n### ? CI\u002FCD Automation\n\n**GitHub Actions (auto-generated):**\n```yaml\nname: Deploy Agent\non:\n  push:\n    branches: [main]\n\njobs:\n  deploy:\n    runs-on: ubuntu-latest\n    steps:\n      - uses: actions\u002Fcheckout@v3\n      - name: Test Agent\n        run: pytest tests\u002F\n      - name: Deploy to Cloud Run\n        run: |\n          gcloud run deploy agent \\\n            --source . \\\n            --region us-central1\n```\n\n**Cloud Build Pipeline:**\n```yaml\nsteps:\n  # Build container\n  - name: 'gcr.io\u002Fcloud-builders\u002Fdocker'\n    args: ['build', '-t', 'gcr.io\u002F$PROJECT_ID\u002Fagent', '.']\n\n  # Run tests\n  - name: 'gcr.io\u002F$PROJECT_ID\u002Fagent'\n    args: ['pytest', 'tests\u002F']\n\n  # Deploy to Cloud Run\n  - name: 'gcr.io\u002Fcloud-builders\u002Fgcloud'\n    args:\n      - 'run'\n      - 'deploy'\n      - 'agent'\n      - '--image=gcr.io\u002F$PROJECT_ID\u002Fagent'\n      - '--region=us-central1'\n```\n\n### ? Multi-Agent Orchestration\n\n**Hierarchical Agents:**\n```python\n# Coordinator agent with specialized sub-agents\nclass ProjectManagerAgent(ADKAgent):\n    def __init__(self):\n        self.researcher = ResearchAgent()\n        self.analyst = AnalysisAgent()\n        self.writer = WriterAgent()\n        self.reviewer = ReviewAgent()\n\n    def run(self, project_brief: str):\n        # Coordinate multiple agents\n        research = self.researcher.run(project_brief)\n        analysis = self.analyst.run(research)\n        draft = self.writer.run(analysis)\n        final = self.reviewer.run(draft)\n        return final\n```\n\n**Parallel Agent Execution:**\n```python\nimport asyncio\n\nclass ParallelResearchAgent(ADKAgent):\n    async def research_topic(self, topics: list[str]):\n        # Run multiple agents concurrently\n        tasks = [\n            self.specialized_agent(topic)\n            for topic in topics\n        ]\n        results = await asyncio.gather(*tasks)\n        return self.synthesize(results)\n```\n\n### ? Evaluation & Monitoring\n\n**Built-in Evaluation:**\n```python\nfrom google.cloud.aiplatform import agent_evaluation\n\n# Define evaluation metrics\neval_config = agent_evaluation.EvaluationConfig(\n    metrics=[\"accuracy\", \"relevance\", \"safety\"],\n    test_dataset=\"gs:\u002F\u002Fbucket\u002Feval_data.jsonl\"\n)\n\n# Run evaluation\nresults = agent.evaluate(eval_config)\nprint(f\"Accuracy: {results.accuracy}\")\nprint(f\"Relevance: {results.relevance}\")\n```\n\n**Cloud Trace Integration:**\n```python\nfrom google.cloud import trace_v1\n\n# Automatic tracing\n@traced_agent\nclass MonitoredAgent(ADKAgent):\n    def run(self, query: str):\n        # All calls automatically traced\n        with self.trace_span(\"retrieval\"):\n            docs = self.retrieve(query)\n\n        with self.trace_span(\"generation\"):\n            response = self.generate(query, docs)\n\n        return response\n```\n\n### ? Security & Best Practices\n\n**1. Service Account Management:**\n```bash\n# Create minimal-permission service account\ngcloud iam service-accounts create agent-sa \\\n    --display-name \"Agent Service Account\"\n\n# Grant only required permissions\ngcloud projects add-iam-policy-binding PROJECT_ID \\\n    --member=\"serviceAccount:agent-sa@PROJECT.iam.gserviceaccount.com\" \\\n    --role=\"roles\u002Faiplatform.user\"\n```\n\n**2. Secret Management:**\n```python\nfrom google.cloud import secretmanager\n\ndef get_api_key():\n    client = secretmanager.SecretManagerServiceClient()\n    name = \"projects\u002FPROJECT\u002Fsecrets\u002Fapi-key\u002Fversions\u002Flatest\"\n    response = client.access_secret_version(name=name)\n    return response.payload.data.decode('UTF-8')\n```\n\n**3. VPC Service Controls:**\n```bash\n# Enable VPC SC for data security\ngcloud access-context-manager perimeters create agent-perimeter \\\n    --resources=projects\u002FPROJECT_ID \\\n    --restricted-services=aiplatform.googleapis.com\n```\n\n### ? Cost Optimization\n\n**Strategies:**\n- Use Gemini 2.5 Flash for most operations\n- Cache embeddings for RAG systems\n- Implement request batching\n- Use preemptible GKE nodes\n- Monitor token usage in Cloud Monitoring\n\n**Pricing Examples:**\n- Cloud Run: $0.00024\u002FGB-second\n- Agent Engine: Pay-per-request pricing\n- GKE: Standard cluster costs\n- Gemini API: $3.50\u002F1M tokens (Pro)\n\n### ? Reference Architecture\n\n**Production Agent System:**\n```\n┌─────────────────┐\n│   Load Balancer │\n└────────┬────────┘\n         │\n    ┌────▼────┐\n    │Cloud Run│ (Agent containers)\n    └────┬────┘\n         │\n    ┌────▼──────────┐\n    │ Agent Engine  │ (Orchestration)\n    └────┬──────────┘\n         │\n    ┌────▼────────────────┐\n    │  Vertex AI Search   │ (RAG)\n    │  Vector Search      │\n    │  Gemini 2.5 Pro     │\n    └─────────────────────┘\n```\n\n### ? Best Practices for Jeremy\n\n**1. Start with Templates:**\n```bash\n# Use Agent Starter Pack templates\nuvx agent-starter-pack create my-agent --template agentic_rag\n```\n\n**2. Local Development:**\n```bash\n# Test locally first\nadk serve --port 8080\ncurl http:\u002F\u002Flocalhost:8080\u002Fquery -d '{\"question\": \"test\"}'\n```\n\n**3. Gradual Deployment:**\n```bash\n# Deploy to dev → staging → prod\nasp deploy --env dev\n# Test thoroughly\nasp deploy --env staging\n# Final production push\nasp deploy --env production\n```\n\n**4. Monitor Everything:**\n- Enable Cloud Trace\n- Set up error reporting\n- Track token usage\n- Monitor response times\n- Set up alerting\n\n### ? Official Documentation\n\n**Core Resources:**\n- ADK Docs: https:\u002F\u002Fgoogle.github.io\u002Fadk-docs\u002F\n- Agent Starter Pack: https:\u002F\u002Fgithub.com\u002FGoogleCloudPlatform\u002Fagent-starter-pack\n- Agent Engine: https:\u002F\u002Fcloud.google.com\u002Fvertex-ai\u002Fgenerative-ai\u002Fdocs\u002Fagent-engine\u002Foverview\n- Agent Builder: https:\u002F\u002Fcloud.google.com\u002Fproducts\u002Fagent-builder\n\n**Tutorials:**\n- Building AI Agents: https:\u002F\u002Fcodelabs.developers.google.com\u002Fdevsite\u002Fcodelabs\u002Fbuilding-ai-agents-vertexai\n- Multi-agent Systems: https:\u002F\u002Fcloud.google.com\u002Fblog\u002Fproducts\u002Fai-machine-learning\u002Fbuild-and-manage-multi-system-agents-with-vertex-ai\n\n## When This Skill Activates\n\nThis skill automatically activates when you mention:\n- Agent development, ADK, or Agent Starter Pack\n- Multi-agent systems or orchestration\n- Containerized agent deployment\n- Cloud Run, GKE, or Agent Engine deployment\n- RAG agents or ReAct agents\n- Agent templates or scaffolding\n- CI\u002FCD for agents\n- Production agent systems\n\n## Integration with Other Services\n\n**Google Cloud:**\n- Vertex AI (Gemini, Search, Vector Search)\n- Cloud Storage (data storage)\n- Cloud Functions (triggers)\n- Cloud Scheduler (automation)\n- Cloud Logging & Monitoring\n\n**Third-party:**\n- LangChain integration\n- CrewAI orchestration\n- Custom tool frameworks\n\n## Success Metrics\n\n**Track:**\n- Agent response time (target: \u003C2s)\n- Evaluation scores (target: >85% accuracy)\n- Deployment frequency (target: daily)\n- System uptime (target: 99.9%)\n- Cost per query (target: \u003C$0.01)\n\n---\n\n**This skill makes Jeremy a Google Cloud agent architecture expert with instant access to ADK, Agent Starter Pack, and production deployment patterns.**\n\n## Prerequisites\n\n- Access to project files in {baseDir}\u002F\n- Required tools and dependencies installed\n- Understanding of skill functionality\n- Permissions for file operations\n\n## Instructions\n\n1. Identify skill activation trigger and context\n2. Gather required inputs and parameters\n3. Execute skill workflow systematically\n4. Validate outputs meet requirements\n5. Handle errors and edge cases appropriately\n6. Provide clear results and next steps\n\n## Output\n\n- Primary deliverables based on skill purpose\n- Status indicators and success metrics\n- Generated files or configurations\n- Reports and summaries as applicable\n- Recommendations for follow-up actions\n\n## Error Handling\n\nIf execution fails:\n- Verify prerequisites are met\n- Check input parameters and formats\n- Validate file paths and permissions\n- Review error messages for root cause\n- Consult documentation for troubleshooting\n\n## Resources\n\n- Official documentation for related tools\n- Best practices guides\n- Example use cases and templates\n- Community forums and support channels\n","# Google Cloud Agent SDK Master - Production-Ready Agent Systems\n\nThis Agent Skill provides comprehensive mastery of Google's Agent Development Kit (ADK) and Agent Starter Pack for building and deploying production-grade containerized agents.\n\n## Core Capabilities\n\n### ? Agent Development Kit (ADK)\n\n**Framework Overview:**\n- **Open-source Python framework** from Google\n- Same framework powering Google Agentspace and CES\n- Build production agents in \u003C100 lines of code\n- Model-agnostic (optimized for Gemini)\n- Deployment-agnostic (local, Cloud Run, GKE, Agent Engine)\n\n**Supported Agent Types:**\n1. **LLM Agents**: Dynamic routing with intelligence\n2. **Workflow Agents**:\n   - Sequential: Linear execution\n   - Loop: Iterative processing\n   - Parallel: Concurrent execution\n3. **Custom Agents**: User-defined implementations\n4. **Multi-agent Systems**: Hierarchical coordination\n\n**Key Features:**\n- Flexible orchestration (workflow & LLM-driven)\n- Tool ecosystem (search, code execution, custom functions)\n- Third-party integrations (LangChain, CrewAI)\n- Agents-as-tools capability\n- Built-in evaluation framework\n- Cloud Trace integration\n\n### ? Agent Starter Pack\n\n**Production Templates:**\n1. **adk_base** - ReAct agent using ADK\n2. **agentic_rag** - Document retrieval + Q&A with search\n3. **langgraph_base_react** - LangGraph ReAct implementation\n4. **crewai_coding_crew** - Multi-agent coding system\n5. **adk_live** - Multimodal RAG (audio\u002Fvideo\u002Ftext)\n\n**Infrastructure Automation:**\n- CI\u002FCD setup with single command\n- GitHub Actions or Cloud Build pipelines\n- Multi-environment support (dev, staging, prod)\n- Automated testing and evaluation\n- Deployment rollback mechanisms\n\n### ? Deployment Targets\n\n**1. Vertex AI Agent Engine**\n- Fully managed runtime\n- Auto-scaling and load balancing\n- Built-in observability\n- Serverless architecture\n- Best for: Production-scale agents\n\n**2. Cloud Run**\n- Containerized serverless\n- Pay-per-use pricing\n- Custom domain support\n- Traffic splitting\n- Best for: Web-facing agents\n\n**3. Google Kubernetes Engine (GKE)**\n- Full container orchestration\n- Advanced networking\n- Resource management\n- Multi-cluster support\n- Best for: Complex multi-agent systems\n\n**4. Local\u002FDocker**\n- Development and testing\n- Custom infrastructure\n- On-premises deployment\n- Best for: POC and debugging\n\n### ? Technical Implementation\n\n**Installation:**\n```bash\n# Agent Starter Pack (recommended)\npip install agent-starter-pack\n\n# or direct from GitHub\nuvx agent-starter-pack create my-agent\n\n# ADK only\npip install google-cloud-aiplatform[adk,agent_engines]>=1.111\n```\n\n**Create Agent (ADK):**\n```python\nfrom google.cloud.aiplatform import agent\nfrom vertexai.preview.agents import ADKAgent\n\n# Simple ReAct agent\n@agent.adk_agent\nclass MyAgent(ADKAgent):\n    def __init__(self):\n        super().__init__(\n            model=\"gemini-2.5-pro\",\n            tools=[search_tool, code_exec_tool]\n        )\n\n    def run(self, query: str):\n        return self.generate(query)\n\n# Multi-agent orchestration\nclass OrchestratorAgent(ADKAgent):\n    def __init__(self):\n        self.research_agent = ResearchAgent()\n        self.analysis_agent = AnalysisAgent()\n        self.writer_agent = WriterAgent()\n\n    def run(self, task: str):\n        research = self.research_agent.run(task)\n        analysis = self.analysis_agent.run(research)\n        output = self.writer_agent.run(analysis)\n        return output\n```\n\n**Using Agent Starter Pack:**\n```bash\n# Create project with template\nuvx agent-starter-pack create my-rag-agent \\\n    --template agentic_rag \\\n    --deployment cloud_run\n\n# Generates complete structure:\nmy-rag-agent\u002F\n├── src\u002F\n│   ├── agent.py          # Agent implementation\n│   ├── tools\u002F            # Custom tools\n│   └── config.py         # Configuration\n├── deployment\u002F\n│   ├── Dockerfile\n│   ├── cloudbuild.yaml\n│   └── terraform\u002F\n├── tests\u002F\n│   ├── unit_tests.py\n│   └── integration_tests.py\n└── .github\u002Fworkflows\u002F    # CI\u002FCD pipelines\n```\n\n**Deploy to Cloud Run:**\n```bash\n# Using ADK CLI\nadk deploy \\\n    --target cloud_run \\\n    --region us-central1 \\\n    --service-account sa@project.iam.gserviceaccount.com\n\n# Manual with Docker\ndocker build -t gcr.io\u002FPROJECT\u002Fagent:latest .\ndocker push gcr.io\u002FPROJECT\u002Fagent:latest\ngcloud run deploy agent \\\n    --image gcr.io\u002FPROJECT\u002Fagent:latest \\\n    --region us-central1 \\\n    --allow-unauthenticated\n```\n\n**Deploy to Agent Engine:**\n```bash\n# Using Agent Starter Pack\nasp deploy \\\n    --env production \\\n    --target agent_engine\n\n# Manual deployment\nfrom google.cloud.aiplatform import agent_engines\nagent_engines.deploy_agent(\n    agent_id=\"my-agent\",\n    project=\"PROJECT_ID\",\n    location=\"us-central1\"\n)\n```\n\n### ? RAG Agent Implementation\n\n**Vector Search Integration:**\n```python\nfrom vertexai.preview.rag import VectorSearchTool\nfrom google.cloud import aiplatform\n\n# Set up vector search\nvector_search = VectorSearchTool(\n    index_endpoint=\"projects\u002FPROJECT\u002Flocations\u002FLOCATION\u002FindexEndpoints\u002FINDEX_ID\",\n    deployed_index_id=\"deployed_index\"\n)\n\n# RAG agent with ADK\nclass RAGAgent(ADKAgent):\n    def __init__(self):\n        super().__init__(\n            model=\"gemini-2.5-pro\",\n            tools=[vector_search, web_search_tool]\n        )\n\n    def run(self, query: str):\n        # Retrieves relevant docs automatically\n        response = self.generate(\n            f\"Answer this using retrieved context: {query}\"\n        )\n        return response\n```\n\n**Vertex AI Search Integration:**\n```python\nfrom vertexai.preview.search import VertexAISearchTool\n\n# Enterprise search integration\nvertex_search = VertexAISearchTool(\n    data_store_id=\"DATA_STORE_ID\",\n    project=\"PROJECT_ID\"\n)\n\nagent = ADKAgent(\n    model=\"gemini-2.5-pro\",\n    tools=[vertex_search]\n)\n```\n\n### ? CI\u002FCD Automation\n\n**GitHub Actions (auto-generated):**\n```yaml\nname: Deploy Agent\non:\n  push:\n    branches: [main]\n\njobs:\n  deploy:\n    runs-on: ubuntu-latest\n    steps:\n      - uses: actions\u002Fcheckout@v3\n      - name: Test Agent\n        run: pytest tests\u002F\n      - name: Deploy to Cloud Run\n        run: |\n          gcloud run deploy agent \\\n            --source . \\\n            --region us-central1\n```\n\n**Cloud Build Pipeline:**\n```yaml\nsteps:\n  # Build container\n  - name: 'gcr.io\u002Fcloud-builders\u002Fdocker'\n    args: ['build', '-t', 'gcr.io\u002F$PROJECT_ID\u002Fagent', '.']\n\n  # Run tests\n  - name: 'gcr.io\u002F$PROJECT_ID\u002Fagent'\n    args: ['pytest', 'tests\u002F']\n\n  # Deploy to Cloud Run\n  - name: 'gcr.io\u002Fcloud-builders\u002Fgcloud'\n    args:\n      - 'run'\n      - 'deploy'\n      - 'agent'\n      - '--image=gcr.io\u002F$PROJECT_ID\u002Fagent'\n      - '--region=us-central1'\n```\n\n### ? Multi-Agent Orchestration\n\n**Hierarchical Agents:**\n```python\n# Coordinator agent with specialized sub-agents\nclass ProjectManagerAgent(ADKAgent):\n    def __init__(self):\n        self.researcher = ResearchAgent()\n        self.analyst = AnalysisAgent()\n        self.writer = WriterAgent()\n        self.reviewer = ReviewAgent()\n\n    def run(self, project_brief: str):\n        # Coordinate multiple agents\n        research = self.researcher.run(project_brief)\n        analysis = self.analyst.run(research)\n        draft = self.writer.run(analysis)\n        final = self.reviewer.run(draft)\n        return final\n```\n\n**Parallel Agent Execution:**\n```python\nimport asyncio\n\nclass ParallelResearchAgent(ADKAgent):\n    async def research_topic(self, topics: list[str]):\n        # Run multiple agents concurrently\n        tasks = [\n            self.specialized_agent(topic)\n            for topic in topics\n        ]\n        results = await asyncio.gather(*tasks)\n        return self.synthesize(results)\n```\n\n### ? Evaluation & Monitoring\n\n**Built-in Evaluation:**\n```python\nfrom google.cloud.aiplatform import agent_evaluation\n\n# Define evaluation metrics\neval_config = agent_evaluation.EvaluationConfig(\n    metrics=[\"accuracy\", \"relevance\", \"safety\"],\n    test_dataset=\"gs:\u002F\u002Fbucket\u002Feval_data.jsonl\"\n)\n\n# Run evaluation\nresults = agent.evaluate(eval_config)\nprint(f\"Accuracy: {results.accuracy}\")\nprint(f\"Relevance: {results.relevance}\")\n```\n\n**Cloud Trace Integration:**\n```python\nfrom google.cloud import trace_v1\n\n# Automatic tracing\n@traced_agent\nclass MonitoredAgent(ADKAgent):\n    def run(self, query: str):\n        # All calls automatically traced\n        with self.trace_span(\"retrieval\"):\n            docs = self.retrieve(query)\n\n        with self.trace_span(\"generation\"):\n            response = self.generate(query, docs)\n\n        return response\n```\n\n### ? Security & Best Practices\n\n**1. Service Account Management:**\n```bash\n# Create minimal-permission service account\ngcloud iam service-accounts create agent-sa \\\n    --display-name \"Agent Service Account\"\n\n# Grant only required permissions\ngcloud projects add-iam-policy-binding PROJECT_ID \\\n    --member=\"serviceAccount:agent-sa@PROJECT.iam.gserviceaccount.com\" \\\n    --role=\"roles\u002Faiplatform.user\"\n```\n\n**2. Secret Management:**\n```python\nfrom google.cloud import secretmanager\n\ndef get_api_key():\n    client = secretmanager.SecretManagerServiceClient()\n    name = \"projects\u002FPROJECT\u002Fsecrets\u002Fapi-key\u002Fversions\u002Flatest\"\n    response = client.access_secret_version(name=name)\n    return response.payload.data.decode('UTF-8')\n```\n\n**3. VPC Service Controls:**\n```bash\n# Enable VPC SC for data security\ngcloud access-context-manager perimeters create agent-perimeter \\\n    --resources=projects\u002FPROJECT_ID \\\n    --restricted-services=aiplatform.googleapis.com\n```\n\n### ? Cost Optimization\n\n**Strategies:**\n- Use Gemini 2.5 Flash for most operations\n- Cache embeddings for RAG systems\n- Implement request batching\n- Use preemptible GKE nodes\n- Monitor token usage in Cloud Monitoring\n\n**Pricing Examples:**\n- Cloud Run: $0.00024\u002FGB-second\n- Agent Engine: Pay-per-request pricing\n- GKE: Standard cluster costs\n- Gemini API: $3.50\u002F1M tokens (Pro)\n\n### ? Reference Architecture\n\n**Production Agent System:**\n```\n┌─────────────────┐\n│   Load Balancer │\n└────────┬────────┘\n         │\n    ┌────▼────┐\n    │Cloud Run│ (Agent containers)\n    └────┬────┘\n         │\n    ┌────▼──────────┐\n    │ Agent Engine  │ (Orchestration)\n    └────┬──────────┘\n         │\n    ┌────▼────────────────┐\n    │  Vertex AI Search   │ (RAG)\n    │  Vector Search      │\n    │  Gemini 2.5 Pro     │\n    └─────────────────────┘\n```\n\n### ? Best Practices for Jeremy\n\n**1. Start with Templates:**\n```bash\n# Use Agent Starter Pack templates\nuvx agent-starter-pack create my-agent --template agentic_rag\n```\n\n**2. Local Development:**\n```bash\n# Test locally first\nadk serve --port 8080\ncurl http:\u002F\u002Flocalhost:8080\u002Fquery -d '{\"question\": \"test\"}'\n```\n\n**3. Gradual Deployment:**\n```bash\n# Deploy to dev → staging → prod\nasp deploy --env dev\n# Test thoroughly\nasp deploy --env staging\n# Final production push\nasp deploy --env production\n```\n\n**4. Monitor Everything:**\n- Enable Cloud Trace\n- Set up error reporting\n- Track token usage\n- Monitor response times\n- Set up alerting\n\n### ? Official Documentation\n\n**Core Resources:**\n- ADK Docs: https:\u002F\u002Fgoogle.github.io\u002Fadk-docs\u002F\n- Agent Starter Pack: https:\u002F\u002Fgithub.com\u002FGoogleCloudPlatform\u002Fagent-starter-pack\n- Agent Engine: https:\u002F\u002Fcloud.google.com\u002Fvertex-ai\u002Fgenerative-ai\u002Fdocs\u002Fagent-engine\u002Foverview\n- Agent Builder: https:\u002F\u002Fcloud.google.com\u002Fproducts\u002Fagent-builder\n\n**Tutorials:**\n- Building AI Agents: https:\u002F\u002Fcodelabs.developers.google.com\u002Fdevsite\u002Fcodelabs\u002Fbuilding-ai-agents-vertexai\n- Multi-agent Systems: https:\u002F\u002Fcloud.google.com\u002Fblog\u002Fproducts\u002Fai-machine-learning\u002Fbuild-and-manage-multi-system-agents-with-vertex-ai\n\n## When This Skill Activates\n\nThis skill automatically activates when you mention:\n- Agent development, ADK, or Agent Starter Pack\n- Multi-agent systems or orchestration\n- Containerized agent deployment\n- Cloud Run, GKE, or Agent Engine deployment\n- RAG agents or ReAct agents\n- Agent templates or scaffolding\n- CI\u002FCD for agents\n- Production agent systems\n\n## Integration with Other Services\n\n**Google Cloud:**\n- Vertex AI (Gemini, Search, Vector Search)\n- Cloud Storage (data storage)\n- Cloud Functions (triggers)\n- Cloud Scheduler (automation)\n- Cloud Logging & Monitoring\n\n**Third-party:**\n- LangChain integration\n- CrewAI orchestration\n- Custom tool frameworks\n\n## Success Metrics\n\n**Track:**\n- Agent response time (target: \u003C2s)\n- Evaluation scores (target: >85% accuracy)\n- Deployment frequency (target: daily)\n- System uptime (target: 99.9%)\n- Cost per query (target: \u003C$0.01)\n\n---\n\n**This skill makes Jeremy a Google Cloud agent architecture expert with instant access to ADK, Agent Starter Pack, and production deployment patterns.**\n\n## Prerequisites\n\n- Access to project files in {baseDir}\u002F\n- Required tools and dependencies installed\n- Understanding of skill functionality\n- Permissions for file operations\n\n## Instructions\n\n1. Identify skill activation trigger and context\n2. Gather required inputs and parameters\n3. Execute skill workflow systematically\n4. Validate outputs meet requirements\n5. Handle errors and edge cases appropriately\n6. Provide clear results and next steps\n\n## Output\n\n- Primary deliverables based on skill purpose\n- Status indicators and success metrics\n- Generated files or configurations\n- Reports and summaries as applicable\n- Recommendations for follow-up actions\n\n## Error Handling\n\nIf execution fails:\n- Verify prerequisites are met\n- Check input parameters and formats\n- Validate file paths and permissions\n- Review error messages for root cause\n- Consult documentation for troubleshooting\n\n## Resources\n\n- Official documentation for related tools\n- Best practices guides\n- Example use cases and templates\n- Community forums and support channels\n",{"name":5,"license":15,"version":43,"description":7,"allowed-tools":44},"1.0.0",[45,46,47,48],"Read","WebFetch","WebSearch","Grep","main","01d3fafeca1133f841956b8b90b939fee92d71e7","plugins\u002Fclaude-code-plugins-plus\u002Fplugins\u002Fproductivity\u002F004-jeremy-google-cloud-agent-sdk\u002Fskills\u002Fagent-sdk-master",9,"https:\u002F\u002Fgithub.com\u002FBbgnsurfTech\u002Fclaude-skills-collection","https:\u002F\u002Fgithub.com\u002FBbgnsurfTech","www.bbgnsurf.com","An ICT solutions provider and software development company","2025-12-18 20:19:58",{"source":8,"skillName":5,"commands":59,"prompt":69,"zipAvailable":70},[60,63,66],{"tool":61,"command":62},"npx","npx skills add BbgnsurfTech\u002Fclaude-skills-collection --skill \"Google Cloud Agent SDK Master\"",{"tool":64,"command":65},"bunx","bunx skills add BbgnsurfTech\u002Fclaude-skills-collection --skill \"Google Cloud Agent SDK Master\"",{"tool":67,"command":68},"pnpm","pnpm dlx skills add BbgnsurfTech\u002Fclaude-skills-collection --skill \"Google Cloud Agent SDK Master\"","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FBbgnsurfTech\u002Fclaude-skills-collection\u002Fblob\u002Fmain\u002Fplugins\u002Fclaude-code-plugins-plus\u002Fplugins\u002Fproductivity\u002F004-jeremy-google-cloud-agent-sdk\u002Fskills\u002Fagent-sdk-master\u002FSKILL.md",true,[72,78,84],{"path":73,"resourceType":74,"resourceTypeDesc":75,"sizeBytes":76,"sourceHtmlUrl":77},"assets\u002FREADME.md","ASSET","资产文件",525,"https:\u002F\u002Fgithub.com\u002FBbgnsurfTech\u002Fclaude-skills-collection\u002Fblob\u002Fmain\u002Fplugins\u002Fclaude-code-plugins-plus\u002Fplugins\u002Fproductivity\u002F004-jeremy-google-cloud-agent-sdk\u002Fskills\u002Fagent-sdk-master\u002Fassets\u002FREADME.md",{"path":79,"resourceType":80,"resourceTypeDesc":81,"sizeBytes":82,"sourceHtmlUrl":83},"references\u002FREADME.md","REFERENCE","参考文档",580,"https:\u002F\u002Fgithub.com\u002FBbgnsurfTech\u002Fclaude-skills-collection\u002Fblob\u002Fmain\u002Fplugins\u002Fclaude-code-plugins-plus\u002Fplugins\u002Fproductivity\u002F004-jeremy-google-cloud-agent-sdk\u002Fskills\u002Fagent-sdk-master\u002Freferences\u002FREADME.md",{"path":85,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":88,"sourceHtmlUrl":89},"scripts\u002FREADME.md","SCRIPT","脚本",622,"https:\u002F\u002Fgithub.com\u002FBbgnsurfTech\u002Fclaude-skills-collection\u002Fblob\u002Fmain\u002Fplugins\u002Fclaude-code-plugins-plus\u002Fplugins\u002Fproductivity\u002F004-jeremy-google-cloud-agent-sdk\u002Fskills\u002Fagent-sdk-master\u002Fscripts\u002FREADME.md",[91,112,131,152,165,179],{"skillNo":92,"name":93,"nameZh":6,"description":94,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":95,"categories":96,"keywords":100,"publishedAt":38},"01M6CDVX5RHG36WP2Z7X8WAYYA","testing-visual-regression","Detect visual changes in UI components using screenshot comparison.\nUse when detecting unintended UI changes or pixel differences.\nTrigger with phrases like \"test visual changes\", \"compare screenshots\", or \"detect UI regressions\".","https:\u002F\u002Fgithub.com\u002FBbgnsurfTech\u002Fclaude-skills-collection\u002Fblob\u002Fmain\u002Fplugins\u002Fclaude-code-plugins-plus\u002Fplugins\u002Ftesting\u002Fvisual-regression-tester\u002Fskills\u002Fvisual-regression-tester\u002FSKILL.md",[97],{"categoryNo":98,"categoryName":99,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000008","测试与质量",[101,102,103,104,33,34,105,37,106,107,108,109,110,111],"testing visual regression","testing","regression","edit","write","components","test","screenshots","screenshot","ui","Bash",{"skillNo":113,"name":114,"nameZh":6,"description":115,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":116,"categories":117,"keywords":119,"publishedAt":38},"01M6CDVT4S54EMAPZ231KSP2XQ","generating-unit-tests","Automatically generate comprehensive unit tests from source code covering happy paths, edge cases, and error conditions.\nUse when creating test coverage for functions, classes, or modules.\nTrigger with phrases like \"generate unit tests\", \"create tests for\", or \"add test coverage\".","https:\u002F\u002Fgithub.com\u002FBbgnsurfTech\u002Fclaude-skills-collection\u002Fblob\u002Fmain\u002Fplugins\u002Fclaude-code-plugins-plus\u002Fplugins\u002Ftesting\u002Funit-test-generator\u002Fskills\u002Funit-test-generator\u002FSKILL.md",[118],{"categoryNo":98,"categoryName":99,"taxonomyType":21,"taxonomyTypeDesc":22},[120,121,122,123,124,107,104,125,126,127,37,128,129,105,34,33,111,130],"unit tests","Generating Unit Tests","generate","create","add test","functions","modules","test coverage","coverage","code","edge",{"skillNo":132,"name":133,"nameZh":6,"description":134,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":135,"categories":136,"keywords":143,"publishedAt":38},"01M6CDVPQKGQ450Q50ZC84FPMR","generating-test-reports","Generate comprehensive test reports with metrics, coverage, and visualizations.\nUse when performing specialized testing.\nTrigger with phrases like \"generate test report\", \"create test documentation\", or \"show test metrics\".","https:\u002F\u002Fgithub.com\u002FBbgnsurfTech\u002Fclaude-skills-collection\u002Fblob\u002Fmain\u002Fplugins\u002Fclaude-code-plugins-plus\u002Fplugins\u002Ftesting\u002Ftest-report-generator\u002Fskills\u002Ftest-report-generator\u002FSKILL.md",[137,138],{"categoryNo":98,"categoryName":99,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":139,"categoryName":140,"taxonomyType":141,"taxonomyTypeDesc":142},"01JBSEEDCAT000000000000034","行政与办公人员","PROFESSION","适用职业",[107,144,145,146,147,37,128,104,148,105,34,149,111,150,122,123,151,102,33],"reports","Generating Test Reports","test report","specialized","report","visualizations","metrics","documentation",{"skillNo":153,"name":154,"nameZh":6,"description":155,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":156,"categories":157,"keywords":159,"publishedAt":38},"01M6CDVK97VFZ53CEYEGQ4QFZ6","orchestrating-test-execution","Coordinate parallel test execution across multiple environments and frameworks.\nUse when performing specialized testing.\nTrigger with phrases like \"orchestrate tests\", \"run parallel tests\", or \"coordinate test execution\".","https:\u002F\u002Fgithub.com\u002FBbgnsurfTech\u002Fclaude-skills-collection\u002Fblob\u002Fmain\u002Fplugins\u002Fclaude-code-plugins-plus\u002Fplugins\u002Ftesting\u002Ftest-orchestrator\u002Fskills\u002Ftest-orchestrator\u002FSKILL.md",[158],{"categoryNo":98,"categoryName":99,"taxonomyType":21,"taxonomyTypeDesc":22},[160,161,107,34,37,104,105,147,33,162,111,163,164,102],"orchestrating test execution","execution","parallel","orchestrate","run",{"skillNo":166,"name":167,"nameZh":6,"description":168,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":169,"categories":170,"keywords":172,"publishedAt":38},"01M6CDVFTCBQ65TGB1YJCZB90G","managing-test-environments","Provision and manage isolated test environments with configuration and data.\nUse when performing specialized testing.\nTrigger with phrases like \"manage test environment\", \"provision test env\", or \"setup test infrastructure\".","https:\u002F\u002Fgithub.com\u002FBbgnsurfTech\u002Fclaude-skills-collection\u002Fblob\u002Fmain\u002Fplugins\u002Fclaude-code-plugins-plus\u002Fplugins\u002Ftesting\u002Ftest-environment-manager\u002Fskills\u002Ftest-environment-manager\u002FSKILL.md",[171],{"categoryNo":98,"categoryName":99,"taxonomyType":21,"taxonomyTypeDesc":22},[173,107,104,105,34,147,33,111,174,175,176,102,177,178,37],"Managing Test Environments","data","infrastructure","setup","environment","manage",{"skillNo":180,"name":181,"nameZh":6,"description":182,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":183,"categories":184,"keywords":186,"publishedAt":38},"01M6CDVD0NPFXVEQGT9CMF02H0","generating-test-doubles","Generate mocks, stubs, spies, and fakes for dependency isolation.\nUse when creating mocks, stubs, or test isolation fixtures.\nTrigger with phrases like \"generate mocks\", \"create test doubles\", or \"setup stubs\".","https:\u002F\u002Fgithub.com\u002FBbgnsurfTech\u002Fclaude-skills-collection\u002Fblob\u002Fmain\u002Fplugins\u002Fclaude-code-plugins-plus\u002Fplugins\u002Ftesting\u002Ftest-doubles-generator\u002Fskills\u002Ftest-doubles-generator\u002FSKILL.md",[185],{"categoryNo":98,"categoryName":99,"taxonomyType":21,"taxonomyTypeDesc":22},[107,187,188,37,104,105,34,33,111,122,123,176],"Generating Test Doubles","dependency"]