Files
gemini-cli/packages/a2a-server/cloudbuild.yaml
T
Adam Weidman 3e11913579 feat: Google Chat bridge with A2UI integration, activity cards, and session persistence
Remote agent accessible via Google Chat, built as a two-service architecture:
- A2A server wrapping Gemini CLI agent (concurrency=1, Cloud Run)
- Chat bridge translating Google Chat webhooks to A2A protocol (concurrency=80)

Key features:
- A2UI extension for tool approval surfaces and streaming text
- Collapsible Cards V2 activity cards with interleaved narration and tool calls
- Post-tool text extraction (final answer separated from narration)
- GCS-backed session, workspace, conversation, and ~/.gemini persistence
- YOLO mode (auto-approve tools), /esc (cancel running task), /reset, /yolo, /safe
- Default GEMINI.md seeding for agent response style
- Kubernetes deployment manifests for GKE
- Cloud Build configs for both services
2026-02-23 11:27:59 -05:00

36 lines
923 B
YAML

steps:
# Step 1: Install all dependencies and build
- name: 'node:20-slim'
entrypoint: 'bash'
args:
- '-c'
- |
apt-get update && apt-get install -y python3 make g++ git
npm pkg delete scripts.prepare
npm install
npm run build
env:
- 'HUSKY=0'
# Step 2: Build Docker image (using pre-built dist/ from step 1)
- name: 'gcr.io/cloud-builders/docker'
args:
- 'build'
- '-t'
- 'us-central1-docker.pkg.dev/$PROJECT_ID/gemini-a2a/a2a-server:latest'
- '-f'
- 'packages/a2a-server/Dockerfile'
- '.'
# Step 3: Push to Artifact Registry
- name: 'gcr.io/cloud-builders/docker'
args:
- 'push'
- 'us-central1-docker.pkg.dev/$PROJECT_ID/gemini-a2a/a2a-server:latest'
images:
- 'us-central1-docker.pkg.dev/$PROJECT_ID/gemini-a2a/a2a-server:latest'
timeout: '1800s'
options:
machineType: 'E2_HIGHCPU_8'