Cloud Cost Optimization
wshobson/agents
Cuts cloud spend across AWS, Azure, GCP and OCI with cost tagging, rightsizing, commitment and spot pricing models, and architecture changes.
Research Azure naming constraints and CAF abbreviations for a given resource type.
$ npx skills add aztfmod/terraform-provider-azurecaf --skill azure-naming-research -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install aztfmod/terraform-provider-azurecaf azure-naming-research --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/aztfmod/terraform-provider-azurecaf.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.github/skills/azure-naming-research .claude/skills/azure-naming-research && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "azure-naming-research" agent skill from https://github.com/aztfmod/terraform-provider-azurecaf/tree/main/.github/skills/azure-naming-research into .claude/skills/azure-naming-research/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "azure-naming-research", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/aztfmod/terraform-provider-azurecaf/tree/main/.github/skills/azure-naming-researchType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add aztfmod/terraform-provider-azurecaf --skill azure-naming-research -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install aztfmod/terraform-provider-azurecaf azure-naming-research --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/aztfmod/terraform-provider-azurecaf.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.github/skills/azure-naming-research .agents/skills/azure-naming-research && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "azure-naming-research" agent skill from https://github.com/aztfmod/terraform-provider-azurecaf/tree/main/.github/skills/azure-naming-research into .agents/skills/azure-naming-research/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "azure-naming-research", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add aztfmod/terraform-provider-azurecaf --skill azure-naming-research -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install aztfmod/terraform-provider-azurecaf azure-naming-research --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/aztfmod/terraform-provider-azurecaf.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.github/skills/azure-naming-research .cursor/skills/azure-naming-research && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "azure-naming-research" agent skill from https://github.com/aztfmod/terraform-provider-azurecaf/tree/main/.github/skills/azure-naming-research into .cursor/skills/azure-naming-research/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "azure-naming-research", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/aztfmod/terraform-provider-azurecaf.git --path .github/skills/azure-naming-research--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add aztfmod/terraform-provider-azurecaf --skill azure-naming-research -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install aztfmod/terraform-provider-azurecaf azure-naming-research --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/aztfmod/terraform-provider-azurecaf.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.github/skills/azure-naming-research .gemini/skills/azure-naming-research && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "azure-naming-research" agent skill from https://github.com/aztfmod/terraform-provider-azurecaf/tree/main/.github/skills/azure-naming-research into .gemini/skills/azure-naming-research/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "azure-naming-research", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install aztfmod/terraform-provider-azurecaf azure-naming-researchInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add aztfmod/terraform-provider-azurecaf --skill azure-naming-research -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/aztfmod/terraform-provider-azurecaf.git skills-src && mkdir -p .github/skills && cp -r skills-src/.github/skills/azure-naming-research .github/skills/azure-naming-research && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "azure-naming-research" agent skill from https://github.com/aztfmod/terraform-provider-azurecaf/tree/main/.github/skills/azure-naming-research into .github/skills/azure-naming-research/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "azure-naming-research", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add aztfmod/terraform-provider-azurecaf --skill azure-naming-research -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install aztfmod/terraform-provider-azurecaf azure-naming-research --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/aztfmod/terraform-provider-azurecaf.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.github/skills/azure-naming-research .opencode/skills/azure-naming-research && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "azure-naming-research" agent skill from https://github.com/aztfmod/terraform-provider-azurecaf/tree/main/.github/skills/azure-naming-research into .opencode/skills/azure-naming-research/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "azure-naming-research", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
azure-naming-researchResearch Azure naming constraints and CAF abbreviations for a given resource type.
Azure Naming Research is an agent skill from aztfmod/terraform-provider-azurecaf. Research Azure naming constraints and CAF abbreviations for a given resource type. Use when you need to look up the official CAF slug, naming rules (length, scope, valid characters), and derive validation/cleaning regex patterns for an Azure resource. Triggers on: CAF abbreviation lookup, Azure naming rules research, resource naming constraints.
Its SKILL.md is about 530 tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including reference files (for example `references/regex-patterns.md`).
It sits in DevOps & Cloud. It works with Microsoft Azure. The repository describes itself as: Terraform provider for the Terraform platform engineering for Azure. The licence is MIT.
3 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit ac74615. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md.
From the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
learn.microsoft.comFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Azure Naming Research loads about 527 tokens when it runs, and up to ~866 if it reads all its reference files. Until then it costs about 92 tokens; SKILL.md has 178 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from aztfmod/terraform-provider-azurecaf at commit ac74615, republished under its MIT licence (© aztfmod). 178 words, ~527 tokens.
.claude/skills/azure-naming-research/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.Query the CAF abbreviations page for the official slug and resource provider namespace:
URL: https://learn.microsoft.com/en-us/azure/cloud-adoption-framework/ready/azure-best-practices/resource-abbreviations
Prefer Microsoft Docs MCP tools (microsoft_docs_search, microsoft_docs_fetch) when available.
Search by:
azurerm_ prefix (e.g., "container app")Extract: CAF abbreviation (slug), resource display name, resource provider namespace.
If not found, the resource is out-of-doc — set "out_of_doc": true in the JSON entry and omit official.slug and official.resource_provider_namespace.
Query the naming rules page for constraints:
URL: https://learn.microsoft.com/en-us/azure/azure-resource-manager/management/resource-name-rules
Find the section matching the resource provider namespace from step 1. Extract: scope, length (min-max), valid characters.
See references/regex-patterns.md for the regex conversion tables.
"global", "resource group"→"resourceGroup", "within parent"→"parent", "subscription"→"subscription"true if hyphens allowedtrue if only lowercase letters allowed"\"pattern\""Never guess at constraints — mark as UNKNOWN if not verifiable.
© aztfmod, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 1 other file (references) in .github/skills/azure-naming-research of aztfmod/terraform-provider-azurecaf.
Open the folder on GitHubat commit ac74615
Azure Naming Research next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Azure Naming Research this skillaztfmod/terraform-provider-azurecaf | 188 | — | ~527 | Automated safety check: Pass | MIT | |
| Cloud Cost Optimizationwshobson/agents | 40k | 14 repos | ~1.7k | Automated safety check: Pass | MIT | |
| Terravision Cloud Diagramspatrickchugh/terravision | 1.6k | — | ~5.6k | Automated safety check: Notes | AGPL-3.0-only | |
| Thesvgglincker/thesvg | 2.8k | — | ~1.5k | Automated safety check: Pass | MIT | |
| Azure PricingAzure/Copilot-Studio-and-Azure | 110 | 2 repos | ~2.4k | Automated safety check: Pass | MIT | |
| Azure Architecture Autopilotgithub/awesome-copilot | 40k | 1 repos | ~1.9k | Automated safety check: Pass | MIT |
wshobson/agents
Cuts cloud spend across AWS, Azure, GCP and OCI with cost tagging, rightsizing, commitment and spot pricing models, and architecture changes.
patrickchugh/terravision
Draw cloud architecture diagrams for AWS, Azure or GCP with the official provider icon sets, using TerraVision.
glincker/thesvg
Fetch brand SVG logos and cloud architecture icons (AWS, Azure, GCP) from theSVG.
Azure/Copilot-Studio-and-Azure
Fetches real-time Azure retail pricing using the Azure Retail Prices API (prices.azure.com) and estimates Copilot Studio agent credit consumption.
github/awesome-copilot
Designs Azure infrastructure from a natural-language description, or diagrams an existing resource group, then refines the design through conversation and deploys it with Bicep.
microsoft/aspire.dev
Orchestrates Aspire distributed applications using the Aspire CLI for running, debugging, and managing distributed apps.
aztfmod/terraform-provider-azurecaf
Fetch the latest CAF abbreviations page from Microsoft Learn and compare against resourceDefinition.json official.slug values.
aztfmod/terraform-provider-azurecaf
Update CHANGELOG.md with a new entry under the correct section.
aztfmod/terraform-provider-azurecaf
Ensure documentation files under docs/resources/ and docs/data-sources/ reflect current resource types with accurate examples.
aztfmod/terraform-provider-azurecaf
Parse a 'new resource request' GitHub issue and extract the resource type, slug, and naming constraints to produce a draft resourceDefinition.json entry.
aztfmod/terraform-provider-azurecaf
Re-fetch Azure naming rules for a set of resources and compare against current regex/length/scope values in resourceDefinition.json.
aztfmod/terraform-provider-azurecaf
Accept a list of Azure resource types, batch-research each via azure-naming-research conventions, generate JSON entries, and insert all into resourceDefinition.json.
Works with
Categories
Research Azure naming constraints and CAF abbreviations for a given resource type. Azure Naming Research is an agent skill from aztfmod/terraform-provider-azurecaf. Research Azure naming constraints and CAF abbreviations for a given resource type.
Azure Naming Research fits situations like: you need to look up the official CAF slug; naming rules (length; valid characters); derive validation/cleaning regex patterns for an Azure resource.
Run `npx skills add aztfmod/terraform-provider-azurecaf --skill azure-naming-research -a claude-code`. Or copy the skill folder (.github/skills/azure-naming-research in aztfmod/terraform-provider-azurecaf) into .claude/skills/azure-naming-research in your project. Claude Code loads it when a task matches its description.
Run `npx skills add aztfmod/terraform-provider-azurecaf --skill azure-naming-research -a codex`. Or copy the skill folder (.github/skills/azure-naming-research in aztfmod/terraform-provider-azurecaf) into .agents/skills/azure-naming-research in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add aztfmod/terraform-provider-azurecaf --skill azure-naming-research -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/azure-naming-research, .gemini/skills/azure-naming-research, .github/skills/azure-naming-research and .opencode/skills/azure-naming-research in your project.
SKILL.md names no scripts, command-line tools or credentials: Azure Naming Research is instructions for the agent only.
SKILL.md names 1 domain. In commands or code: learn.microsoft.com; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Azure Naming Research is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 527 tokens (SKILL.md is roughly 2.1k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 339 tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Azure Naming Research: Cloud Cost Optimization (wshobson/agents, 40k stars), Terravision Cloud Diagrams (patrickchugh/terravision, 1.6k stars), Thesvg (glincker/thesvg, 2.8k stars) and Azure Pricing (Azure/Copilot-Studio-and-Azure, 110 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
aztfmod (a GitHub organization) maintains it in aztfmod/terraform-provider-azurecaf, which has 188 GitHub stars. The repository holds 22 skills in this directory. The repository was last updated on September 21, 2026.
Source: aztfmod/terraform-provider-azurecaf on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.