CtrlK
BlogDocsLog inGet started
Tessl Logo

pantheon-ai/terragrunt-toolkit

Complete terragrunt toolkit with generation and validation capabilities

93

Quality

93%

Does it follow best practices?

Impact

Pending

No eval scenarios have been run

SecuritybySnyk

Advisory

Suggest reviewing before use

Overview
Quality
Evals
Security
Files

instructions.jsongenerator/evals/

{
  "instructions": [
    {
      "instruction": "Before writing any files, determine the architecture pattern (A, B, or C) and output the completed Architecture Pattern Selection checklist to the user.",
      "relevant_when": "Any Terragrunt configuration generation request.",
      "why_given": "The Generation Workflow Step 2 states 'MANDATORY: Before writing any files, complete and output this checklist to the user' with the specific checklist format shown."
    },
    {
      "instruction": "Read the relevant template file(s) from assets/templates/ before generating any configuration. Use the correct template per type: root → assets/templates/root/terragrunt.hcl, child → assets/templates/child/terragrunt.hcl, stack → assets/templates/stack/terragrunt.stack.hcl.",
      "relevant_when": "Generating any Terragrunt configuration file.",
      "why_given": "Step 3 of the Generation Workflow lists specific templates to read per configuration type. Step 4 also contains per-type checklists that reference the templates."
    },
    {
      "instruction": "Feature flag default values MUST be static literals (boolean, string, or number). They CANNOT reference local.* values.",
      "relevant_when": "Generating configurations that include feature blocks.",
      "why_given": "The Generate Feature Flags section has a CRITICAL callout: 'Feature flag default values MUST be static — they CANNOT reference local.* values' with an explicit FAILS example."
    },
    {
      "instruction": "After generating all files, run validation: terragrunt hcl fmt --check for format validation and terragrunt dag graph for dependency graph validation.",
      "relevant_when": "After generating a complete multi-file Terragrunt configuration.",
      "why_given": "Step 4 of the Generation Workflow specifies 'Run batch validation after ALL files are generated' with exactly these two commands."
    },
    {
      "instruction": "Root.hcl must be environment-agnostic when using Pattern A: do not call read_terragrunt_config(find_in_parent_folders(\"env.hcl\")) in root.hcl. Child modules read env.hcl directly.",
      "relevant_when": "Generating Pattern A multi-environment infrastructure.",
      "why_given": "Pattern A description states 'Key principle: root.hcl does NOT read env.hcl. Child modules read env.hcl directly.' Step 4 checklist item 1 explicitly checks for this."
    },
    {
      "instruction": "Use include 'root' { path = find_in_parent_folders(\"root.hcl\") } in every child module (named include, explicit filename). Never use bare include {} blocks.",
      "relevant_when": "Generating child module terragrunt.hcl files.",
      "why_given": "Step 4 checklist item 3 checks 'include block uses find_in_parent_folders(\"root.hcl\")' and both the SKILL.md and best practices require named includes."
    },
    {
      "instruction": "Every dependency block in a generated configuration MUST include mock_outputs and mock_outputs_allowed_terraform_commands = [\"validate\", \"plan\", \"destroy\"].",
      "relevant_when": "Generating child modules that reference other modules via dependency blocks.",
      "why_given": "Step 4 checklist item 4 checks that dependency blocks have mock_outputs and mock_outputs_allowed_terraform_commands. The Anti-Patterns section warns about mock output mismatches."
    },
    {
      "instruction": "Present the final output with all five required sections: directory structure tree, files generated table, usage instructions, environment notes with prerequisites, and optional next steps.",
      "relevant_when": "After successful generation and validation of Terragrunt configurations.",
      "why_given": "The Presentation Requirements section lists exactly these five sections and marks several as required output after successful validation."
    }
  ]
}

generator

evals

instructions.json

summary_infeasible.json

summary.json

SKILL.md

tile.json