Terraform skill generate
Skill cedws/skills/terraform/skills/terraform-skill-generate
Generate missing version-specific Terraform skills from official HashiCorp release artefacts and changelogs, then register them with the Terraform dispatcher. Use when a stable Terraform minor release needs a new terraform-1-N skill or when refreshing this repository after a Terraform release.From its SKILL.md
npx -y skills add cedws/skills --skill terraform-skill-generateAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
3 things to look at
- 25 days oldThe repository was created 25 days ago. New is not bad, but a brand new repository carrying a familiar-sounding name is the shape a typosquat arrives in, and there has been no time for anyone else to find a problem with it.
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
5.3 KB, ~1.0k tokens by cl100k_base, as published. Nobody here has run it
Generate Terraform release skills
Discover releases
- Locate the sibling
terraformskill and read its release table. - Fetch
https://releases.hashicorp.com/terraform/index.jsonas JSON. - Consider only stable initial minor releases at Terraform 1.15 or later whose version matches
1.N.0. Exclude alphas, betas, release candidates, development builds, and patch releases. - Normalise the version to
1.Nand sort candidates by numeric minor version. - Check for
../terraform-1-N/SKILL.mdbefore retrieving or generating anything. Skip every version whose skill already exists. Never replace, merge, or regenerate an existing version skill.
Treat the HashiCorp release index as the authority that an artefact is stable. Do not infer stability from a roadmap, alpha build, release candidate, branch, draft changelog, tag timestamp, or current date.
Retrieve official release notes
For each missing stable version, fetch the official Markdown changelog from:
https://raw.githubusercontent.com/hashicorp/terraform/v1.N/CHANGELOG.md
Find the exact ## 1.N.0 (Month D, YYYY) section and stop before the next release or previous-releases section. Convert that heading's date to ISO YYYY-MM-DD. Require the changelog version and HashiCorp release index version to agree.
If the branch changelog is unavailable, use the matching stable GitHub release at https://github.com/hashicorp/terraform/releases/tag/v1.N.0. Do not use search snippets, third-party summaries, issue commentary, prerelease notes, or model memory as substitutes for complete official notes.
Select useful changes
Extract changes that affect how practitioners should write, modernise, validate, test, plan, import, or operate Terraform:
- configuration-language features, functions, blocks, and expression behaviour;
- CLI commands, flags, output formats, automation interfaces, and validation behaviour;
- state, planning, import, refactoring, backend, provider-installation, and lock-file semantics;
- Terraform test features and machine-readable test output;
- deprecations, removals, upgrade requirements, and clear replacements;
- platform or runtime changes that affect compatibility or deployment;
- experimental features, clearly labelled with their opt-in mechanism and stability limits.
Leave out patch-release material, ordinary bug fixes, internal implementation changes with no practitioner action, exhaustive backend details, performance claims that do not change a decision, and long lists of minor diagnostics.
Write the skill
Create the new skill with the skill-creator initialisation script so it includes SKILL.md and agents/openai.yaml. Create no other resource directories unless the release requires reusable assets or scripts.
Normalise every generated description to this exact template, replacing 1.N and YYYY-MM-DD with the discovered version and release date:
description: Apply Terraform 1.N language, CLI, state, testing, migration, and behaviour changes. Load for Terraform work targeting 1.N or later when the model's knowledge may predate the YYYY-MM-DD release.
Keep the description on one physical line. Do not add feature names, URLs, Markdown, or extra frontmatter fields.
Write a concise factual body:
- State that the overview applies to target Terraform versions of at least 1.N.
- Explain each important feature and the situations it supports without directing the agent to adopt it universally.
- Pair deprecated or removed patterns with their supported replacement and explain the operational difference.
- Cover configuration, CLI, state, testing, backends, compatibility, and experiments only when the notes contain relevant material.
- Include compact HCL examples only when they clarify correct syntax.
- Do not invent recommendations, guarantees, provider support, or migration rules absent from the official notes.
- Keep earlier-version guidance out unless it is necessary to explain what this release replaces.
- Keep the skill concise enough to load alongside other release skills.
Use descriptive, non-imperative wording in generated release bodies. Avoid directive openings such as “Use”, “Do”, “Prefer”, “Replace”, “Run”, “Enable”, or “Require”.
Set agents/openai.yaml to a display name of Terraform 1.N, a short description of Apply Terraform 1.N release guidance, and a one-sentence default prompt that explicitly mentions $terraform-1-N.
Register and validate
After writing a new skill:
- Validate that the directory name and frontmatter name are both
terraform-1-N. - Run the skill-creator
quick_validate.pyscript on the generated directory. - Add one row to the sibling
terraformskill's release table with version, ISO release date, and skill name. - Keep the table sorted in ascending numeric version order.
- Report skipped existing skills separately from newly generated skills.
If generation or validation fails for one version, do not register that version and continue with later independent candidates.
What ships with it: 1 file
219 B alongside SKILL.md
agents/
- openai.yaml219 B