skills/gcp/SKILL.md
GCP context skill — gcloud authentication, Artifact Registry image push/pull, Cloud Run deploy, Terraform infra patterns, and common mise.toml GCP env vars. Triggers on: ".tf files", "Terraform", "Dockerfile with gcr.io or pkg.dev", "mise.toml with GCP_ env vars", "gcloud commands", "Cloud Run", "Artifact Registry", "GCP project", "service account impersonation".
npx skillsauth add cloudvoyant/codevoyant gcpInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Lightweight context skill. Loads GCP auth, Artifact Registry, Cloud Run, and Terraform conventions into the agent when GCP-related files are detected.
Load this skill when any of the following are present:
*.tf, *.tfvarsmise.toml contains env vars prefixed GCP_ (e.g. GCP_REGISTRY_PROJECT_ID)Dockerfile references gcr.io or *-docker.pkg.devgcloud CLI or has a gcp-login / tf-apply taskLocal development (application default credentials):
gcloud auth application-default login
Service account impersonation (preferred over key files):
gcloud auth print-access-token \
--impersonate-service-account=SA_NAME@PROJECT_ID.iam.gserviceaccount.com
Docker auth for Artifact Registry (run once per region):
gcloud auth configure-docker REGION-docker.pkg.dev
Many projects expose a mise run gcp-login task that wraps these — check mise.toml first.
See the Artifact Registry docs for the full push/pull reference — here's what matters for our projects:
Image naming convention (always construct from these env vars, never hardcode a region):
${GCP_REGISTRY_REGION}-docker.pkg.dev/${GCP_REGISTRY_PROJECT_ID}/${GCP_REGISTRY_NAME}/${PROJECT}:${VERSION}
Projects that use Docker recipes (see the docker skill's gcp-registry recipe) wire this into docker-compose.yml image: fields and mise run docker-push tasks so the full name never appears as a one-liner in commands.
See the Cloud Run docs for full deployment flags — here's what matters:
Always use mise run deploy (or equivalent task) rather than bare gcloud run deploy — the task bakes in --image, --region, --project, and any service-account bindings. Check mise.toml first.
The flags worth knowing when diagnosing a failed deploy: --service-account (must have Artifact Registry read), --min-instances (avoids cold starts), --allow-unauthenticated vs IAP. The most common failure is Permission denied on image — the deploying service account needs roles/artifactregistry.reader on the registry project.
Standard layout: infrastructure code lives in infra/ (or terraform/) at the repo root, with environment-specific tfvars under infra/envs/{env}/.
Common workflow:
cd infra
terraform init
terraform plan -var-file=envs/dev/terraform.tfvars
terraform apply -var-file=envs/dev/terraform.tfvars
Most projects wrap these in mise/just tasks:
mise run tf-initmise run tf-plan ENV=devmise run tf-apply ENV=devAlways check the project's task runner (call /task list) before running raw terraform commands.
When you see these in [env], the project is GCP-based:
GCP_REGISTRY_PROJECT_ID — GCP project hosting Artifact RegistryGCP_REGISTRY_REGION — registry region (e.g. us-central1)GCP_REGISTRY_NAME — Artifact Registry repository nameGCP_PROJECT_ID — deployment target project (may differ from registry project)PROJECT — project slug, often used as image/service nameVERSION — read from version.txt for image tagsgcloud auth application-default login if you see auth errorsus-central1-docker.pkg.dev and us-east1-docker.pkg.dev are distinct hosts.tfstate filesdevelopment
React patterns: Zustand state management, shadcn/ui + Tailwind CSS, React Three Fiber + Drei for 3D, folder structure, data fetching, and TypeScript conventions. Load when working on React projects (*.tsx) without SvelteKit.
development
QA workflows: investigate and document bugs, post issues to GitHub/GitLab/Linear, and run browser-agent smoke tests. Triggers on: 'qa debug', 'qa report', 'qa smoke', 'run smoke test', 'report bug', 'investigate issue'.
tools
Python project patterns: uv package/workspace management, MLflow experiment tracking, Ray distributed computing, Nvidia Warp GPU kernels, Pydantic validation, Click CLIs, and service architecture. Load when writing Python with pyproject.toml or uv.lock.
development
Code review workflows: create a draft PR/MR, generate AI-powered inline review comments, address change requests, or complete a draft review. Triggers on: "pr open", "pr new", "pr review", "pr address", "pr complete", "open a PR", "create a draft PR", "code review", "pr mr", "pr this PR", "address pr comments", "fix review comments", "complete draft review", "publish review".