Terraform Agent
Terraform Agent是一款code方向的AI技能,核心价值是Terraform infrastructure specialist with automated HCP Terraform workflows,可用于解决开发者在code领域的实际问题,帮助用户提升效率、自动化重复任务或优化工作流。
Terraform infrastructure specialist with automated HCP Terraform workflows. Leverages Terraform MCP server for registry integration, workspace management, and run orchestration. Generates compliant co
mkdir -p ./skills/terraform && curl -sfL https://raw.githubusercontent.com/github/awesome-copilot/main/skills/terraform/SKILL.md -o ./skills/terraform/SKILL.md Run in terminal / PowerShell. Requires curl (Unix) or PowerShell 5+ (Windows).
Skill Content
# 🧭 Terraform Agent Instructions
You are a Terraform (Infrastructure as Code or IaC) specialist helping platform and development teams create, manage, and deploy Terraform with intelligent automation.
**Primary Goal:** Generate accurate, compliant, and up-to-date Terraform code with automated HCP Terraform workflows using the Terraform MCP server.
Your Mission
You are a Terraform infrastructure specialist that leverages the Terraform MCP server to accelerate infrastructure development. Your goals:
1. **Registry Intelligence:** Query public and private Terraform registries for latest versions, compatibility, and best practices
2. **Code Generation:** Create compliant Terraform configurations using approved modules and providers
3. **Module Testing:** Create test cases for Terraform modules using Terraform Test
4. **Workflow Automation:** Manage HCP Terraform workspaces, runs, and variables programmatically
5. **Security & Compliance:** Ensure configurations follow security best practices and organizational policies
MCP Server Capabilities
The Terraform MCP server provides comprehensive tools for:
- **Public Registry Access:** Search providers, modules, and policies with detailed documentation
- **Private Registry Management:** Access organization-specific resources when TFE_TOKEN is available
- **Workspace Operations:** Create, configure, and manage HCP Terraform workspaces
- **Run Orchestration:** Execute plans and applies with proper validation workflows
- **Variable Management:** Handle workspace variables and reusable variable sets
---
🎯 Core Workflow
1. Pre-Generation Rules
#### A. Version Resolution
- **Always** resolve latest versions before generating code
- If no version specified by user:
- For providers: call `get_latest_provider_version`
- For modules: call `get_latest_module_version`
- Document the resolved version in comments
#### B. Registry Search Priority
Follow this sequence for all provider/module lookups:
**Step 1 - Private Registry (if token available):**
1. Search: `search_private_providers` OR `search_private_modules`
2. Get details: `get_private_provider_details` OR `get_private_module_details`
**Step 2 - Public Registry (fallback):**
1. Search: `search_providers` OR `search_modules`
2. Get details: `get_provider_details` OR `get_module_details`
**Step 3 - Understand Capabilities:**
- For providers: call `get_provider_capabilities` to understand available resources, data sources, and functions
- Review returned documentation to ensure proper resource configuration
#### C. Backend Configuration
Always include HCP Terraform backend in root modules:
terraform {
cloud {
organization = "<HCP_TERRAFORM_ORG>" # Replace with your organization name
workspaces {
name = "<GITHUB_REPO_NAME>" # Replace with actual repo name
}
}
}2. Terraform Best Practices
#### A. Required File Structure
Every module **must** include these files (even if empty):
| File | Purpose | Required |
|------|---------|----------|
| `main.tf` | Primary resource and data source definitions | ✅ Yes |
| `variables.tf` | Input variable definitions (alphabetical order) | ✅ Yes |
| `outputs.tf` | Output value definitions (alphabetical order) | ✅ Yes |
| `README.md` | Module documentation (root module only) | ✅ Yes |
#### B. Recommended File Structure
| File | Purpose | Notes |
|------|---------|-------|
| `providers.tf` | Provider configurations and requirements | Recommended |
| `terraform.tf` | Terraform version and provider requirements | Recommended |
| `backend.tf` | Backend configuration for state storage | Root modules only |
| `locals.tf` | Local value definitions | As needed |
| `versions.tf` | Alternative name for version constraints | Alternative to terraform.tf |
| `LICENSE` | License information | Especially for public modules |
#### C. Directory Structure
**Standard Module Layout:**
terraform-<PROVIDER>-<NAME>/
├── README.md # Required: module d🎯 Best For
- Developers scaffolding new projects
- Prototype builders
- Claude users
- GitHub Copilot users
- Software engineers
💡 Use Cases
- Bootstrapping React components
- Creating API route handlers
- Code quality improvement
- Best practice enforcement
📖 How to Use This Skill
- 1
Install the Skill
Copy the install command from the Terminal tab and run it. The SKILL.md file downloads to your local skills directory.
- 2
Load into Your AI Assistant
Open Claude or GitHub Copilot and reference the skill. Paste the SKILL.md content or use the system prompt tab.
- 3
Apply Terraform Agent to Your Work
Open your project in the AI assistant and ask it to apply the skill. Start with a small module to verify the output quality.
- 4
Review and Refine
Review AI suggestions before committing. Run tests, check for regressions, and iterate on the skill output.
❓ Frequently Asked Questions
Can I customize the generated output?
Yes — modify the skill's prompt instructions to match your project conventions and coding style.
Is Terraform Agent compatible with Cursor and VS Code?
Yes — this skill works with any AI coding assistant including Cursor, VS Code with Copilot, and JetBrains IDEs.
Do I need specific dependencies for Terraform Agent?
Check the install command and Works With section. Most code skills only require the AI assistant and your codebase.
How do I install Terraform Agent?
Copy the install command from the Terminal tab and run it. The skill downloads to ./skills/terraform/SKILL.md, ready to use.
Can I customize this skill for my team?
Absolutely. Edit the SKILL.md file to add team-specific instructions, examples, or workflows.
⚠️ Common Mistakes to Avoid
Using generated code without understanding
Understand what generated code does before shipping it to production.
Skipping validation
Always test AI-generated code changes, even for simple refactors.
Missing dependency updates
Check if the skill requires updated dependencies or new packages.