Skip to content

Commit 3e01810

Browse files
whoniiiiCopilot
andauthored
Add azure-architecture-autopilot skill πŸ€–πŸ€–πŸ€– (#1158)
* Add azure-architecture-autopilot skill E2E Azure infrastructure automation skill: - Natural language β†’ Architecture diagram β†’ Bicep β†’ Deploy - 70+ service types with 605+ official Azure icons - Interactive HTML diagrams (drag, zoom, click, PNG export) - Scans existing resources or designs new architecture - Modular Bicep with RBAC, Private Endpoints, DNS - Multi-language support (auto-detects user language) - Zero dependencies (diagram engine embedded) Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Fix generator.py import for flat scripts/ structure + sync README Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: whoniiii <whoniiii@users.noreply.github.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
1 parent 6bd2d12 commit 3e01810

20 files changed

Lines changed: 8684 additions & 0 deletions

β€Ždocs/README.skills.mdβ€Ž

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@ See [CONTRIBUTING.md](../CONTRIBUTING.md#adding-skills) for guidelines on how to
4040
| [autoresearch](../skills/autoresearch/SKILL.md) | Autonomous iterative experimentation loop for any programming task. Guides the user through defining goals, measurable metrics, and scope constraints, then runs an autonomous loop of code changes, testing, measuring, and keeping/discarding results. Inspired by Karpathy's autoresearch. USE FOR: autonomous improvement, iterative optimization, experiment loop, auto research, performance tuning, automated experimentation, hill climbing, try things automatically, optimize code, run experiments, autonomous coding loop. DO NOT USE FOR: one-shot tasks, simple bug fixes, code review, or tasks without a measurable metric. | None |
4141
| [aws-cdk-python-setup](../skills/aws-cdk-python-setup/SKILL.md) | Setup and initialization guide for developing AWS CDK (Cloud Development Kit) applications in Python. This skill enables users to configure environment prerequisites, create new CDK projects, manage dependencies, and deploy to AWS. | None |
4242
| [az-cost-optimize](../skills/az-cost-optimize/SKILL.md) | Analyze Azure resources used in the app (IaC files and/or resources in a target rg) and optimize costs - creating GitHub issues for identified optimizations. | None |
43+
| [azure-architecture-autopilot](../skills/azure-architecture-autopilot/SKILL.md) | Design Azure infrastructure using natural language, or analyze existing Azure resources to auto-generate architecture diagrams, refine them through conversation, and deploy with Bicep.<br />When to use this skill: - "Create X on Azure", "Set up a RAG architecture" (new design) - "Analyze my current Azure infrastructure", "Draw a diagram for rg-xxx" (existing analysis) - "Foundry is slow", "I want to reduce costs", "Strengthen security" (natural language modification) - Azure resource deployment, Bicep template generation, IaC code generation - Microsoft Foundry, AI Search, OpenAI, Fabric, ADLS Gen2, Databricks, and all Azure services | `.gitignore`<br />`README.md`<br />`assets/06-architecture-diagram.png`<br />`assets/07-azure-portal-resources.png`<br />`assets/08-deployment-succeeded.png`<br />`references/ai-data.md`<br />`references/architecture-guidance-sources.md`<br />`references/azure-common-patterns.md`<br />`references/azure-dynamic-sources.md`<br />`references/bicep-generator.md`<br />`references/bicep-reviewer.md`<br />`references/phase0-scanner.md`<br />`references/phase1-advisor.md`<br />`references/phase4-deployer.md`<br />`references/service-gotchas.md`<br />`scripts/cli.py`<br />`scripts/generator.py`<br />`scripts/icons.py` |
4344
| [azure-deployment-preflight](../skills/azure-deployment-preflight/SKILL.md) | 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. | `references/ERROR-HANDLING.md`<br />`references/REPORT-TEMPLATE.md`<br />`references/VALIDATION-COMMANDS.md` |
4445
| [azure-devops-cli](../skills/azure-devops-cli/SKILL.md) | Manage Azure DevOps resources via CLI including projects, repos, pipelines, builds, pull requests, work items, artifacts, and service endpoints. Use when working with Azure DevOps, az commands, devops automation, CI/CD, or when user mentions Azure DevOps CLI. | `references/advanced-usage.md`<br />`references/boards-and-iterations.md`<br />`references/org-and-security.md`<br />`references/pipelines-and-builds.md`<br />`references/repos-and-prs.md`<br />`references/variables-and-agents.md`<br />`references/workflows-and-patterns.md` |
4546
| [azure-pricing](../skills/azure-pricing/SKILL.md) | Fetches real-time Azure retail pricing using the Azure Retail Prices API (prices.azure.com) and estimates Copilot Studio agent credit consumption. Use when the user asks about the cost of any Azure service, wants to compare SKU prices, needs pricing data for a cost estimate, mentions Azure pricing, Azure costs, Azure billing, or asks about Copilot Studio pricing, Copilot Credits, or agent usage estimation. Covers compute, storage, networking, databases, AI, Copilot Studio, and all other Azure service families. | `references/COPILOT-STUDIO-RATES.md`<br />`references/COST-ESTIMATOR.md`<br />`references/REGIONS.md`<br />`references/SERVICE-NAMES.md` |
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
# Temporary files
2+
*.pyc
3+
__pycache__/
4+
*.egg-info/
5+
.DS_Store
6+
Thumbs.db
7+
8+
# Test/eval outputs (not included in repository)
9+
evals/outputs/
10+
workspace/
11+
12+
# Generated artifacts (not included in repository)
13+
output/
14+
*.png
15+
*.svg
16+
!assets/*.png
17+
!assets/*.svg
18+
19+
# Sample diagrams (contain hardcoded example values β€” prevent model context contamination)
20+
sample_*.html
21+
22+
# Environment configuration
23+
.env
24+
*.local
25+
26+
# Package files (build artifacts)
27+
*.skill
28+
29+
# Development-only folder (not included in public distribution)
30+
dev/
Lines changed: 188 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,188 @@
1+
<h1 align="center">Azure Architecture Autopilot</h1>
2+
3+
<p align="center">
4+
<strong>Design β†’ Diagram β†’ Bicep β†’ Deploy β€” all from natural language</strong>
5+
</p>
6+
7+
<p align="center">
8+
<img src="https://img.shields.io/badge/GitHub_Copilot-Skill-8957e5?logo=github" alt="Copilot Skill">
9+
<img src="https://img.shields.io/badge/Azure-All_Services-0078D4?logo=microsoftazure&logoColor=white" alt="Azure">
10+
<img src="https://img.shields.io/badge/Bicep-IaC-ff6f00" alt="Bicep">
11+
<img src="https://img.shields.io/badge/70+-Service_Types-00bcf2" alt="Service Types">
12+
<img src="https://img.shields.io/badge/License-MIT-green" alt="License">
13+
</p>
14+
15+
<p align="center">
16+
<b>Azure Architecture Autopilot</b> designs Azure infrastructure from natural language,<br>
17+
generates interactive diagrams, produces modular Bicep templates, and deploys β€” all through conversation.<br>
18+
It also scans existing resources, visualizes them as architecture diagrams, and refines them on the fly.
19+
</p>
20+
21+
<!-- Hero image: interactive architecture diagram with 605+ Azure icons -->
22+
<p align="center">
23+
<img src="assets/06-architecture-diagram.png" width="100%" alt="Interactive Azure architecture diagram with 605+ official icons">
24+
</p>
25+
26+
<p align="center">
27+
<em>↑ Auto-generated interactive diagram β€” drag, zoom, click for details, export to PNG</em>
28+
</p>
29+
30+
<p align="center">
31+
<img src="assets/08-deployment-succeeded.png" width="80%" alt="Deployment succeeded">
32+
&nbsp;&nbsp;
33+
<img src="assets/07-azure-portal-resources.png" width="80%" alt="Azure Portal β€” deployed resources">
34+
</p>
35+
36+
<p align="center">
37+
<em>↑ Real Azure resources deployed from the generated Bicep templates</em>
38+
</p>
39+
40+
<p align="center">
41+
<a href="#-how-it-works">How It Works</a> β€’
42+
<a href="#-features">Features</a> β€’
43+
<a href="#%EF%B8%8F-prerequisites">Prerequisites</a> β€’
44+
<a href="#-usage">Usage</a> β€’
45+
<a href="#-architecture">Architecture</a>
46+
</p>
47+
48+
---
49+
50+
## πŸ”„ How It Works
51+
52+
```
53+
Path A: "Build me a RAG chatbot on Azure"
54+
↓
55+
🎨 Design β†’ πŸ”§ Bicep β†’ βœ… Review β†’ πŸš€ Deploy
56+
57+
Path B: "Analyze my current Azure resources"
58+
↓
59+
πŸ” Scan β†’ 🎨 Modify β†’ πŸ”§ Bicep β†’ βœ… Review β†’ πŸš€ Deploy
60+
```
61+
62+
| Phase | Role | What Happens |
63+
|:-----:|------|--------------|
64+
| **0** | πŸ” Scanner | Scans existing Azure resources via `az` CLI β†’ auto-generates architecture diagram |
65+
| **1** | 🎨 Advisor | Interactive design through conversation β€” asks targeted questions with smart defaults |
66+
| **2** | πŸ”§ Generator | Produces modular Bicep: `main.bicep` + `modules/*.bicep` + `.bicepparam` |
67+
| **3** | βœ… Reviewer | Compiles with `az bicep build`, checks security & best practices |
68+
| **4** | πŸš€ Deployer | `validate` β†’ `what-if` β†’ preview diagram β†’ `create` (5-step mandatory sequence) |
69+
70+
---
71+
72+
## ✨ Features
73+
74+
| | Feature | Description |
75+
|---|---------|-------------|
76+
| πŸ“¦ | **Zero Dependencies** | 605+ Azure icons bundled β€” no `pip install`, works offline |
77+
| 🎨 | **Interactive Diagrams** | Drag-and-drop HTML with zoom, click details, PNG export |
78+
| πŸ” | **Resource Scanning** | Analyze existing Azure infra β†’ auto-generate architecture diagrams |
79+
| πŸ’¬ | **Natural Language** | *"It's slow"*, *"reduce costs"*, *"add security"* β†’ guided resolution |
80+
| πŸ“Š | **Live Verification** | API versions, SKUs, model availability fetched from MS Docs in real-time |
81+
| πŸ”’ | **Secure by Default** | Private Endpoints, RBAC, managed identity β€” no secrets in files |
82+
| ⚑ | **Parallel Preload** | Next-phase info loaded while waiting for user input |
83+
| 🌐 | **Multi-Language** | Auto-detects user language β€” responds in English, Korean, or any language |
84+
85+
---
86+
87+
## βš™οΈ Prerequisites
88+
89+
| Tool | Required | Install |
90+
|------|:--------:|---------|
91+
| **GitHub Copilot CLI** | βœ… | [Install guide](https://docs.github.com/copilot/concepts/agents/about-copilot-cli) |
92+
| **Azure CLI** | βœ… | `winget install Microsoft.AzureCLI` / `brew install azure-cli` |
93+
| **Python 3.10+** | βœ… | `winget install Python.Python.3.12` / `brew install python` |
94+
95+
> No additional packages required β€” the diagram engine is bundled in `scripts/`.
96+
97+
### πŸ€– Recommended Models
98+
99+
| | Models | Notes |
100+
|---|--------|-------|
101+
| πŸ† **Best** | Claude Opus 4.5 / 4.6 | Most reliable for all 5 phases |
102+
| βœ… **Recommended** | Claude Sonnet 4.5 / 4.6 | Best cost-performance balance |
103+
| ⚠️ **Minimum** | Claude Sonnet 4, GPT-5.1+ | May skip steps in complex architectures |
104+
105+
---
106+
107+
## πŸš€ Usage
108+
109+
### Path A β€” Build new infrastructure
110+
111+
```
112+
"Build a RAG chatbot with Foundry and AI Search"
113+
"Create a data platform with Databricks and ADLS Gen2"
114+
"Deploy Fabric + ADF pipeline with private endpoints"
115+
"Set up a microservices architecture with AKS and Cosmos DB"
116+
```
117+
118+
### Path B β€” Analyze & modify existing resources
119+
120+
```
121+
"Analyze my current Azure infrastructure"
122+
"Scan rg-production and show me the architecture"
123+
"What resources are in my subscription?"
124+
```
125+
126+
Then modify through conversation:
127+
```
128+
"Add 3 VMs to this architecture"
129+
"The Foundry endpoint is slow β€” what can I do?"
130+
"Reduce costs β€” downgrade AI Search to Basic"
131+
"Add private endpoints to all services"
132+
```
133+
134+
### πŸ“‚ Output Structure
135+
136+
```
137+
<project-name>/
138+
β”œβ”€β”€ 00_arch_current.html ← Scanned architecture (Path B)
139+
β”œβ”€β”€ 01_arch_diagram_draft.html ← Design diagram
140+
β”œβ”€β”€ 02_arch_diagram_preview.html ← What-if preview
141+
β”œβ”€β”€ 03_arch_diagram_result.html ← Deployment result
142+
β”œβ”€β”€ main.bicep ← Orchestration
143+
β”œβ”€β”€ main.bicepparam ← Parameter values
144+
└── modules/
145+
└── *.bicep ← Per-service modules
146+
```
147+
148+
---
149+
150+
## πŸ“ Architecture
151+
152+
```
153+
SKILL.md ← Lightweight router (~170 lines)
154+
β”‚
155+
β”œβ”€β”€ scripts/ ← Embedded diagram engine
156+
β”‚ β”œβ”€β”€ generator.py ← Interactive HTML generator
157+
β”‚ β”œβ”€β”€ icons.py ← 605+ Azure icons (Base64 SVG)
158+
β”‚ └── cli.py ← CLI entry point
159+
β”‚
160+
└── references/ ← Phase instructions + patterns
161+
β”œβ”€β”€ phase0-scanner.md ← πŸ” Resource scanning
162+
β”œβ”€β”€ phase1-advisor.md ← 🎨 Architecture design
163+
β”œβ”€β”€ bicep-generator.md ← πŸ”§ Bicep generation
164+
β”œβ”€β”€ bicep-reviewer.md ← βœ… Code review
165+
β”œβ”€β”€ phase4-deployer.md ← πŸš€ Deployment pipeline
166+
β”œβ”€β”€ service-gotchas.md ← Required properties & PE mappings
167+
β”œβ”€β”€ azure-common-patterns.md ← Security & naming patterns
168+
β”œβ”€β”€ azure-dynamic-sources.md ← MS Docs URL registry
169+
β”œβ”€β”€ architecture-guidance-sources.md
170+
└── ai-data.md ← AI/Data service domain pack
171+
```
172+
173+
> **Self-contained** β€” `SKILL.md` is a lightweight router. All phase logic lives in `references/`. The diagram engine is embedded in `scripts/` with no external dependencies.
174+
175+
---
176+
177+
## πŸ“Š Supported Services (70+ types)
178+
179+
All Azure services supported. AI/Data services have optimized templates; others are auto-looked up from MS Docs.
180+
181+
**Key types:** `ai_foundry` Β· `openai` Β· `ai_search` Β· `storage` Β· `adls` Β· `keyvault` Β· `fabric` Β· `databricks` Β· `aks` Β· `vm` Β· `app_service` Β· `function_app` Β· `cosmos_db` Β· `sql_server` Β· `postgresql` Β· `mysql` Β· `synapse` Β· `adf` Β· `apim` Β· `service_bus` Β· `logic_apps` Β· `event_grid` Β· `event_hub` Β· `container_apps` Β· `app_insights` Β· `log_analytics` Β· `firewall` Β· `front_door` Β· `load_balancer` Β· `expressroute` Β· `sentinel` Β· `redis` Β· `iot_hub` Β· `digital_twins` Β· `signalr` Β· `acr` Β· `bastion` Β· `vpn_gateway` Β· `data_explorer` Β· `document_intelligence` ...
182+
183+
184+
---
185+
186+
## πŸ“„ License
187+
188+
MIT Β© [Jeonghoon Lee](https://github.com/whoniiii)

0 commit comments

Comments
Β (0)