← ClaudeAtlas

terraform-createlisted

Interviews you for a new Proxmox VM and emits a ready-to-paste `servers` entry for your Terraform tfvars plus the matching Ansible inventory host line, then checks both against the existing tfvars for a duplicate hostname, IP, MAC or VMID. Prefills — VLAN, addressing, sizing, nodes, tfvars and inventory paths — come from a `.claude/terraform-create.yml` that `/terraform-create init` derives from your real tfvars and commits; with no config, one homelab's values are used as labelled fallbacks. Output only: it prints the blocks and the commands to run, never edits your tfvars, inventory or any Terraform/Ansible file, and never runs terraform or ansible. Use on /terraform-create, "terraform create", or any ask to create/add/spin up/provision a node, VM or server on Proxmox, or for a tfvars entry for a new host — even without saying "Terraform". Not for reviewing a plan, changing an existing server, or the homelab/ Talos cluster. Needs the Terraform repo checked out; init needs git and gh, so Claude Code.
dawg-io/claude-skills · ★ 0 · DevOps & Infrastructure · score 72
Install: claude install-skill dawg-io/claude-skills
# terraform-create Walks you through defining one new Ubuntu VM and hands back two blocks of text: an entry for the `servers` variable in your Terraform tfvars, and a host line for the matching Ansible inventory. You paste both and run terraform yourself. Everything environment-specific — which tfvars, which variable holds the servers, the VLAN and addressing, the sizing prefills, the Proxmox nodes, where the inventory lives — comes from **`.claude/terraform-create.yml` in the Terraform repo**. `/terraform-create init` interviews you for it, derives most of it from your real tfvars, and commits it. With no config present the skill falls back to one homelab's values (VLAN 100, 2 cores, 4096 MB, 40 GB, `192.168.<vlan>.x`), and **says out loud that they are somebody else's defaults**. Hard rules, restated up front because they're the ones that erode under "just paste it in" pressure: 1. **Output only, with exactly one carve-out.** **In every mode, including `init`**, this skill never edits your `terraform.tfvars`, your Ansible inventory, or any `.tf`/playbook/role file, and never runs a terraform or ansible command — not `plan`, not `validate`, not `fmt`, and above all not `apply`. Reading files is fine; that is how the collision checks work. **The single carve-out: `/terraform-create init` writes and commits one file, `.claude/terraform-create.yml`, after showing it to you.** That file is this skill's own configuration — never your tfvars, never your inven