AutoGineer summary
Written by AutoGineer from the skill’s own files, not by the author
Cost Governance provides a systematic approach to managing Azure expenditures. It enables users to monitor budget health, configure new budget thresholds, and review resource guardrails. The skill emphasizes data-driven reporting by comparing current spend against forecasts and budget limits, while ensuring that users understand that Azure budgets serve as notification mechanisms rather than hard spending caps. It includes specific workflows for assessing existing budget states, proposing new configurations based on historical trends, and verifying the successful implementation of cost controls.
What it does
- Monitors current budget status and identifies spending pace relative to elapsed time.
- Generates cost forecasts to identify potential overruns before they occur.
- Configures budget alerts based on actual spend and forecasted projections.
- Reviews resource guardrails using Azure Resource Graph.
- Validates existing budget configurations to prevent duplicate or conflicting entries.
- Reports on top cost drivers and historical alert data.
When to use it
- When you need to check the health and status of existing Azure budgets.
- When setting up new budget tracking for a specific subscription or resource group.
- When you need to identify if current spending is outpacing established budget thresholds.
- When verifying if resources comply with cost-related guardrails like allowed regions or SKUs.
- When you need to report on cost drivers and historical alert performance.
Advantages
- Provides clear, data-backed insights into budget pacing and forecasted variance.
- Prevents accidental budget overwrites by enforcing verification steps.
- Standardizes the process for proposing and creating new budget alerts.
- Ensures accurate reporting by distinguishing between actual spend and projected forecasts.
- Maintains clear separation between different currencies to avoid calculation errors.
Usage examples
- “What is the current health of my Azure budgets?”
- The agent lists active budgets, calculates the percentage used versus the period elapsed, and provides a forecast to identify potential overruns.
- “Create a new budget for my production resource group.”
- The agent assesses existing budgets, builds a baseline from recent costs, proposes a configuration, and creates the budget after explicit user confirmation.
- “Are there any missing CostCenter tags in my environment?”
- The agent queries the environment to identify resources lacking the required tags and reports the findings as part of the guardrail review.
- “Would this VM SKU be denied by current policies?”
- The agent checks the requested SKU against existing policy restrictions and confirms whether it is permitted in the target region.
Install
Download the skill as a ZIP:
https://mp-staging.autogineer.com/agent-skills/microsoft/cost-governance/downloadUnzip it into the cross-client skills folder of your project:
mkdir -p .agents/skills && unzip cost-governance.zip -d .agents/skills
Documentation by Microsoft
Cost Governance
Quick Reference
| Intent | Workflow | Primary tools |
|---|---|---|
| Check budget status | Budget health | list_budgets, forecast_costs, query_costs, list_alerts |
| Configure a budget | Budget setup | Cost tools, create_budget |
| Review guardrails | Guardrails | Resource Graph, list_budgets |
When to Use This Skill
Use for budgets, alerts, tags, and policy.
MCP Tools
Use cost tools for budgets; Resource Graph for guardrails. Writes need confirmed scope, amount, thresholds, and recipients. Fallback: API mappings.
Workflow
Confirm scope and load the matching workflow.
Never transform MCP results in a shell or interpreter; request tool-side filtering or bounded follow-up queries.
Distinguish access failures from empty results.
Report gaps without implying budgets cap spend.
Error Handling
| Error | Action |
|---|---|
| Access denied | Name missing permission. |
| No budget or forecast | Report unavailable data, not zero. |
| Multiple currencies | Never sum or compare across currencies. |
| Write conflict | Preserve the budget. |
| Server error | Retry once; then stop with the trace ID. |
Files
- ATTRIBUTION.mdAdded by AutoGineer971 B
- LICENSELicence file added by AutoGineer1.1 KiB
- SKILL.md1.8 KiB
- references/budget-health.md1.9 KiB
- references/budget-setup.md2.5 KiB
- references/guardrails.md1.8 KiB
- references/tool-fallback.md1.2 KiB
references/budget-setup.md
Budget Setup
Assess the Existing State
Call
list_budgetsat the requested scope before proposing another budget. Surface an existing budget and ask whether the user wants another one. Flag a budget far below current spend as potentially stale rather than replacing it.Build a baseline with last-month
query_costsand current-monthforecast_costs, keeping currencies separate. Forecast output can contain Actual and Forecast rows for the same date; count the Actual row when present, otherwise count the Forecast row. Summarize the trend as growing, stable, or declining.
Shape the Proposal
Ask whether this is a firm business limit or a tracking threshold and whether planned deployments, migrations, commitments, or seasonal peaks will change expected spend. Azure budgets only send alerts; they do not stop, throttle, or disable resources.
Ground the amount in the baseline and stated business context. Never add a growth buffer silently. For a firm limit, use that limit and consider earlier thresholds. For planned changes, show the expected delta separately before adding it. If the user wants a growth buffer, show it separately.
Prefer subscription scope for environment-level control or resource-group scope for a workload in a shared subscription.
create_budgetsupports those scopes. For management-group or billing scopes, explain that this tool cannot create the budget and direct the user to a supported management experience.Recommend no more than five notifications. A useful starting model is 80% and 100% Actual plus 80% and 100% Forecasted, adjusted for the user's desired response time.
Confirm and Create
Present the complete proposal and obtain explicit confirmation of scope, budget name, amount and currency, time period, thresholds, recipient emails, and optional action-group resource ID.
Only after that confirmation, call
create_budget. Put recipient emails inside every notification object; top-level contacts do not apply when custom notifications are supplied. Every notification must have a recipient.Never overwrite a budget with the same name. If a conflict exists, preserve it and ask whether to use a different name. Explain that changing the existing budget requires a separate supported update path; do not simulate an update by deleting it. Verify a successful creation with
list_budgetsand report the resulting configuration.
Never infer recipients, fabricate an action group, or claim creation before the verification call succeeds.
Requirements and compatibility
Works with: Claude Code, Claude apps, OpenAI Codex, GitHub Copilot, Cursor, Gemini CLI, Kiro, OpenCode, Goose, Amp, Roo Code, JetBrains Junie, Factory Droid, Devin (ex-Windsurf), Mistral Vibe, OpenHands, Letta
“Works with” means the tool reads the open Agent Skills format; a skill written for one tool may use features others lack.
Security
No issues found by our static scan· No issues found
A static scan is not a guarantee. Skills are third-party content: review a skill before you let an agent use it.
Attribution and licence
- Created by
- Microsoft
- Publisher
- Microsoft (Official)
- Source
- microsoft/skills · .github/plugins/azure-cost/skills/cost-governance · commit 0696600
- Licence
- MIT License (redistribution allowed)
- LICENSE (added by AutoGineer from .github/plugins/azure-cost/LICENSE)
- ATTRIBUTION.md (written by AutoGineer)
- Synced
AutoGineer is not affiliated with or endorsed by Microsoft.
Download ZIP
The ZIP holds the skill’s files, its licence files and an ATTRIBUTION.md. Download cost-governance.zip