Opérateur Gastown

VérifiéPrudence

Opérateur Kubernetes pour l'orchestration multi-agent Gas Town via CLI kubectl-gt et templates YAML.

Spar Skills Guide Bot
DevOpsIntermédiaire
22/07/2026
Claude Code
#kubernetes#multi-agent#orchestration#kubectl#gitops

Recommandé pour

Synthèse automatique

Guide l'utilisation de l'opérateur Kubernetes de Gas Town via le plugin kubectl-gt pour créer des rigs, lancer des polecats, regrouper du travail en convois et surveiller l'orchestration multi-agents.

Points forts

  • Commandes « golden » prêtes à copier avec variables explicites (BEAD_ID, RIG, NAME) pour les workflows courants
  • Tableau des erreurs fréquentes associé à leur correctif immédiat (rig not found, secret not found, polecat bloqué)
  • Approche CLI-first avec modèles YAML de secours pour les besoins GitOps
  • Chargement différé des références (CRD, dépannage, anti-patterns) qui préserve le budget de contexte

Limites

  • Suppose l'opérateur Gas Town déjà installé, les CRD présents et le plugin kubectl-gt disponible
  • Certains correctifs sont liés à une version précise (par exemple v0.4.1 pour missing gitRepository)
  • Le contenu détaillé vit dans des fichiers de référence externes absents du SKILL.md
Quand l'utiliser

À utiliser dès qu'il faut créer ou piloter des ressources Gas Town sur un cluster Kubernetes (polecat, rig, convoi, witness, refinery).

Quand l'éviter

À éviter si le cluster ne dispose pas de l'opérateur Gas Town ou si la tâche concerne un autre orchestrateur Kubernetes.

Analyse de sécurité

Prudence
Score qualité82/100

The skill uses powerful Kubernetes CLI tools for legitimate operator workflows, but the broad wildcard permissions and credential-syncing commands introduce meaningful cluster and secret management risk. No destructive or exfiltration commands were found, so it is not risky, but human oversight is warranted.

Points d'attention
  • •Broad Bash allowance for kubectl, helm, and oc permits arbitrary cluster operations including creating secrets and modifying workloads.
  • •Instruction to run `kubectl gt auth sync` to sync Claude credentials may handle sensitive tokens without explicit safeguards.
  • •Skill references secret templates (secret-*.yaml) but does not describe encryption or least-privilege handling.
Comment cette analyse est faite

Exemples

Spawn a polecat for a bead
Sling bead at-1234 onto the athena rig as a polecat named furiosa and wait until the pod is ready (5 minute timeout).
Create a rig
Create a Gas Town rig called athena pointing at git@github.com:acme/athena.git with prefix at, in the gastown-system namespace.
Track a batch in a convoy
Create a convoy named "Wave 1" containing beads at-1234, at-1235 and at-1236, then list the polecats and their status.

name: gastown-operator version: 1.0.0 tier: solo context: repo description: > Kubernetes operator for Gas Town multi-agent orchestration. Triggers on "create polecat", "spawn worker", "kubernetes polecat", "deploy convoy". triggers:

  • "create polecat"
  • "deploy polecat"
  • "spawn polecat"
  • "kubernetes polecat"
  • "k8s polecat"
  • "create convoy"
  • "deploy convoy"
  • "create witness"
  • "create refinery"
  • "gastown kubernetes"
  • "gastown k8s" allowed-tools:
  • Read
  • Write
  • Bash(kubectl:, helm:, oc:*)
  • Grep
  • Glob context-budget: skill-md: 3KB references-total: 25KB typical-session: 8KB

Gas Town Operator Skill

Create Gas Town Kubernetes resources quickly and correctly.

Use the kubectl-gt CLI for normal workflows. YAML templates are for GitOps.


Critical Facts

| Fact | Value | |------|-------| | API Group | gastown.gastown.io/v1alpha1 | | Operator NS | gastown-system | | CRDs | Rig, Polecat, Convoy, Witness, Refinery, BeadStore | | CLI Plugin | kubectl-gt |


Golden Commands (CLI-First)

Create Rig

kubectl gt rig create {{RIG}} \
  --git-url git@github.com:org/repo.git \
  --prefix {{PREFIX}} \
  -n gastown-system

Dispatch Work (Sling)

# With explicit name
kubectl gt sling {{BEAD_ID}} {{RIG}} --name {{NAME}} -n gastown-system

# With themed name (mad-max, minerals, wasteland)
kubectl gt sling {{BEAD_ID}} {{RIG}} --theme mad-max -n gastown-system

# Wait for pod ready
kubectl gt sling {{BEAD_ID}} {{RIG}} --wait-ready --timeout 5m -n gastown-system

Variables: {{BEAD_ID}} (e.g., at-1234), {{RIG}} (e.g., athena), {{NAME}} (e.g., furiosa)

Convoy (Batch Tracking)

kubectl gt convoy create "Wave 1" {{BEAD1}} {{BEAD2}} {{BEAD3}} -n gastown-system

Monitor

kubectl gt polecat list -n gastown-system
kubectl gt polecat logs {{RIG}}/{{NAME}} -f -n gastown-system
kubectl gt polecat status {{RIG}}/{{NAME}} -n gastown-system

CLI Commands

| Command | Description | |---------|-------------| | kubectl gt rig list | List rigs | | kubectl gt rig create <name> | Create rig | | kubectl gt polecat list | List polecats | | kubectl gt polecat logs <rig>/<name> | Stream logs | | kubectl gt sling <bead> <rig> | Dispatch work | | kubectl gt convoy list | List convoys | | kubectl gt auth sync | Sync Claude creds |

All commands support -o json and -o yaml output.


Templates (YAML Alternative)

If you need declarative YAML (GitOps), templates are in templates/:

| Template | Use | |----------|-----| | polecat-minimal.yaml | Minimal K8s polecat (5 vars) | | polecat-kubernetes.yaml | Full K8s polecat (all options) | | convoy.yaml | Batch tracking | | secret-*.yaml | Credentials |

Validate: ./scripts/validate-template.sh <file>


Quick Checks

kubectl gt rig list -n gastown-system          # List rigs
kubectl gt polecat list -n gastown-system      # List polecats
kubectl gt auth status -n gastown-system       # Check creds
kubectl get secrets -n gastown-system          # Check secrets

Common Errors

| Error | Fix | |-------|-----| | rig not found | Create rig first: kubectl gt rig create <name> --git-url ... | | secret not found | Create secrets: kubectl create secret generic git-creds ... | | missing gitRepository | Fixed in v0.4.1 - sling now fetches from Rig | | Stuck in Working | Check logs: kubectl gt polecat logs <rig>/<name> |


JIT Load References

Load these when you need deeper context:

| Topic | Reference | |-------|-----------| | Full CRD specs | .claude/references/CRD_REFERENCE.md | | Kubernetes mode | .claude/references/KUBERNETES_MODE.md | | Troubleshooting | .claude/references/TROUBLESHOOTING.md | | Anti-patterns | FRICTION_POINTS.md | | Full templates | templates/*.yaml |

Du fichier au premier essai

Le téléchargement contient exactement le contenu affiché sur cette fiche. Cette copie peut différer de la dernière version du dépôt source.

Consulter la source et ses fichiers annexes

Ce téléchargement contient uniquement SKILL.md. Les scripts, références, modèles et dépendances éventuels ne sont pas inclus. Récupérez les fichiers nécessaires depuis la source en conservant leur arborescence avant de poursuivre.

1. Télécharger le fichier

Télécharger SKILL.md

Depuis la racine d’un projet de test, enregistrez le fichier sous .skill-downloads/gastown-operator-mrwakdcl/SKILL.md, ou utilisez la commande suivante. Ce dossier sert à examiner la skill avant son installation.

Commande pour macOS/Linux ou WSL : un shell POSIX et curl sont nécessaires. Sous Windows sans WSL, utilisez le bouton de téléchargement et créez le dossier manuellement.

mkdir -p '.skill-downloads/gastown-operator-mrwakdcl' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/gastown-operator-mrwakdcl/download' --output '.skill-downloads/gastown-operator-mrwakdcl/SKILL.md.part' && mv '.skill-downloads/gastown-operator-mrwakdcl/SKILL.md.part' '.skill-downloads/gastown-operator-mrwakdcl/SKILL.md'

2. Vérifier les prérequis

Lisez SKILL.md avant de l’utiliser. Si le fichier cite des scripts ou services externes, examinez-les et préparez les accès nécessaires dans votre environnement de test.

Aucune section de prérequis reconnue dans ce fichier. Cela ne signifie pas qu’il est autonome : les bibliothèques, outils et accès peuvent être cités ailleurs dans le contenu ou dans le dépôt source.

Les plateformes de la fiche sont des indications du catalogue. Les chemins ci-dessous suivent la documentation des outils ; ils ne prouvent pas que cette skill y a été exécutée. Aucune version minimale de ces outils n’est attestée pour cette fiche.

3. Charger la skill

Après vérification, copiez le dossier complet dans le projet avec l’une des commandes ci-dessous, puis ouvrez une nouvelle session de l’outil. La commande s’arrête si un dossier du même nom existe déjà : comparez les fichiers avant de le remplacer.

Claude Code
test -f '.skill-downloads/gastown-operator-mrwakdcl/SKILL.md' && test -s '.skill-downloads/gastown-operator-mrwakdcl/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/gastown-operator' && cp -R '.skill-downloads/gastown-operator-mrwakdcl' '.claude/skills/gastown-operator'

OpenSkills

OpenSkills doit déjà être installé. La procédure locale install/read est contrôlée avec OpenSkills 1.5.0, qui exige Node.js ≥ 20.6.0. Aucun slug du catalogue n’est résolu automatiquement.

Installation officielle d’OpenSkills
openskills install './.skill-downloads/gastown-operator-mrwakdcl'

openskills read 'gastown-operator-mrwakdcl'

La lecture doit afficher le contenu du fichier installé et son dossier de base. Elle ne lance ni la skill ni ses dépendances.

Pour un agent qui lit AGENTS.md, synchronisez ensuite l’index. Cette commande modifie AGENTS.md : relisez le diff avant de l’utiliser.

openskills sync

Mode manuel ou autre outil : joignez SKILL.md à une conversation, ou ouvrez-le dans un agent capable de lire les fichiers. Ajoutez les ressources annexes nécessaires. Il n’existe pas de dossier universel reconnu par tous les outils.

4. Faire un premier essai

Utilisez une entrée courte et fictive : un endpoint d’API, un petit document ou un brief d’interface. Dans une nouvelle conversation, joignez le fichier ou donnez son chemin à l’agent, puis adaptez cette demande :

Lis .skill-downloads/gastown-operator-mrwakdcl/SKILL.md et applique ses instructions à cet exemple : [décrire une entrée de test]. Indique les fichiers, dépendances ou accès qui manquent. Produis le résultat demandé par la skill sans inventer de données ni exécuter de script non examiné.

Résultat attendu : une sortie correspondant aux instructions de la skill, ou une liste précise des prérequis manquants. Une simple confirmation de lecture ne valide pas le premier usage. Si une ressource externe est indisponible, ce parcours reste à tester.

Skills similaires