Azure Architecture Autopilot
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.
Discovers available Azure OpenAI model capacity across regions and projects.
$ npx skills add microsoft/GitHub-Copilot-for-Azure --skill capacity -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install microsoft/GitHub-Copilot-for-Azure capacity --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/microsoft/GitHub-Copilot-for-Azure.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/azure-skills/skills/microsoft-foundry/models/deploy-model/capacity .claude/skills/capacity && 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 "capacity" agent skill from https://github.com/microsoft/GitHub-Copilot-for-Azure/tree/main/plugins/azure-skills/skills/microsoft-foundry/models/deploy-model/capacity into .claude/skills/capacity/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "capacity", 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/microsoft/GitHub-Copilot-for-Azure/tree/main/plugins/azure-skills/skills/microsoft-foundry/models/deploy-model/capacityType 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 microsoft/GitHub-Copilot-for-Azure --skill capacity -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install microsoft/GitHub-Copilot-for-Azure capacity --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/microsoft/GitHub-Copilot-for-Azure.git skills-src && mkdir -p .agents/skills && cp -r skills-src/plugins/azure-skills/skills/microsoft-foundry/models/deploy-model/capacity .agents/skills/capacity && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "capacity" agent skill from https://github.com/microsoft/GitHub-Copilot-for-Azure/tree/main/plugins/azure-skills/skills/microsoft-foundry/models/deploy-model/capacity into .agents/skills/capacity/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "capacity", 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 microsoft/GitHub-Copilot-for-Azure --skill capacity -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install microsoft/GitHub-Copilot-for-Azure capacity --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/microsoft/GitHub-Copilot-for-Azure.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/plugins/azure-skills/skills/microsoft-foundry/models/deploy-model/capacity .cursor/skills/capacity && 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 "capacity" agent skill from https://github.com/microsoft/GitHub-Copilot-for-Azure/tree/main/plugins/azure-skills/skills/microsoft-foundry/models/deploy-model/capacity into .cursor/skills/capacity/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "capacity", 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/microsoft/GitHub-Copilot-for-Azure.git --path plugins/azure-skills/skills/microsoft-foundry/models/deploy-model/capacity--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 microsoft/GitHub-Copilot-for-Azure --skill capacity -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install microsoft/GitHub-Copilot-for-Azure capacity --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/microsoft/GitHub-Copilot-for-Azure.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/plugins/azure-skills/skills/microsoft-foundry/models/deploy-model/capacity .gemini/skills/capacity && 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 "capacity" agent skill from https://github.com/microsoft/GitHub-Copilot-for-Azure/tree/main/plugins/azure-skills/skills/microsoft-foundry/models/deploy-model/capacity into .gemini/skills/capacity/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "capacity", 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 microsoft/GitHub-Copilot-for-Azure capacityInstalls 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 microsoft/GitHub-Copilot-for-Azure --skill capacity -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/microsoft/GitHub-Copilot-for-Azure.git skills-src && mkdir -p .github/skills && cp -r skills-src/plugins/azure-skills/skills/microsoft-foundry/models/deploy-model/capacity .github/skills/capacity && 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 "capacity" agent skill from https://github.com/microsoft/GitHub-Copilot-for-Azure/tree/main/plugins/azure-skills/skills/microsoft-foundry/models/deploy-model/capacity into .github/skills/capacity/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "capacity", 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 microsoft/GitHub-Copilot-for-Azure --skill capacity -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install microsoft/GitHub-Copilot-for-Azure capacity --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/microsoft/GitHub-Copilot-for-Azure.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/plugins/azure-skills/skills/microsoft-foundry/models/deploy-model/capacity .opencode/skills/capacity && 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 "capacity" agent skill from https://github.com/microsoft/GitHub-Copilot-for-Azure/tree/main/plugins/azure-skills/skills/microsoft-foundry/models/deploy-model/capacity into .opencode/skills/capacity/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "capacity", 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.
capacityDiscovers available Azure OpenAI model capacity across regions and projects.
Capacity is an agent skill from microsoft/GitHub-Copilot-for-Azure, published by the product's own GitHub organization. Discovers available Azure OpenAI model capacity across regions and projects. Analyzes quota limits, compares availability, and recommends optimal deployment locations based on capacity requirements. USE FOR: find capacity, check quota, where can I deploy, capacity discovery, best region for capacity, multi-project capacity search, quota analysis, model availability, region comparison, check TPM availability. DO NOT USE FOR: actual deployment (hand off to preset or customize after discovery), quota increase…
Its SKILL.md is about 1.7k tokens, which your agent loads only when the skill is triggered. The skill folder holds 5 other files, including scripts (for example `scripts/discover_and_rank.sh` and `scripts/query_capacity.sh`).
It sits in DevOps & Cloud, covering Deployment. It works with Microsoft Azure, Azure OpenAI and OpenAI. The repository describes itself as: GitHub Copilot for Azure. The licence is MIT.
6 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit d8f4f4e. 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.
Ships 4 files in scripts/ (PowerShell and Shell), which the agent can run.
Shell commands in SKILL.md call:
azjqFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use az, which can reach the network depending on how they are called.
From 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.
Capacity loads about 1.7k tokens when it runs. Until then it costs about 148 tokens; SKILL.md has 610 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); the scripts in this folder are not scanned.
The full file from microsoft/GitHub-Copilot-for-Azure at commit d8f4f4e, republished under its MIT licence (© microsoft). 610 words, ~1,739 tokens.
.claude/skills/capacity/SKILL.md (or your agent's skills folder). This skill also uses 4 other files; get the full folder from GitHub.Finds available Azure OpenAI model capacity across all accessible regions and projects. Recommends the best deployment location based on capacity requirements.
| Property | Description |
|---|---|
| Purpose | Find where you can deploy a model with sufficient capacity |
| Scope | All regions and projects the user has access to |
| Output | Ranked table of regions/projects with available capacity |
| Action | Read-only analysis — does NOT deploy. Hands off to preset or customize |
| Authentication | Azure CLI (az login) |
After discovery → hand off to preset or customize for actual deployment.
Pre-built scripts handle the complex REST API calls and data processing. Use these instead of constructing commands manually.
| Script | Purpose | Usage |
|---|---|---|
scripts/discover_and_rank.ps1 | Full discovery: capacity + projects + ranking | Primary script for capacity discovery |
scripts/discover_and_rank.sh | Same as above (bash) | Primary script for capacity discovery |
scripts/query_capacity.ps1 | Raw capacity query (no project matching) | Quick capacity check or version listing |
scripts/query_capacity.sh | Same as above (bash) | Quick capacity check or version listing |
az account show --query "{Subscription:name, SubscriptionId:id}" --output tableExtract model name from user prompt. If version is unknown, query available versions:
.\scripts\query_capacity.ps1 -ModelName <model-name>./scripts/query_capacity.sh <model-name>This lists available versions. Use the latest version unless user specifies otherwise.
Run the full discovery script with model name, version, and minimum capacity target:
.\scripts\discover_and_rank.ps1 -ModelName <model-name> -ModelVersion <version> -MinCapacity <target>./scripts/discover_and_rank.sh <model-name> <version> <min-capacity>💡 The script automatically queries capacity across ALL regions, cross-references with the user's existing projects, and outputs a ranked table sorted by: meets target → project count → available capacity.
After discovery identifies candidate regions, validate that the user's subscription actually has available quota in each region. Model capacity (from Phase 3) shows what the platform can support, but subscription quota limits what this specific user can deploy.
# For each candidate region from discovery results:
$usageData = az cognitiveservices usage list --location <region> --subscription $SUBSCRIPTION_ID -o json 2>$null | ConvertFrom-Json
# Check quota for each SKU the model supports
# Quota names follow pattern: OpenAI.<SKU>.<model-name>
$usageEntry = $usageData | Where-Object { $_.name.value -eq "OpenAI.<SKU>.<model-name>" }
if ($usageEntry) {
$quotaAvailable = $usageEntry.limit - $usageEntry.currentValue
} else {
$quotaAvailable = 0 # No quota allocated
}# For each candidate region from discovery results:
usage_json=$(az cognitiveservices usage list --location <region> --subscription "$SUBSCRIPTION_ID" -o json 2>/dev/null)
# Extract quota for specific SKU+model
quota_available=$(echo "$usage_json" | jq -r --arg name "OpenAI.<SKU>.<model-name>" \
'.[] | select(.name.value == $name) | .limit - .currentValue')Annotate discovery results:
Add a "Quota Available" column to the ranked output from Phase 3:
| Region | Available Capacity | Meets Target | Projects | Quota Available |
|---|---|---|---|---|
| eastus2 | 120K TPM | ✅ | 3 | ✅ 80K |
| westus3 | 90K TPM | ✅ | 1 | ❌ 0 (at limit) |
| swedencentral | 100K TPM | ✅ | 0 | ✅ 100K |
Regions/SKUs where quotaAvailable = 0 should be marked with ❌ in the results. If no region has available quota, hand off to the quota skill for increase requests and troubleshooting.
After the script outputs the ranked table (now annotated with quota info), present it to the user and ask:
Before handing off to preset or customize, always confirm the target project with the user. See the Project Selection rules in the parent router.
If the discovery table shows a sample project for the chosen region, suggest it as the default. Otherwise, query projects in that region and let the user pick.
| Error | Cause | Resolution |
|---|---|---|
| "No capacity found" | Model not available or all at quota | Hand off to quota skill for increase requests and troubleshooting |
| Script auth error | az login expired | Re-run az login |
| Empty version list | Model not in region catalog | Try a different region: ./scripts/query_capacity.sh <model> "" eastus |
| "No projects found" | No AI Services resources | Guide to project/create skill or Azure Portal |
© microsoft, 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 4 other files (scripts) in plugins/azure-skills/skills/microsoft-foundry/models/deploy-model/capacity of microsoft/GitHub-Copilot-for-Azure.
Open the folder on GitHubat commit d8f4f4e
We found 8 copies of this SKILL.md (exact, near-identical or edited) in other folders, from 2 other GitHub owners. This page covers the copy in microsoft/GitHub-Copilot-for-Azure, which our catalogue first saw on October 7, 2026.
Capacity 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 |
|---|---|---|---|---|---|---|
| Capacity this skillmicrosoft/GitHub-Copilot-for-Azure | 255 | 2 repos | ~1.7k | Automated safety check: Pass | MIT | |
| Azure Architecture Autopilotgithub/awesome-copilot | 40k | 1 repos | ~1.9k | Automated safety check: Pass | MIT | |
| Letta Configurationletta-ai/skills | 147 | — | ~1.3k | Automated safety check: Notes | MIT | |
| Azure AI Deploytimothywarner-org/claude-code | 224 | — | ~731 | Automated safety check: Notes | MIT | |
| Azure AI Projects TSmicrosoft/skills | 3.1k | 6 repos | ~1.9k | Automated safety check: Pass | MIT | |
| Azure Video IndexerMicrosoftDocs/Agent-Skills | 775 | — | ~2.4k | Automated safety check: Pass | CC-BY-4.0 |
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.
letta-ai/skills
Configure LLM models and providers for Letta agents and servers.
timothywarner-org/claude-code
Ship a Python generative-AI app to Azure the keyless way, using DefaultAzureCredential and azd.
microsoft/skills
Build AI applications using Azure AI Projects SDK for JavaScript (@azure/ai-projects).
MicrosoftDocs/Agent-Skills
Expert knowledge for Azure AI Video Indexer development including troubleshooting, best practices, decision making, limits & quotas, security, configuration, integrations & coding patterns, and…
microsoft/work-iq
Build, test, and deploy code-based Teams apps using the M365 Agents Toolkit CLI.
microsoft/GitHub-Copilot-for-Azure
Unified Azure OpenAI model deployment skill with intelligent intent-based routing.
microsoft/GitHub-Copilot-for-Azure
Provision Microsoft Entra Agent Identity Blueprints, BlueprintPrincipals, and per-instance Agent Identities via Microsoft Graph, and configure OAuth 2.0 token exchange (fmipath, OBO, cross-tenant)…
microsoft/GitHub-Copilot-for-Azure
Build, deploy, evaluate, optimize, fine-tune, and manage Microsoft Foundry agents, models, and resources end to end.
microsoft/GitHub-Copilot-for-Azure
Azure Storage Services including Blob Storage, File Shares, Queue Storage, Table Storage, and Data Lake.
microsoft/GitHub-Copilot-for-Azure
Debug Azure production issues on Azure using AppLens, Azure Monitor, resource health, and safe triage.
microsoft/GitHub-Copilot-for-Azure
Check/manage Azure quotas and usage across providers. An agent skill from microsoft/GitHub-Copilot-for-Azure.
Works with
Categories
Discovers available Azure OpenAI model capacity across regions and projects. Capacity is an agent skill from microsoft/GitHub-Copilot-for-Azure, published by the product's own GitHub organization. Discovers available Azure OpenAI model capacity across regions and projects.
Capacity fits situations like: : find capacity; where can I deploy; capacity discovery; best region for capacity.
Run `npx skills add microsoft/GitHub-Copilot-for-Azure --skill capacity -a claude-code`. Or copy the skill folder (plugins/azure-skills/skills/microsoft-foundry/models/deploy-model/capacity in microsoft/GitHub-Copilot-for-Azure) into .claude/skills/capacity in your project. Claude Code loads it when a task matches its description.
Run `npx skills add microsoft/GitHub-Copilot-for-Azure --skill capacity -a codex`. Or copy the skill folder (plugins/azure-skills/skills/microsoft-foundry/models/deploy-model/capacity in microsoft/GitHub-Copilot-for-Azure) into .agents/skills/capacity 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 microsoft/GitHub-Copilot-for-Azure --skill capacity -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/capacity, .gemini/skills/capacity, .github/skills/capacity and .opencode/skills/capacity in your project.
Going by SKILL.md and its folder, Capacity needs PowerShell and a shell for the scripts in its folder and the command-line tools its instructions call (az and jq). Our summary lists: A Bash shell; PowerShell.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. 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. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Capacity is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.7k tokens (SKILL.md is roughly 7k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Capacity: Azure Architecture Autopilot (github/awesome-copilot, 40k stars), Letta Configuration (letta-ai/skills, 147 stars), Azure AI Deploy (timothywarner-org/claude-code, 224 stars) and Azure AI Projects TS (microsoft/skills, 3.1k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
microsoft (a GitHub organization, an official publisher) maintains it in microsoft/GitHub-Copilot-for-Azure, which has 255 GitHub stars. The repository holds 56 skills in this directory. The repository was last updated on October 7, 2026.
Source: microsoft/GitHub-Copilot-for-Azure on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.