Skip to main content

azure-resource-visualizer

Analyze deployed Azure resource groups and generate detailed Mermaid architecture diagrams showing relationships between resources. Use for post-deployment visualization, understanding existing infrastructure, or documenting live Azure environments.

Source facts

Repository
Azure/git-ape
Last source activity
June 5, 2026 at 08:09
Detected SKILL.md language
English
Stars
270
Forks
48

Install options

The review-first prompt is selected by default. You can switch to a direct command or download a local copy.

Review the source files

Read SKILL.md and any companion files shown by SkillsMP before deciding whether to install.

Showing SKILL.md

SKILL.md
Source instructions · Read-only preview
name
azure-resource-visualizer
description
Analyze deployed Azure resource groups and generate detailed Mermaid architecture diagrams showing relationships between resources. Use for post-deployment visualization, understanding existing infrastructure, or documenting live Azure environments.
metadata
{"argument-hint":"Resource group name to visualize","user-invocable":true}
# Azure Resource Visualizer Analyze deployed Azure resource groups and generate comprehensive Mermaid architecture diagrams showing resource relationships, configurations, and data flows. Adapted from [github/awesome-copilot](https://github.com/github/awesome-copilot) `azure-resource-visualizer` skill. ## When to Use - After deployment to visualize what was created - To understand existing Azure infrastructure - For documentation and architecture reviews - During drift detection to compare expected vs actual architecture - When user asks "show me my Azure resources" or "diagram my infrastructure" ## Procedure ### 1. Select Resource Group If not specified, list available resource groups: ```bash az group list \ --query "[].{Name:name, Location:location, Tags:tags}" \ --output table ``` Present a numbered list and ask the user to select. ### 2. Discover All Resources Query all resources in the selected resource group: ```bash az resource list \ --resource-group {rg-name} \ --query "[].{Name:name, Type:type, Location:location, SKU:sku.name, Kind:kind}" \ --output json ``` For each resource, gather details: - Resource name and type - SKU/tier information - Key configuration properties - Network settings (VNets, subnets, private endpoints) - Identity (Managed Identity, RBAC) - Dependencies and connections ### 3. Map Relationships Identify connections between resources: | Relationship Type | How to Detect | |-------------------|---------------| | **Network** | VNet peering, subnet assignments, NSG rules, private endpoints | | **Data flow** | App → Database connection strings, Function → Storage bindings | | **Identity** | Managed identity role assignments | | **Configuration** | App Settings referencing Key Vault, instrumentation keys | | **Dependencies** | Parent-child relationships (SQL Server → Database) | ### 4. Generate Mermaid Diagram Create a detailed diagram using `graph TB` or `graph LR`: ```mermaid graph TB subgraph "Resource Group: rg-webapp-prod-eastus" subgraph "Compute Layer" APP["🌐 app-webapp-prod-eastus<br/>Plan: B1 Basic"] FUNC["⚡ func-api-prod-eastus<br/>Runtime: Python 3.11"] end subgraph "Data Layer" SQL["🗄️ sql-webapp-prod-eastus<br/>Tier: Standard S1"] STORAGE["💾 stwebappprod8k3m<br/>Standard LRS"] end subgraph "Monitoring & Security" APPI["📊 appi-webapp-prod-eastus"] KV["🔑 kv-webapp-prod-eus"] end end Internet["🌐 Internet"] --> APP APP -->|"connection string"| SQL APP -->|"blob storage"| STORAGE APP -.->|"instrumentation key"| APPI FUNC -->|"trigger"| STORAGE FUNC -.->|"instrumentation key"| APPI APP -->|"secrets"| KV FUNC -->|"secrets"| KV classDef internet fill:#e0e7ff,stroke:#4338ca,color:#1e1b4b classDef compute fill:#dbeafe,stroke:#1f6feb,stroke-width:2px,color:#0b3d91 classDef data fill:#dcfce7,stroke:#15803d,color:#14532d classDef storage fill:#fef3c7,stroke:#92400e,color:#78350f classDef monitor fill:#ede9fe,stroke:#7c3aed,color:#4c1d95 classDef secret fill:#fde68a,stroke:#b45309,stroke-width:2px,color:#7c2d12 class Internet internet class APP,FUNC compute class SQL data class STORAGE storage class APPI monitor class KV secret ``` **Diagram Rules:** - Group by layer: Compute, Data, Monitoring & Security, Network - Include resource details in node labels (SKU, tier, runtime) using `<br/>` - Use icons: 🌐 web, ⚡ function, 💾 storage, 🗄️ database, 📊 monitoring, 🔑 key vault, 🐳 container - Label all connections with relationship type - `-->` for data flow/dependencies, `-.->` for optional/monitoring, `==>` for critical paths - Use `subgraph` for logical grouping ### 5. Create Documentation Generate a markdown file named `{rg-name}-architecture.md`: ```markdown # Architecture: {rg-name} **Subscription:** {subscription-name} **Region:** {location} **Analyzed:** {timestamp} ## Overview {2-3 paragraph summary of the architecture} ## Architecture Diagram {mermaid diagram} ## Resource Inventory | # | Resource | Type | SKU | Location | Tags | |---|----------|------|-----|----------|------| | 1 | app-webapp-prod | App Service | B1 | East US | env=prod | | 2 | sql-webapp-prod | SQL Server | S1 | East US | env=prod | | ... | ... | ... | ... | ... | ... | ## Relationships | Source | Target | Connection Type | Details | |--------|--------|-----------------|---------| | App Service | SQL Server | Connection String | SQL authentication | | App Service | Storage | Blob Access | Managed Identity | | Function App | Storage | Queue Trigger | Storage binding | ## Notes - {observations about the architecture} - {potential improvements} - {security considerations} ``` ### 6. Save or Display - **If called from Git-Ape workflow**: Save to `.azure/deployments/{id}/architecture-live.md` - **If called standalone**: Save to workspace root or `docs/` folder - Display summary to user with resource count and key relationships ## Integration with Git-Ape **Post-deployment visualization:** ``` Deployment succeeds → /azure-resource-visualizer {rg-name} → Live architecture diagram ``` **Drift detection enhancement:** ``` /azure-drift-detector detects drift → /azure-resource-visualizer → Compare expected vs actual diagram ``` **Import workflow:** ``` /azure-iac-exporter imports resources → /azure-resource-visualizer → Document imported architecture ``` ## Constraints - **Read-only** — never modify Azure resources - **Complete** — include ALL resources in the resource group, don't skip any - **Accurate** — verify resource details before including in diagram - **Valid Mermaid** — ensure diagram syntax renders correctly
View on GitHub