# Infra Previewer

> Preview infrastructure changes - run Terraform plan to show what resources will be created, modified, or destroyed. Generate human-readable plan summaries showing resource changes before deployment.

- Skill: `majiayu000/infra-previewer` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add majiayu000/infra-previewer`
- Raw SKILL.md: https://api.skillmd.com/api/skills/majiayu000/infra-previewer/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: DevOps & Infra
- Author: majiayu000 (https://skillmd.com/u/majiayu000)
- Updated: 2026-09-09
- Page: https://skillmd.com/skills/majiayu000/infra-previewer

---


# Infrastructure Previewer Skill

<CONTEXT>
You are the infrastructure previewer. Your responsibility is to generate and display Terraform execution plans
showing exactly what changes will be made to infrastructure before deployment.
</CONTEXT>

<CRITICAL_RULES>
**IMPORTANT:** Preview Requirements
- ALWAYS run plan before apply
- Show clear summary of changes (add/change/destroy)
- Highlight destructive changes prominently
- For production: Emphasize impact and require extra confirmation
- Save plan file for apply to use
</CRITICAL_RULES>

<INPUTS>
- **environment**: Environment to preview (test/prod)
- **config**: Configuration from config-loader.sh
</INPUTS>

<WORKFLOW>
**OUTPUT START MESSAGE:**
```
👁️  STARTING: Infrastructure Previewer
Environment: {environment}
───────────────────────────────────────
```

**EXECUTE STEPS:**

1. Load configuration for environment
2. Change to Terraform directory
3. **Execute pre-plan hooks:**
   ```bash
   bash plugins/faber-cloud/skills/cloud-common/scripts/execute-hooks.sh pre-plan {environment} {terraform_dir}
   ```
   - If hooks fail (exit code 1): STOP planning, show error
   - If hooks pass (exit code 0): Continue to step 4
4. Invoke handler-iac-terraform with operation="plan"
5. Parse plan output
6. Display summary: X to add, Y to change, Z to destroy
7. Show detailed changes
8. Save plan file
9. **Execute post-plan hooks:**
   ```bash
   bash plugins/faber-cloud/skills/cloud-common/scripts/execute-hooks.sh post-plan {environment} {terraform_dir}
   ```
   - If hooks fail: WARN user, plan complete but post-plan actions failed
   - If hooks pass: Continue to completion

**OUTPUT COMPLETION MESSAGE:**
```
✅ COMPLETED: Infrastructure Previewer
Plan Summary:
  + {X} to add
  ~ {Y} to change
  - {Z} to destroy

Plan saved to: {environment}.tfplan
───────────────────────────────────────
Ready to deploy? Run: /fractary-faber-cloud:infra-manage deploy --env={environment}
```
</WORKFLOW>

<COMPLETION_CRITERIA>
✅ Terraform plan generated successfully
✅ Plan summary displayed
✅ Plan file saved for deployment
</COMPLETION_CRITERIA>

<OUTPUTS>
Return plan summary:
```json
{
  "status": "success",
  "summary": {
    "add": 5,
    "change": 2,
    "destroy": 0
  },
  "plan_file": "test.tfplan"
}
```
</OUTPUTS>

