acquire-codebase-knowl…
Use this skill when the user explicitly asks to map, document, or onboard into an existing codebase. Trigger for prompts like…
Performs comprehensive preflight validation of Bicep deployments to Azure, including template syntax validation, what-if analysis, and permission checks. Use this skill before any deployment to Azure to preview changes, identify potential issues, and ensure the deployment will
Claude Code
$ npx -y skills add github/awesome-copilot --skill azure-deployment-preflight --agent claude-code
Codex
$ npx skills add github/awesome-copilot --skill azure-deployment-preflight -a codex -y
Cursor
$ npx skills add github/awesome-copilot --skill azure-deployment-preflight -a cursor -y
Gemini CLI
$ npx skills add github/awesome-copilot --skill azure-deployment-preflight -a gemini-cli -y
GitHub Copilot
$ npx skills add github/awesome-copilot --skill azure-deployment-preflight -a github-copilot -y
OpenCode
$ npx skills add github/awesome-copilot --skill azure-deployment-preflight -a opencode -y
Windsurf
$ npx skills add github/awesome-copilot --skill azure-deployment-preflight -a windsurf -y
name: azure-deployment-preflight description: 'Performs comprehensive preflight validation of Bicep deployments to Azure, including template syntax validation, what-if analysis, and permission checks. Use this skill before any deployment to Azure to preview changes, identify potential issues, and ensure the deployment will succeed. Activate when users mention deploying to Azure, validating Bicep files, checking deployment permissions, previewing infrastructure changes, running what-if, or preparing for azd provision.'
This skill validates Bicep deployments before execution, supporting both Azure CLI (`az`) and Azure Developer CLI (`azd`) workflows.
Follow these steps in order. Continue to the next step even if a previous step fails—capture all issues in the final report.
Determine the deployment workflow by checking for project indicators:
1. **Check for azd project**: Look for `azure.yaml` in the project root
2. **Locate Bicep files**: Find all `.bicep` files to validate
3. **Auto-detect parameter files**: For each Bicep file, look for matching parameter files:
Run Bicep CLI to check template syntax before attempting deployment validation:
bicep build <bicep-file> --stdout
**What to capture:**
**If Bicep CLI is not installed:**
Choose the appropriate validation based on project type detected in Step 1.
Use `azd provision --preview` to validate the deployment:
azd provision --preview
If an environment is specified or multiple environments exist:
azd provision --preview --environment <env-name>
Determine the deployment scope from the Bicep file's `targetScope` declaration:
| Target Scope | Command | |--------------|---------| | `resourceGroup` (default) | `az deployment group what-if` | | `subscription` | `az deployment sub what-if` | | `managementGroup` | `az deployment mg what-if` | | `tenant` | `az deployment tenant what-if` |
**Run with Provider validation level first:**
# Resource Group scope (most common) az deployment group what-if \ --resource-group <rg-name> \ --template-file <bicep-file> \ --parameters <param-file> \ --validation-level Provider # Subscription scope az deployment sub what-if \ --location <location> \ --template-file <bicep-file> \ --parameters <param-file> \ --validation-level Provider # Management Group scope az deployment mg what-if \ --location <location> \ --management-group-id <mg-id> \ --template-file <bicep-file> \ --parameters <param-file> \ --validation-level Provider # Tenant scope az deployment tenant what-if \ --location <location> \ --template-file <bicep-file> \ --parameters <param-file> \ --validation-level Provider
**Fallback Strategy:**
If `--validation-level Provider` fails with permission errors (RBAC), retry with `ProviderNoRbac`:
az deployment group what-if \ --resource-group <rg-name> \ --template-file <bicep-file> \ --validation-level ProviderNoRbac
Note the fallback in the report—the user may lack full deployment permissions.
Parse the what-if output to categorize resource changes:
| Change Type | Symbol | Meaning | |-------------|--------|---------| | Create | `+` | New resource will be created | | Delete | `-` | Resource will be deleted | | Modify | `~` | Resource properties will change | | NoChange | `=` | Resource unchanged | | Ignore | `*` | Resource not analyzed (limits reached) | | Deploy | `!` | Resource will be deployed (changes unknown) |
For modified resources, capture the specific property changes.
Create a Markdown report file in the **project root** named:
Use the template structure from [references/REPORT-TEMPLATE.md](references/REPORT-TEMPLATE.md).
**Report sections:** 1. **Summary** - Overall status, timestamp, files validated, target scope 2. **Tools Executed** - Commands run, versions, validation levels used 3. **Issues** - All errors and warnings with severity and remediation 4. **What-If Results** - Resources to create/modify/delete/unchanged 5. **Recommendations** - Actionable next steps
Before running validation, gather:
| Information | Required For | How to Obtain | |-------------|--------------|---------------| | Resource Group | `az deployment group` | Ask user or check existing `.azure/` config | | Subscription | All deployments | `az account show` or ask user | | Location | Sub/MG/Tenant scope | Ask user or use default from config | | Environment | azd projects | `azd env list` or ask user |
If required information is missing, prompt the user before proceeding.
See [references/ERROR-HANDLING.md](references/ERROR-HANDLING.md) for detailed error handling guidance.
**Key principle:
A community-created collection of custom agents, instructions, skills, hooks, workflows, and plugins to supercharge your GitHub Copilot experience.
Use this skill when the user explicitly asks to map, document, or onboard into an existing codebase. Trigger for prompts like…
Run the AgentRC readiness assessment on the current repository and produce a static HTML dashboard at reports/index.html. Wraps…
Generate tailored AI agent instruction files via AgentRC instructions command. Produces .github/copilot-instructions.md (default,…
Help the user pick, write, or apply an AgentRC policy. Policies customise readiness scoring by disabling irrelevant checks,…
Use this skill when the user shares ad campaign performance data and asks what to cut, scale, or test. Trigger for prompts like…
Add educational comments to the file specified, or prompt asking for file to comment if one is not provided.
Behavioral guidelines to reduce common LLM coding mistakes. Use when writing, reviewing, or refactoring code to avoid…
Design and build AI agents for any domain. Use when users: (1) ask to "create an agent", "build an assistant", or "design an AI…