Skip to content
AI & Agents
Skill

/azure-resource-visualizer

Analyze Azure resource groups and generate detailed Mermaid architecture diagrams showing the relationships between individual resources. Use this skill when the user asks for a diagram of their Azure resources or help in understanding how the resources relate to each other.

From plugin
awesome-copilot
39k200 skills200 agents
Install
$ npx -y skills add github/awesome-copilot --skill azure-resource-visualizer --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/azure-resource-visualizer

Context preview

The summary Claude sees to decide when to auto-load this skill.

Analyze Azure resource groups and generate detailed Mermaid architecture diagrams showing the relationships between individual resources. Use this skill when the user asks for a diagram of their Azure resources or help in understanding how the resources relate to each other.

SKILL.md

azure-resource-visualizer.SKILL.md
name: azure-resource-visualizer
description: Analyze Azure resource groups and generate detailed Mermaid architecture diagrams showing the relationships between individual resources. Use this skill when the user asks for a diagram of their Azure resources or help in understanding how the resources relate to each other.
license: Complete terms in LICENSE.txt
metadata:
  author: Tom Meschter (tom.meschter@microsoft.com)

Azure Resource Visualizer - Architecture Diagram Generator

A user may ask for help understanding how individual resources fit together, or to create a diagram showing their relationships. Your mission is to examine Azure resource groups, understand their structure and relationships, and generate comprehensive Mermaid diagrams that clearly illustrate the architecture.

Core Responsibilities

1. **Resource Group Discovery**: List available resource groups when not specified 2. **Deep Resource Analysis**: Examine all resources, their configurations, and interdependencies 3. **Relationship Mapping**: Identify and document all connections between resources 4. **Diagram Generation**: Create detailed, accurate Mermaid diagrams 5. **Documentation Creation**: Produce clear markdown files with embedded diagrams

Workflow Process

Step 1: Resource Group Selection

If the user hasn't specified a resource group:

1. Use your tools to query available resource groups. If you do not have a tool for this, use `az`. 2. Present a numbered list of resource groups with their locations 3. Ask the user to select one by number or name 4. Wait for user response before proceeding

If a resource group is specified, validate it exists and proceed.

Step 2: Resource Discovery & Analysis

Once you have the resource group:

1. **Query all resources** in the resource group using Azure MCP tools or `az`. 2. **Analyze each resource** type and capture:

  • Resource name and type
  • SKU/tier information
  • Location/region
  • Key configuration properties
  • Network settings (VNets, subnets, private endpoints)
  • Identity and access (Managed Identity, RBAC)
  • Dependencies and connections

3. **Map relationships** by identifying:

  • **Network connections**: VNet peering, subnet assignments, NSG rules, private endpoints
  • **Data flow**: Apps → Databases, Functions → Storage, API Management → Backends
  • **Identity**: Managed identities connecting to resources
  • **Configuration**: App Settings pointing to Key Vaults, connection strings
  • **Dependencies**: Parent-child relationships, required resources

Step 3: Diagram Construction

Create a **detailed Mermaid diagram** using the `graph TB` (top-to-bottom) or `graph LR` (left-to-right) format:

**Diagram Structure Guidelines:**

graph TB
    %% Use subgraphs to group related resources
    subgraph "Resource Group: [name]"
        subgraph "Network Layer"
            VNET[Virtual Network<br/>10.0.0.0/16]
            SUBNET1[Subnet: web<br/>10.0.1.0/24]
            SUBNET2[Subnet: data<br/>10.0.2.0/24]
            NSG[Network Security Group]
        end
        
        subgraph "Compute Layer"
            APP[App Service<br/>Plan: P1v2]
            FUNC[Function App<br/>Runtime: .NET 8]
        end
        
        subgraph "Data Layer"
            SQL[Azure SQL Database<br/>DTU: S1]
            STORAGE[Storage Account<br/>Type: Standard LRS]
        end
        
        subgraph "Security & Identity"
            KV[Key Vault]
            MI[Managed Identity]
        end
    end
    
    %% Define relationships with descriptive labels
    APP -->|"HTTPS requests"| FUNC
    FUNC -->|"SQL connection"| SQL
    FUNC -->|"Blob/Queue access"| STORAGE
    APP -->|"Uses identity"| MI
    MI -->|"Access secrets"| KV
    VNET --> SUBNET1
    VNET --> SUBNET2
    SUBNET1 --> APP
    SUBNET2 --> SQL
    NSG -->|"Rules applied to"| SUBNET1

**Key Diagram Requirements:**

  • **Group by layer or purpose**: Network, Compute, Data, Security, Monitoring
  • **Include details**: SKUs, tiers, important settings in node labels (use `<br/>` for line breaks)
  • **Label all connections**: Describe what flows between resources (data, identity, network)
  • **Use meaningful node IDs**: Abbreviations that make sense (APP, FUNC, SQL, KV)
  • **Visual hierarchy**: Subgraphs for logical grouping
  • **Connection types**:
  • `-->` for data flow or dependencies
  • `-.->` for optional/conditional connections
  • `==>` for critical/primary paths

**Resource Type Examples:**

  • App Service: Include plan tier (B1, S1, P1v2)
  • Functions: Include runtime (.NET, Python, Node)
  • Databases: Include tier (Basic, Standard, Premium)
  • Storage: Include redundancy (LRS, GRS, ZRS)
  • VNets: Include address space
  • Subnets: Include address range

Step 4: File Creation

Use [template-architecture.md](./assets/template-architecture.md) as a template and create a markdown file named `[resource-group-name]-architecture.md` with:

1. **Header**: Resource group name, subscription, region 2. **Summary**: Brief overview of the architecture (2-3 paragraphs) 3. **Resource Inventory**: Table listing all resources with types and key properties 4. **Architecture Diagram**: The complete Mermaid diagram 5. **Relationship Details**: Explanation of key connections and data flows 6. **Notes**: Any important observations, potential issues, or recommendations

Operating Guidelines

Quality Standards

  • **Accuracy**: Verify all resource details before including in diagram
  • **Completeness**: Don't omit resources; include everything in the resource group
  • **Clarity**: Use clear, descriptive labels and logical grouping
  • **Detail Level**: Include configuration details that matter for architecture understanding
  • **Relationships**: Show ALL significant connections, not just obvious ones

Tool Usage Patterns

1. **Azure MCP Search**:

  • Use `intent="list resource groups"` to discover resource groups
  • Use `intent="list resources in group"` with group name
Read more
Ships withawesome-copilot

A community-created collection of custom agents, instructions, skills, hooks, workflows, and plugins to supercharge your GitHub Copilot experience.

Get the whole plugin

Other skills on awesome-copilot.