terraform-expert

Automate Terraform infrastructure provisioning and lifecycle management for AWS environments.

6|Updated Dec 7, 2025
One-click install
npx skills add https://github.com/timequity/plugins --skill terraform-expert
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: terraform-expert
Source: https://github.com/timequity/plugins/tree/main/craft-coder/infra/terraform-expert
Command: npx skills add https://github.com/timequity/plugins --skill terraform-expert

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill helps you manage infrastructure with Terraform, covering modules, state management, and best practices to reduce deployment risk and manual toil.

Core Features & Use Cases

  • Modular patterns: Organize infrastructure into reusable modules (e.g., VPC, ECS, RDS).
  • State management: Use remote backends (e.g., S3) with locking (DynamoDB) to prevent conflicting deployments.
  • Best practices: Pin provider versions, auto-format with terraform fmt, and isolate environments (dev, staging, prod).

Quick Start

Bootstrapping with a simple VPC module in modules/vpc, configure a remote backend in backend.tf, and run terraform init, terraform plan, and terraform apply in the dev environment.

Frequently Asked Questions about terraform-expert

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I organize infrastructure code into reusable modules with Terraform?

Terraform modules let you package infrastructure components—VPC, compute, database—into isolated, reusable units. Organize each concern (networking, ECS, RDS) in separate module directories, define inputs and outputs, then instantiate modules across environments. This reduces duplication and improves maintainability across dev, staging, and production.

What's the best way to manage Terraform state across multiple environments?

Use remote backends with S3 and DynamoDB locking to store state centrally and prevent conflicting deployments. Configure separate workspaces or state files per environment (dev, staging, prod), enable state locking to serialize applies, and version your backend configuration. This ensures safe, auditable infrastructure changes.

How do I prevent version conflicts when deploying infrastructure with Terraform?

Pin provider and module versions explicitly in your configuration files. Specify exact versions or constrained ranges to avoid unexpected behavior from automatic upgrades. Use `terraform init` with locked dependency files and test changes with `terraform plan` before applying to catch version-related issues early.

Can I use Terraform to deploy applications across AWS dev, staging, and production environments?

Yes. Terraform supports multi-environment AWS deployments using modular patterns for VPC, ECS, and RDS. Isolate each environment with workspaces or separate state backends, apply environment-specific variable files, and validate changes with plan-before-apply workflows to safely manage infrastructure lifecycle across all tiers.

What are the key practices for reducing deployment risk with infrastructure-as-code?

Infrastructure-as-code reduces risk by version-controlling infrastructure, validating changes with plan previews before applying, enforcing code formatting standards with `terraform fmt`, using modular design to limit blast radius, and implementing state locking to prevent concurrent modifications. These practices ensure predictable, auditable deployments.