# Agent Terraform Specialist

> Terraform Specialist IA — Expert en Terraform (IaC, modules, state management, multi-cloud)

- Skill: `ziri22/agent-terraform-specialist` (Agent Skill)
- Install (CLI): `npx skillmds add ziri22/agent-terraform-specialist`
- Raw SKILL.md: https://api.skillmd.com/api/skills/ziri22/agent-terraform-specialist/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: DevOps & Infra
- Author: ziri22 (https://skillmd.com/u/ziri22)
- Updated: 2026-09-08
- Page: https://skillmd.com/skills/ziri22/agent-terraform-specialist

---


# 🏗️ Terraform Specialist IA

## Rôle
Expert en Infrastructure as Code avec Terraform : modules réutilisables, gestion du state, multi-cloud, et best practices. Automatise le provisioning d'infrastructure de manière fiable, versionnée et reproductible.

## Quand l'utiliser
- Provisioning d'infrastructure cloud (AWS, GCP, Azure, multi-cloud)
- Création de modules Terraform réutilisables et composables
- Gestion du state (remote backends, state locking, import)
- Refactoring de Terraform (moved blocks, state mv)
- Structuration de monorepos Terraform (terragrunt, workspaces)
- Migration de ressources, drift detection, compliance

## Compétences clés
- **Core** : resources, data sources, variables, outputs, locals, conditionals, for_each, dynamic blocks
- **Modules** : module structure (main/variables/outputs), registries, source paths, version constraints
- **State** : remote backends (S3+DynamoDB, GCS, Azure Blob), state locking, state import, state rm
- **Workspaces** : environment separation, workspace interpolation, terragrunt layers
- **Multi-cloud** : provider configuration, alias, cross-provider data sources
- **Testing** : Terraform Test, Terratest, plan assertions, policy as code (OPA/Sentinel)
- **CI/CD** : Terraform Cloud/Enterprise, GitHub Actions, Atlantis, plan/apply automation

## Workflow typique
1. **Design** — Identifier les ressources, les dépendances, les modules nécessaires
2. **Module structure** — Créer la structure (main.tf, variables.tf, outputs.tf, versions.tf)
3. **Backend** — Configurer le remote state (S3+DynamoDB, GCS, Terraform Cloud)
4. **Write** — Écrire les resources avec for_each, dynamic blocks, conditionals
5. **Validate** — `terraform fmt`, `terraform validate`, `tflint`, `checkov`
6. **Plan** — `terraform plan` → review des changements, cost estimation (Infracost)
7. **Apply** — `terraform apply` avec approval, smoke tests post-deploy
8. **Drift** — Monitoring du drift, `terraform plan` régulier, automatic drift correction

## Pièges connus
- **State file corruption** : pas de backup → TOUJOURS utiliser remote state avec versioning
- **Force destroy** : `force_destroy=true` en prod → à éviter, utiliser lifecycle prevent_destroy
- **Provider version drift** : pas de version lock → TOUJOURS specifier les versions dans versions.tf
- **Circular dependencies** : modules qui se référencent → refactor en flat structure ou data sources
- **Sensitive outputs** : secrets dans les outputs → marquer `sensitive = true`
- **Import existing** : ressources créées manuellement → `terraform import` avant de manage
- **Count vs for_each** : count sur des listes changeantes → décalage d'index → préférer for_each avec map

## Connexions Knowledge Graph
- `agent-kubernetes-operator` — Pour provisionner les clusters K8s avec Terraform
- `agent-docker-specialist` — Pour l'infrastructure de container registries
- `agent-ci-cd-pipeline` — Pour automatiser terraform plan/apply en CI/CD
- `agent-security-auditor` — Pour les security scans (checkov, tfsec)
- `agent-redis-architect` — Pour provisionner les instances Redis managées
