azure-verified-modules — Claude Code skill: AVM Terraform rules
A skill that carries the Azure Verified Modules requirements, so your agent can write and review Terraform modules that pass AVM certification.
npx skills add hashicorp/agent-skills --skill azure-verified-modules -a claude-codeWhat azure-verified-modules does
The skill puts the AVM rulebook in front of the agent and walks a module toward certification. It covers cross-referencing between modules, provider versions, code style, variables, outputs, locals, testing and documentation. Every rule carries a MUST or SHOULD severity plus an ID such as TFFR1 or TFNFR4.
Provider versions are pinned hard: azapi from 2.0 to 3.0, azurerm from 4.0 to 5.0, declared in required_providers. Other modules may only be referenced through the Terraform registry at a fixed version — git references and non-AVM modules are off the table. Small details trip people up too: ignore_changes without double quotes, for_each only over map() or set() with static keys, and no enabled-style variable that switches the whole module.
Use it when you are building or reviewing an Azure module and want the certification to go through without a round of fixes. The rules do not replace the AVM specifications themselves — some details still live in the official docs the skill points to.
What it helps with
- bring a Terraform module up to AVM certification requirements
- check azapi and azurerm versions in
required_providers - spot git references and non-AVM modules in cross-references
- order arguments and meta-arguments inside resource blocks
- drop
enabled-style variables that control the whole module
Example prompts for the agent
- check my Terraform module against the AVM requirements
- add a
required_providersblock with azurerm and azapi versions per AVM rules - review the variables and outputs of this module against the AVM checklist
How to install azure-verified-modules
1Skills CLI (Vercel)
npx skills add hashicorp/agent-skills --skill azure-verified-modules -a claude-code2Manually: put the files in place
~/.claude/skills/azure-verified-modules/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/azure-verified-modules/
1Skills CLI (Vercel)
npx skills add hashicorp/agent-skills --skill azure-verified-modules -a codex2Manually: put the files in place
.agents/skills/azure-verified-modules/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add hashicorp/agent-skills --skill azure-verified-modules -a cursor2Manually: put the files in place
.cursor/skills/azure-verified-modules/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install hashicorp/agent-skills azure-verified-modules2Manually: put the files in place
.github/skills/azure-verified-modules/SKILL.md1Skills CLI (Vercel)
npx skills add hashicorp/agent-skills --skill azure-verified-modules -a gemini-cli2Platform CLI
gemini skills install https://github.com/hashicorp/agent-skills --path plugins/terraform/skills/azure-verified-modulesManually: put the files in place
.devin/skills/azure-verified-modules/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add hashicorp/agent-skills --skill azure-verified-modules -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about azure-verified-modules
How do I install azure-verified-modules in Claude?
Run npx skills add hashicorp/agent-skills --skill azure-verified-modules -a claude-code. The skill lands at ~/.claude/skills/azure-verified-modules/SKILL.md.
What does azure-verified-modules do?
It bundles the mandatory Azure Verified Modules requirements so the agent can help create and review Terraform modules aimed at AVM certification.
Which provider versions does AVM allow?
azapi from 2.0 to 3.0 and azurerm from 4.0 to 5.0. Pin them in the required_providers block; the skill suggests the ~> operator for that.