sha256:5e43de99d2e897d0585c2645318630b21e777bf6fab452df8b7e045bccdd34c7
Last pushed
about 6 hours by sbx
Type
Sandbox Kit
Manifest digest
sha256:5e43de99d2e897d0585c2645318630b21e777bf6fab452df8b7e045bccdd34c7
schemaVersion: "3"
displayName: Claude Code on Vertex AI (mixin)
description: Routes Claude Code at Claude on Google Vertex AI with the Application Default Credentials stored under the vertex credential. Layer it onto the claude workload.
version: 1.0.0
kind: mixin
provides:
- claude-vertex
requires:
- claude
- deb/jq
capabilities:
- type: com.docker.sandbox/network-policy@1
config:
runtime:
allow:
- aiplatform.googleapis.com
- oauth2.googleapis.com
- type: com.docker.sandbox/credential@1
config:
oauth:
credentialFile:
path: ~/.config/gcloud/application_default_credentials.json
structure:
client_id: 764086051850-6qr4p6gpi6hn506pt8ejuq83di341hur.apps.googleusercontent.com
client_secret: d-FL95Q19q7MQmFpd7hHD0Ty
refresh_token: '{{.RefreshToken}}'
type: authorized_user
resourceHosts:
- aiplatform.googleapis.com
sentinels:
accessToken: ya29.sbx-vertex-access-managed-by-proxy
refreshToken: 1//sbx-vertex-refresh-managed-by-proxy
tokenEndpoint:
host: oauth2.googleapis.com
path: /token
phase: runtime
service: vertex
description: Google Application Default Credentials for Vertex AI
- type: com.docker.sandbox/lifecycle@1
config:
install:
- command: |
set -e
cfg=/home/agent/.claude/settings.json
mkdir -p "$(dirname "$cfg")"
[ -s "$cfg" ] || echo '{}' > "$cfg"
jq '.apiKeyHelper = "echo proxy-managed"' "$cfg" > "$cfg.tmp"
mv "$cfg.tmp" "$cfg"
description: Add apiKeyHelper to Claude's settings.json
user: agent
- type: com.docker.sandbox/agent-context@1
config:
contentFile: /usr/share/sandbox/kit/claude-vertex-mixin/claude-vertex-mixin-context.md
args:
vertex_project:
required: true
description: Google Cloud project that hosts the Vertex AI models
env: ANTHROPIC_VERTEX_PROJECT_ID
vertex_region:
default: global
description: Vertex AI region
env: CLOUD_ML_REGION