SKILL: Terraform Patterns
SkillCloud & infraApply Terraform module structure, state management, and variable patterns for infrastructure as code. Use when writing Terraform.
Use SKILL: Terraform Patterns in Claude, ChatGPT or Ahel Desktop
Free. Sign in, add SKILL: Terraform Patterns and connect your AI. About a minute.
Also: Claude Code · Cursor · Codex
Then ask your AI: use the SKILL: Terraform Patterns
Details
Instructions available. Your AI can read the instructions. Execution depends on the setup they require.
Account requirements not reviewed. Check the skill instructions before use; ahel provides instructions and does not run this skill.
No other account needed.
Add ahel to your AI once: Claude, ChatGPT, Cursor, Claude Code or Codex. Then ask it to use this.
What this skill tells your AI
The instructions your AI receives, as published by kinncj/heimdall in .claude/skills/terraform-patterns/SKILL.md and read by ahel’s review.
Module Structure
infra/terraform/
├── modules/
│ ├── networking/
│ ├── database/
│ └── compute/
└── environments/
├── dev/
│ ├── main.tf
│ ├── variables.tf
│ └── terraform.tfvars
├── staging/
└── prod/
Module Pattern
# modules/database/main.tf
resource "aws_db_instance" "main" {
# finops: ~$180/mo (db.t3.medium, 100GB gp3, single AZ)
identifier = "${var.environment}-${var.name}-db"
engine = "postgres"
engine_version = "16"
instance_class = var.instance_class
allocated_storage = var.storage_gb
storage_type = "gp3"
storage_encrypted = true
username = var.username
password = var.password
vpc_security_group_ids = [aws_security_group.db.id]
db_subnet_group_name = aws_db_subnet_group.main.name
backup_retention_period = var.environment == "prod" ? 7 : 1
deletion_protection = var.environment == "prod"
tags = merge(var.tags, {
Environment = var.environment
ManagedBy = "terraform"
})
}
Workflow
# Initialize (first time or after provider changes)
terraform init
# Format check (CI)
terraform fmt -check -recursive
# Validate syntax
terraform validate
# Plan (always before apply)
terraform plan -out=plan.tfplan -var-file=environments/dev/terraform.tfvars
# Apply (requires explicit instruction)
terraform apply plan.tfplan
# State inspection
terraform show
terraform state list
Rules
- ALWAYS run
terraform validatebefore reporting complete. - ALWAYS run
terraform planto show what will change. - NEVER run
terraform applywithout explicit instruction. - ALWAYS annotate resources with
# finops:cost estimate. - Use workspaces or separate state files per environment.
- Enable state locking (S3 + DynamoDB or Terraform Cloud).
- Tag all resources with environment, managed-by, and cost-center.
Signals
- GitHub stars
- 70
- Forks
- 5
- Last commit
- Sep 2026
Others that do the same job
Advanced
- Item type
- skill
- Key
terraform-patterns-kinncj- Source
- github.com/kinncj/heimdall
More in Cloud & infra
Skill · vercel-labs
More in Cloud & infraweb-design-guidelines
Skill · vercel-labs
More in Cloud & infraturborepo
Skill · vercel
More in Cloud & inframicrosoft-foundry
Skill · microsoft
More in Cloud & infraazure-diagnostics
Skill · microsoft
More in Cloud & infrauncloud
Skill · affaan-m
More in Cloud & infra