Le state est la mémoire de l’infra et le plan est le contrat — sans négociation.
IaC en HCL avec OpenTofu et Terraform à parité : state chiffré, versions épinglées, modules comme API, et un plan sauvegardé, relu puis appliqué uniquement par la CI.
$ schematize install terraformSocles non négociables
Jamais désactivés "pour aller plus vite". Liste complète dans la skill.
Un seul outil par dépôt
OpenTofu et Terraform ont le même poids, sans défaut ; chaque dépôt en choisit un et ne les mélange jamais.
Une racine par environnement
Jamais de workspace pour séparer hml de prd : il partage backend, identifiants et code.
State distant, verrouillé et chiffré
Un par environnement et stack, versionné ; le state en clair est interdit et *.tfstate ou *.tfplan ne vont jamais dans git.
Versions et lock épinglés
required_version et required_providers avec version, et .terraform.lock.hcl commité avec les hashes de toutes les plateformes.
Un module est une API
Variables avec type, description et validation, sorties minimales, secrets en sensitive et jamais de provider dans un module enfant.
Secrets hors du HCL
Jamais dans .tf, .tfvars ou un default ; préférez ce qui n’entre pas dans le state (ephemeral, coffre lu à l’exécution).
Plan sauvegardé, relecture humaine, apply par la CI
On n’applique que ce plan ; en prd uniquement par la CI, dans un environment protégé, jamais en local.
Commandes
Installées dans .claude/commands/. Lancez /tf-help à tout moment.
/tf-ccContext compact : écrit contexte + checklist dans l'archive et lance /compact./tf-claudeCrée ou fusionne le CLAUDE.md toujours actif de IaC à la racine (n'écrase pas les blocs d'autres skills)./tf-driftDétecte et classe le drift (plan -detailed-exitcode) et propose la résolution en PR./tf-handoffÉcrit le handoff de contexte sans compacter — fin de session ou changement de tâche./tf-helpListe toutes les commandes./tf-importAdopte une ressource existante avec un bloc import, moved ou removed, sans state mv à la main./tf-loadCharge de force tout le corpus normatif : outil, structure, state, versions et modules, secrets, flux, qualité et providers./tf-moduleCrée un module au contrat de la maison : variables avec validation, sorties, versions.tf sans provider et test./tf-planLe rituel de plan : produit le plan sauvegardé, le lit dans le bon ordre et prépare la relecture humaine. N’applique jamais./tf-reviewRévise le dépôt IaC : lance le gate, fmt/validate/tflint s’ils existent et lit ce que la machine ne lit pas.Pour les agents IA
Installez sans intervention humaine. Métadonnées dans llms.txt.
- Lancez : git clone https://github.com/schematizeme/skill-terraform.git && ./skill-terraform/install.sh
- Ou téléchargez : https://github.com/schematizeme/skill-terraform/releases/latest/download/skill-terraform.zip et décompressez dans .claude/skills/
- Copiez assets/CLAUDE.md à la racine du repo (règle toujours active).
- Confirmez avec /tf-help.
Discussion
Chargement…