Guide · Agent skill
How to use the GKE Cluster Autoscaler Guide agent skill
Updated · written with AI from the project's own documentation and checked against our catalogue data
This guide shows you how to install and use the gke-cluster-autoscaler agent skill, a set of instructions and bundled scripts that turns a compatible AI agent into a guide for node autoscaling on Google Kubernetes Engine (GKE). It is written for engineers who have never installed an agent skill before. By the end you will know what the skill does, how to add it to your agent, how to phrase requests so it triggers, and what to check before running its scripts against a live cluster.
Quick start
- 1Download the skill ZIP. Get the ZIP file for gke-cluster-autoscaler from the download link on this page.
- 2Install it for your agent. Unzip it into ~/.claude/skills/ for personal use, into .claude/skills/ in a project, or upload the ZIP under Settings, Capabilities, Skills in the Claude apps.
- 3Install the prerequisites. Make sure the gcloud CLI, kubectl and jq are available on the machine where the agent runs.
- 4Describe the symptom. Ask in plain language, for example why nodes are not scaling down, and name the cluster or node pool.
- 5Review the scripts. Read any bundled script the agent proposes to run, particularly before running it against a production cluster.
- 6Act on the diagnosis. Apply the changes the agent recommends, and hand any ComputeClass YAML work to the gke-compute-classes skill.
What the skill makes the agent do
Once installed, the agent focuses on GKE node autoscaling, the feature that adds or removes server machines in a cluster as workload changes. The skill helps you enable and tune the Cluster Autoscaler, diagnoses why nodes fail to scale up or down (for example capacity shortages or quota limits), and walks through scale-down blockers such as bare pods, pods marked safe-to-evict as false, local storage, and Pod Disruption Budgets that allow no disruptions.
The skill also covers Spot versus On-Demand capacity planning across zones, and capacity buffers for faster scale-up. It does not generate ComputeClass YAML. For that it tells the agent to hand the work to the separate gke-compute-classes skill.
- Enable and tune Cluster Autoscaler on a cluster or node pool
- Diagnose pods stuck Pending and nodes that never scale up or down
- Plan Spot and On-Demand location policies across zones
- Run bundled scripts that list scale-down blockers or tail autoscaler event logs
Install the gke-cluster-autoscaler skill
Download the ZIP file for the skill from the download link on this page. Then choose one of the two install paths below. A skill is a folder containing a SKILL.md file plus supporting files, so the unzipped folder must sit inside a skills directory that your agent reads.
For a personal install that applies to all your projects, unzip the download into ~/.claude/skills/. For a single project, unzip it into the .claude/skills/ folder inside that project. If you use the Claude apps instead, open Settings, go to Capabilities, then Skills, and upload the ZIP there.
- Personal install: ~/.claude/skills/
- Project install: .claude/skills/ inside your project folder
- Claude apps: Settings → Capabilities → Skills, then upload the ZIP
Check the requirements before you start
The skill needs the gcloud CLI, kubectl and jq installed on the machine where the agent runs its commands. You also need access to a Google Cloud project that contains a GKE cluster, with permissions that let you read and change that cluster.
The skill is specific to Google Kubernetes Engine. Its commands and log names only work on GKE, so it is not useful for clusters running elsewhere.
- gcloud CLI
- kubectl
- jq
- A Google Cloud project with a GKE cluster and suitable permissions
Trigger the skill with natural requests
You do not need to name the skill. The skill is triggered when your request mentions GKE Cluster Autoscaler, node autoscaling, node pool auto-creation, or node auto-provisioning, or when you describe a symptom such as nodes not scaling up or down, zonal stockouts, or capacity buffers. Describe the situation in plain language and include the cluster or node pool name.
If you ask for ComputeClass YAML or priority configuration, the agent should send you to the gke-compute-classes skill instead.
- Why are my GKE nodes not scaling down after the traffic dropped? Cluster is prod-east-1.
- Pods have been Pending for 20 minutes on my GKE cluster. Find out why the autoscaler is not adding nodes.
- We keep getting zonal stockouts for Spot nodes. What should our location policy be?
- Help me pre-warm nodes so new capacity is ready before our traffic spike.
Run the bundled scripts safely
The skill bundles scripts. assets/find-scale-down-blockers.sh lists what is preventing nodes from scaling down. assets/log-autoscaler-events.sh tails and parses autoscaler visibility logs for a cluster. Both run kubectl and gcloud against live resources, and the skill uses the network to reach Google Cloud.
Read a script before you run it, especially against production. The skill's own guidance is to review the scripts before running them on a production cluster.
- Review each script before running it on production
- Test against a non-production cluster first where you can
- Scripts query live resources, so check that you are pointed at the intended project and cluster
assets/log-autoscaler-events.sh <cluster-name>Use the skill's guidance on common causes
The skill checks a fixed list of scale-down blockers, so the agent does not stop at the first symptom. The list covers bare pods with no controller, the safe-to-evict annotation set to false, emptyDir or local storage without safe-to-evict true, Pod Disruption Budgets that allow no disruptions, a node pool at its minimum node count, the scale-down-disabled node annotation, and scheduling constraints based on kubernetes.io/hostname.
The skill also states that DaemonSets do not block scale-down. If system pods are the blocker, it suggests separating them by labeling the kube-system namespace.
- Bare pods with no controller
- safe-to-evict set to false
- Local storage without safe-to-evict true
- Pod Disruption Budgets with zero disruptions allowed
- Node pool at its minimum size
- scale-down-disabled node annotation
- Scheduling constraints using kubernetes.io/hostname
kubectl label ns kube-system cloud.google.com/default-compute-class-non-daemonset=system-poolWhat people use it for
- Finding which pod or annotation is stopping nodes from scaling down in a batch cluster
- Diagnosing pods stuck Pending because a zone is out of Spot capacity
- Planning a location policy that balances On-Demand nodes across zones for high availability
- Tailing autoscaler event logs to see why a scale-up was attempted or skipped
- Pre-warming capacity with a capacity buffer before a known traffic spike
Frequently asked questions
How do I install the gke-cluster-autoscaler skill?
Download the ZIP from the link on this page and unzip it into ~/.claude/skills/ for personal use or into .claude/skills/ in a project. In the Claude apps, you can instead upload the ZIP under Settings, Capabilities, Skills.
What do I need to run this skill?
You need the gcloud CLI, kubectl and jq, plus access to a Google Cloud project with a GKE cluster and permissions to manage it. The skill is only for GKE clusters.
Is the gke-cluster-autoscaler skill free?
The skill is listed under the Apache-2.0 licence. Google Cloud and GKE usage is billed separately by Google and is not covered by this skill.
Why are my GKE nodes not scaling down?
Ask the agent to check scale-down blockers. The skill walks through bare pods, safe-to-evict settings, local storage, Pod Disruption Budgets, minimum node counts and scheduling constraints, and can run find-scale-down-blockers.sh to list them.
Why are pods stuck Pending in GKE and not triggering a scale-up?
Common causes listed by the skill include Spot or On-Demand stockouts in a zone, GCE quota limits, Pod IP exhaustion, node pool maximum limits, and GKE version or machine family mismatches. Quota and capacity errors cause the autoscaler to back off for a while.
Can this skill write my ComputeClass YAML?
No. The skill defers ComputeClass YAML and priority configuration to the separate gke-compute-classes skill, though it can explain operational autoscaler behaviour.
New agent skills, repos and AI tools — every week
The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.
Our verdict
Use this skill if you run GKE clusters that do not scale as expected, plan Spot or On-Demand capacity across zones, or need to find why pods stay Pending or nodes never shut down. Skip it if your clusters are not on Google Kubernetes Engine, or if you need help writing ComputeClass YAML, which is a job for the gke-compute-classes skill.
Download the skill