Resources
1Install
npx skillscat add cgk-platform/cgk/vertex-ai Install via the SkillsCat registry.
SKILL.md
Vertex AI Integration
Vertex AI provides higher rate limits than AI Studio for Veo video generation and Gemini image generation.
Config
- GCP Project:
gen-lang-client-0013158607 - Location:
us-central1 - Auth:
GOOGLE_APPLICATION_CREDENTIALS→~/.config/gcloud/vertex-service-account.json
AI Studio vs Vertex AI
| AI Studio | Vertex AI | |
|---|---|---|
| Auth | GEMINI_API_KEY | Service Account / ADC |
| Veo GA RPM | Low (easily exhausted) | 50 RPM |
| Veo Preview RPM | Low | 10 RPM |
| Imagen RPM | ~10-20/day free tier | 200 RPM fast |
| Endpoint | generativelanguage.googleapis.com | us-central1-aiplatform.googleapis.com |
Vertex Model IDs
| Use Case | Model ID |
|---|---|
| Veo fast (GA, preferred) | veo-3.1-fast-generate-001 |
| Veo quality (GA, preferred) | veo-3.1-generate-001 |
| Image gen (direct SDK) | gemini-3-pro-image-preview (location: global) |
Connectivity Tests
# Test Veo/text access (no video quota spent)
uv run ~/.openclaw/skills/vertex-ai/scripts/test_vertex_veo.py
# Test image gen via litellm proxy
uv run ~/.openclaw/skills/vertex-ai/scripts/test_vertex_imagen.pyExplicit Vertex Backends
Veo Video Generation
uv run ~/.openclaw/skills/veo-video-gen/scripts/generate_video.py \
--prompt "A mountain lake at dawn, golden light on water" \
--filename "/Users/novarussell/.openclaw/media/test-vertex.mp4" \
--backend vertex-veo-fast \
--no-uploadImage Generation (direct Vertex model)
uv run ~/.openclaw/skills/nano-banana-pro/scripts/generate_image.py \
--prompt "a golden sunset, minimalist" \
--filename "/Users/novarussell/.openclaw/media/test-vertex-img.png" \
--backend vertex-geminiImage via litellm proxy (curl)
curl -s -X POST http://localhost:4000/v1/images/generations \
-H "Authorization: Bearer $LITELLM_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"nano-banana-vertex","prompt":"a golden sunset, minimalist","n":1,"size":"1024x1024"}'Auto-Fallback (Veo)
The veo-video-gen skill automatically falls back to Vertex AI when AI Studio returns 429/ResourceExhausted. No manual intervention needed. Logs: AI Studio unavailable (...). Falling back to Vertex AI...
Auto-Fallback (Images)
The litellm router in config.yaml routes:
nano-banana→ fallback tonano-banana-pro→nano-banana-vertexnano-banana-pro→ fallback tonano-banana→nano-banana-pro-vertex
Known Limitations
- Reference images NOT forwarded on Vertex image fallback: LiteLLM's
vertex_ai/image path does not expose reference image params. Vertex fallback generates fresh from prompt only. - Veo style images not supported: Only Veo 2.0-generate-exp supported style reference; Veo 3.1 does not.
REST API Reference
# Text (verify auth)
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-d '{"contents":[{"role":"user","parts":[{"text":"hello"}]}]}' \
"https://us-central1-aiplatform.googleapis.com/v1/projects/gen-lang-client-0013158607/locations/us-central1/publishers/google/models/gemini-2.5-flash:generateContent"