Best for
- Use when rendering Azure IaC or DS_CATALOG_V1 relationships as caller-selected ASCII or Mermaid diagrams.
microsoft/hve-core/.github/skills/hve-core/architecture-diagrams/SKILL.md
Architecture diagram authoring for cloud infrastructure and declared data catalogs. Use when rendering Azure IaC or DS_CATALOG_V1 relationships as caller-selected ASCII or Mermaid diagrams.
Decision brief
Architecture diagram authoring for cloud infrastructure and declared data catalogs.
Compatibility matrix
| Platform | Status | Evidence | What to check |
|---|---|---|---|
| Codex | Not declared | No explicit evidence | Portability before use |
| Claude Code | Not declared | No explicit evidence | Portability before use |
| Cursor | Not declared | No explicit evidence | Portability before use |
| Gemini CLI | Not declared | No explicit evidence | Portability before use |
Installation
The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.
npx skills add https://github.com/microsoft/hve-core --skill ".github/skills/hve-core/architecture-diagrams"Inspect the Agent Skill "architecture-diagrams" from https://github.com/microsoft/hve-core/blob/7cc6dc42caf7f842e1f7aa9f3d41cb4581538f33/.github/skills/hve-core/architecture-diagrams/SKILL.md at commit 7cc6dc42caf7f842e1f7aa9f3d41cb4581538f33. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.
Workflow
Follow this sequence when authoring a diagram:
Turn infrastructure source files or a declared DSCATALOGV1 data model into a readable architecture diagram for reviews, ADRs, and design discussions. Preserve the caller's selected output format and the source's authority boundaries.
The diagram includes only the confirmed source scope. Infrastructure sources retain their existing parsing and relationship behavior. Catalog diagrams preserve declared entity IDs, endpoints, cardinality, endpoint minimums, join keys, confidence, and evidence basis without inven…
Treat a diagram as a view over source authority, not a semantic authority of its own. Read catalog-erd.md for DSCATALOGV1 input, multiplicity mapping, confidence rendering, the catalog output contract, and the Functional Planner compatibility boundary. Do not parse SQL DDL, Pris…
Stop and ask for scope when infrastructure boundaries are ambiguous. Stop and report an unsupported catalog version, unresolved endpoint, unknown cardinality, missing or invalid endpoint minimum, unknown confidence value, or malformed join-key declaration instead of guessing or…
Permission review
No configured static risk pattern was detected
This is not proof of safety. Runtime behavior, indirect dependencies, and hidden external systems are outside the static scan.
Evidence record
| Signal | Value | Evidence type | Meaning |
|---|---|---|---|
| Quality score | 90/100 | Computed | Documentation, specificity, maintenance, and trust rules |
| Repository stars | 1,359 | Source | Repository attention, not individual Skill quality |
| Compatibility | 0 platforms | Source | Declared in the catalog source record |
| Usage guide | automated source guide | Editorial | Generated or reviewed according to the visible evidence level |
Pinned source
Turn infrastructure source files or a declared DS_CATALOG_V1 data model into a readable architecture diagram for reviews, ADRs, and design discussions. Preserve the caller's selected output format and the source's authority boundaries.
Infrastructure inputs include Terraform, Bicep, ARM templates, shell scripts, Kubernetes manifests, and Docker or Compose files. Catalog input uses declared entities and relationships from ds-catalog, the durable data-catalog skill. It does not infer a data model from SQL or ORM files.
This skill documents infrastructure topology and data models. To document a software system, meaning its containers, its components, and the people and systems around it, use the c4-architecture skill instead.
DS_CATALOG_V1 input, multiplicity mapping, confidence rendering, the catalog output contract, and the Functional Planner compatibility boundary.This skill produces either ASCII block diagrams or Mermaid diagrams. Neither is the default: the caller or surrounding context chooses the output format for each diagram. When the caller does not state a preference, ask which format they want before generating.
The diagram type follows the source type. Infrastructure sources render as ASCII block diagrams or Mermaid flowcharts using the ASCII Conventions or Mermaid Conventions below. Catalog sources render as ASCII entity lines or a Mermaid erDiagram using catalog-erd.md. In every case, keep the structure, boundaries, and relationships identical across formats.
Architecture diagram format selection applies beyond ADRs. For standalone usage, consult the root state file at .copilot-tracking/architecture-diagrams/state.json. If that file is absent, create it when a format is chosen.
{
"userPreferences": {
"diagramFormat": "mermaid"
},
"repoVisibility": "private"
}
The userPreferences.diagramFormat value must be either ascii or mermaid. The repoVisibility field is optional and may be used by surrounding workflows when they need to distinguish public and private repositories. Resolution order is:
.copilot-tracking/architecture-diagrams/state.json.Follow this sequence when authoring a diagram:
scripts/render_catalog_erd.py or follow catalog-erd.md without adding inferred semantics.Use consistent box notation and alignment:
+------------------+ +------------------+
| Service Name |----->| Service Name |
+------------------+ +------------------+
Use the following conventions for readability:
| Arrow | Meaning |
|---|---|
----> | Data flow or dependency |
<---> | Bidirectional connection |
- - > | Optional or conditional resource |
Group related components inside a larger boundary when they share a network, account, or deployment domain.
Use a full box for a strong boundary:
+-----------------------------------------------+
| Resource Group |
| |
| +-------------+ +-------------+ |
| | VNet |------->| Subnet | |
| +-------------+ +-------------+ |
| |
+-----------------------------------------------+
Use labeled boundaries for secondary or nested boundaries:
:--- Virtual Network ---------------------------:
: :
: +-------------+ +-------------+ :
: | Subnet A |------->| Subnet B | :
: +-------------+ +-------------+ :
: :
:-----------------------------------------------:
When the caller chooses Mermaid output, render a mermaid fenced code block using a flowchart that expresses the same structure, boundaries, and relationships you would draw in ASCII.
flowchart TB for top-to-bottom topologies and flowchart LR when the main flow reads left to right.lb["Load Balancer"], and use [("...")] for data stores.subgraph block, such as a VNet, subnet, or resource group.--> for data flow or dependency, <--> for bidirectional connections, and -. optional .-> for optional or conditional links.flowchart TB
subgraph rg["Resource Group"]
lb["Load Balancer"]
subgraph subnet["App Subnet"]
vm1["VM 1"]
vm2["VM 2"]
end
db[("SQL Database")]
end
lb --> vm1
lb --> vm2
vm1 --> db
vm2 --> db
When reading infrastructure sources, extract:
Use this structure for every infrastructure diagram:
## <Name> Architecture
[diagram in the selected format]
### Legend
[Arrow meanings from this diagram; reference the arrow types above]
### Key Relationships
[Notable connections and dependencies]
The title should use title case and follow the pattern <Name> Architecture. The legend should explain any special symbols used, and the key relationships section should focus on the most important dependencies or data flows.
Catalog diagrams use the parallel ## <Engagement> Data Model contract defined in catalog-erd.md, with a Legend covering multiplicity and confidence and a Key Relationships section carrying every declared relationship and its basis.
## AKS Platform Architecture
+===============================================================+
| Resource Group |
| :--- Virtual Network ------------------------------------: |
| : +------------------+ +------------------+ : |
| : | NAT Gateway |------->| AKS Cluster | : |
| : +------------------+ +--------+---------+ : |
| : +--------v---------+ : |
| : | ACR | : |
| : +------------------+ : |
|:----------------------------------------------------------:|
| +------------------+ +------------------+ |
| | Log Analytics |<-------| App Insights | |
| +------------------+ +------------------+ |
+===============================================================+
### Legend
See the arrow types above. Additional symbols: `====` primary boundary, `:---:` secondary boundary.
### Key Relationships
* AKS pulls images from ACR through the network boundary.
* NAT Gateway provides egress for AKS workloads.
The same architecture in Mermaid form expresses identical structure, boundaries, and relationships:
## AKS Platform Architecture
```mermaid
flowchart TB
subgraph rg["Resource Group"]
subgraph vnet["Virtual Network"]
nat["NAT Gateway"]
aks["AKS Cluster"]
acr["ACR"]
end
appinsights["App Insights"]
logs[("Log Analytics")]
end
nat --> aks
aks --> acr
appinsights --> logs
```
### Legend
See the arrow types above; `subgraph` blocks denote network or resource boundaries.
### Key Relationships
* AKS pulls images from ACR through the network boundary.
* NAT Gateway provides egress for AKS workloads.
Frequently asked questions
Architecture diagram authoring for cloud infrastructure and declared data catalogs.
The source record exposes this install command: npx skills add https://github.com/microsoft/hve-core --skill ".github/skills/hve-core/architecture-diagrams". Inspect the command and pinned source before running it.
Alternatives
garrytan/gbrain
End-to-end discipline for turning any large data source (audio libraries, email takeouts, document corpora, chat exports, API dumps) into brain pages at scale. The lifecycle spine: SCHEMA → ACCESS → TRIAL → EVALUATE → IMPROVE → CODIFY → TEST → SKILLIFY → BULK → MONITOR. State is tracked in a durable JSON manifest (see MANIFEST-PATTERN.md) so any crash, session boundary, or subagent fan-out resumes from ground truth instead of memory.
alirezarezvani/claude-skills
App Store Optimization (ASO) toolkit for researching keywords, analyzing competitor rankings, generating metadata suggestions, and improving app visibility on Apple App Store and Google Play Store. Use when the user asks about ASO, app store rankings, app metadata, app titles and descriptions, app store listings, app visibility, or mobile app marketing on iOS or Android. Supports keyword research and scoring, competitor keyword analysis, metadata optimization, A/B test planning, launch checklist
wanshuiyin/Auto-claude-code-research-in-sleep
Use it for operations and research tasks; the detail page covers purpose, installation, and practical steps.
prowler-cloud/prowler
PostgreSQL indexing best practices for Prowler: index design, partial indexes, partitioned table indexing, EXPLAIN ANALYZE validation, concurrent operations, monitoring, and maintenance. Trigger: When creating or modifying PostgreSQL indexes, analyzing query performance with EXPLAIN, debugging slow queries, reviewing index usage statistics, reindexing, dropping indexes, or working with partitioned table indexes. Also trigger when discussing index strategies, partial indexes, or index maintenance