$npx -y skills add github/awesome-copilot --skill azure-architecture-autopilotDesign Azure infrastructure using natural language, or analyze existing Azure resources to auto-generate architecture diagrams, refine them through conversation, and deploy with Bicep. When to use this skill: - "Create X on Azure", "Set up a RAG architecture" (new design) - "Anal
| 1 | # Azure Architecture Builder |
| 2 | |
| 3 | A pipeline that designs Azure infrastructure using natural language, or analyzes existing resources to visualize architecture and proceed through modification and deployment. |
| 4 | |
| 5 | The diagram engine is **embedded within the skill** (`scripts/` folder). |
| 6 | No `pip install` needed — it directly uses the bundled Python scripts |
| 7 | to generate interactive HTML diagrams with 605+ official Azure icons. |
| 8 | Ready to use immediately without network access or package installation. |
| 9 | |
| 10 | ## Automatic User Language Detection |
| 11 | |
| 12 | **🚨 Detect the language of the user's first message and provide all subsequent responses in that language. This is the highest-priority principle.** |
| 13 | |
| 14 | - If the user writes in Korean → respond in Korean |
| 15 | - If the user writes in English → **respond in English** (ask_user, progress updates, reports, Bicep comments — all in English) |
| 16 | - The instructions and examples in this document are written in English, and **all user-facing output must match the user's language** |
| 17 | |
| 18 | **⚠️ Do not copy examples from this document verbatim to the user.** |
| 19 | Use only the structure as reference, and adapt text to the user's language. |
| 20 | |
| 21 | ## Tool Usage Guide (GHCP Environment) |
| 22 | |
| 23 | | Feature | Tool Name | Notes | |
| 24 | |---------|-----------|-------| |
| 25 | | Fetch URL content | `web_fetch` | For MS Docs lookups, etc. | |
| 26 | | Web search | `web_search` | URL discovery | |
| 27 | | Ask user | `ask_user` | `choices` must be a string array | |
| 28 | | Sub-agents | `task` | explore/task/general-purpose | |
| 29 | | Shell command execution | `powershell` | Windows PowerShell | |
| 30 | |
| 31 | > All sub-agents (explore/task/general-purpose) cannot use `web_fetch` or `web_search`. |
| 32 | > Fact-checking that requires MS Docs lookups must be performed **directly by the main agent**. |
| 33 | |
| 34 | ## External Tool Path Discovery |
| 35 | |
| 36 | `az`, `python`, `bicep`, etc. are often not on PATH. |
| 37 | **Discover once before starting a Phase and cache the result. Do not re-discover every time.** |
| 38 | |
| 39 | > **⚠️ Do not use `Get-Command python`** — risk of Windows Store alias. |
| 40 | > Direct filesystem discovery (`$env:LOCALAPPDATA\Programs\Python`) takes priority. |
| 41 | |
| 42 | az CLI path: |
| 43 | ```powershell |
| 44 | $azCmd = $null |
| 45 | if (Get-Command az -ErrorAction SilentlyContinue) { $azCmd = 'az' } |
| 46 | if (-not $azCmd) { |
| 47 | $azExe = Get-ChildItem -Path "$env:ProgramFiles\Microsoft SDKs\Azure\CLI2\wbin", "$env:LOCALAPPDATA\Programs\Azure CLI\wbin" -Filter "az.cmd" -ErrorAction SilentlyContinue | Select-Object -First 1 -ExpandProperty FullName |
| 48 | if ($azExe) { $azCmd = $azExe } |
| 49 | } |
| 50 | ``` |
| 51 | |
| 52 | Python path + embedded diagram engine: refer to the diagram generation section in `references/phase1-advisor.md`. |
| 53 | |
| 54 | ## Progress Updates Required |
| 55 | |
| 56 | Use blockquote + emoji + bold format: |
| 57 | ```markdown |
| 58 | > **⏳ [Action]** — [Reason] |
| 59 | > **✅ [Complete]** — [Result] |
| 60 | > **⚠️ [Warning]** — [Details] |
| 61 | > **❌ [Failed]** — [Cause] |
| 62 | ``` |
| 63 | |
| 64 | ## Parallel Preload Principle |
| 65 | |
| 66 | While waiting for user input via `ask_user`, preload information needed for the next step in parallel. |
| 67 | |
| 68 | | ask_user Question | Preload Simultaneously | |
| 69 | |---|---| |
| 70 | | Project name / scan scope | Reference files, MS Docs, Python path discovery, **diagram module path verification** | |
| 71 | | Model/SKU selection | MS Docs for next question choices | |
| 72 | | Architecture confirmation | `az account show/list`, `az group list` | |
| 73 | | Subscription selection | `az group list` | |
| 74 | |
| 75 | --- |
| 76 | |
| 77 | ## Path Branching — Automatically Determined by User Request |
| 78 | |
| 79 | ### Path A: New Design (New Build) |
| 80 | |
| 81 | **Trigger**: "create", "set up", "deploy", "build", etc. |
| 82 | ``` |
| 83 | Phase 1 (references/phase1-advisor.md) — Interactive architecture design + diagram |
| 84 | ↓ |
| 85 | Phase 2 (references/bicep-generator.md) — Bicep code generation |
| 86 | ↓ |
| 87 | Phase 3 (references/bicep-reviewer.md) — Code review + compilation verification |
| 88 | ↓ |
| 89 | Phase 4 (references/phase4-deployer.md) — validate → what-if → deploy |
| 90 | ``` |
| 91 | |
| 92 | ### Path B: Existing Analysis + Modification (Analyze & Modify) |
| 93 | |
| 94 | **Trigger**: "analyze", "current resources", "scan", "draw a diagram", "show my infrastructure", etc. |
| 95 | ``` |
| 96 | Phase 0 (references/phase0-scanner.md) — Existing resource scan + diagram |
| 97 | ↓ |
| 98 | Modification conversation — "What would you like to change here?" (natural language modification request → follow-up questions) |
| 99 | ↓ |
| 100 | Phase 1 (references/phase1-advisor.md) — Confirm modifications + update diagram |
| 101 | ↓ |
| 102 | Phase 2~4 — Same as above |
| 103 | ``` |
| 104 | |
| 105 | ### When Path Determination Is Ambiguous |