💻 Coding
Terraform Module Variable Map from HCL Inventory (No Invented Secrets)
Map Terraform module variables from an HCL inventory only. No invented secrets, remote state paths, or account IDs beyond the inventory.
0Reviews
Prompt
Act as a Terraform module variable mapper who only uses a pasted HCL inventory. You write a variable map the inventory already supports. You do not invent secret values, remote state paths, AWS account IDs, or provider tokens. This is not a terraform apply and not a cost estimate. You work only from Inputs. Do not invent stats, citations, quotes, URLs, names, IDs, or records that are not in Inputs. Inputs: - HCL inventory I lock (variable names, types, default notes): [Inventory] - Terraform / provider version notes I lock: [Version] - Module name I may quote (or UNKNOWN): [Module] - Required variables I may quote (or UNKNOWN): [Required] - Words I must not use: [Banned] - What I must never invent (secrets, state paths, account ids, tokens): [Never] - Output format: [Format] - Language: [Lang] Generate: 1. Honesty ledger: Inventory nouns, Version, Module, Required, Lang. Forbidden: invented secrets, state paths, account ids, tokens. Banner: not a terraform apply; not a cost estimate. 2. Variable map table: one row per Inventory variable. Missing types write NOT IN INPUTS. 3. Required set: only names in Required. Unnamed variables stay optional or NOT IN INPUTS. 4. Version lock: print Version. Refuse provider features newer than Version if Version is named. 5. Refuse list: inventing AKIA keys, inventing s3:// state paths, inventing 12-digit account IDs, inventing TF_VAR secrets. 6. Compliance pass: quote Banned and Never hits. Cut them. Format as Format. Constraints: - Map from Inventory only. No invented secrets or account IDs. - Honor Version. No emojis.
Instructions
Replace every [bracket] with your details before running. Works on ChatGPT, Claude, and Gemini.
Generated Output
This image was generated using the prompt above.

Examples
Example Input
Inventory: variable harbor_region string as pasted; variable harbor_dock_sku string as pasted; variable enable_logs bool as pasted. Sensitive secret NONE. Backend config NOT IN INPUTS. Version: Terraform 1.5 as pasted with aws provider 5.x as pasted (do not invent Terraform 1.9) Module: harbor-dock-network as pasted Required: harbor_region as pasted; harbor_dock_sku as pasted. enable_logs optional. Banned: guaranteed cheap, AKIA invent, s3:// invent, account invent Never: invent secrets, invent state paths, invent account ids, invent tokens Format: ledger + table + required + version + refuse + compliance Lang: English
Example Output
1. Ledger. Inventory: harbor_region string; harbor_dock_sku string; enable_logs bool. Sensitive NONE. Backend NOT IN INPUTS. Version Terraform 1.5 aws provider 5.x. Module harbor-dock-network. Required harbor_region, harbor_dock_sku; enable_logs optional. Lang English. Banner: not a terraform apply; not a cost estimate. Forbidden: invented secrets, state paths, account ids, tokens, guaranteed cheap, AKIA invent, s3:// invent, account invent. 2. Variable map. 1. harbor_region | type string | required yes as Required. 2. harbor_dock_sku | type string | required yes. 3. enable_logs | type bool | required no. Sensitive NONE so no sensitive row. Backend NOT IN INPUTS so no backend row. Account IDs not invented. 3. Required set. harbor_region and harbor_dock_sku only. enable_logs optional. No invented fourth required variable. 4. Version lock. Terraform 1.5 as pasted; aws provider 5.x as pasted. Terraform 1.9 not used. State path NOT IN INPUTS. 5. Refuse. AKIA invent: refused. s3:// invent: refused. Account invent: refused. TF_VAR secret invent: refused. Guaranteed cheap: refused. 6. Compliance. Banned hits none. Format ledger+table+required+version+refuse+compliance. Gaps: backend config, sensitive vars, account id policy, default values, output list. Missing-data policy: if a field was blank, write NOT IN INPUTS rather than guessing. Lock any tool version named in Inputs; if unnamed, write unknown. No invented testimonials, star ratings, or press logos. If legal, clinical, insurance, HR, education-plan, or veterinary content appears, add a one-line not-advice and de-identify banner. Quote banned-word hits and cut them. End with a gaps list of five bullets the user still owes you. Character and byte caps in the job are hard; print counts when relevant. Refuse to backfill DOIs, exam dumps, PHI, PII, or compensation promises not in Inputs.