| name | structurizr-architecture |
| description | Use this skill when users ask for Structurizr DSL, architecture diagrams, ADR integration, workspace API/admin API automation, plugins, MCP server usage, static site exports, and Java/DSL modeling workflows. |
Structurizr Architecture Skill
Use this skill for C4-style modeling and Structurizr workflows.
Workflow
- Confirm target output: DSL workspace, static-site docs, ADRs, or API automation.
- For modeling syntax/examples, load
references/dsl-and-modeling.md.
- For server/API/ops workflows, load
references/server-and-automation.md.
- For visualization/export/community, load
references/visualization-and-ecosystem.md.
- Produce minimal reproducible snippets first, then optional advanced variants.
References
references/dsl-and-modeling.md
references/server-and-automation.md
references/visualization-and-ecosystem.md
Structurizr Architecture Skill
This skill standardizes architecture documentation workflows using Structurizr DSL.
Standard Task 1: Generate a Structurizr DSL workspace from requirements
Required inputs
- System name and short description.
- Primary personas/users.
- Core containers/components and responsibilities.
- External dependencies (databases, queues, third-party services).
- Output workspace path (for example:
architecture/workspace.dsl).
Command/snippet workflow
- Create output directory:
mkdir -p architecture
- Create the workspace DSL file:
cat > architecture/workspace.dsl <<'DSL'
workspace "<System Name>" "<System Description>" {
model {
user = person "<Persona>" "<Persona goal>"
softwareSystem = softwareSystem "<System Name>" "<System Description>" {
webapp = container "Web App" "User-facing frontend" "React"
api = container "API" "Business logic and orchestration" "Kotlin + Spring Boot"
db = container "Database" "System of record" "PostgreSQL"
webapp -> api "Calls"
api -> db "Reads/Writes"
}
user -> webapp "Uses"
}
views {
systemContext softwareSystem "SystemContext" {
include *
autoLayout
}
container softwareSystem "Containers" {
include *
autoLayout
}
theme default
}
}
DSL
- Validate syntax:
structurizr validate -workspace architecture/workspace.dsl
Expected output format
Validation checklist
Standard Task 2: Export static architecture site from DSL
Required inputs
- Path to Structurizr DSL workspace.
- Output directory for static site artifacts.
- Export format target (
static or plantuml/mermaid bundle as needed).
Command/snippet workflow
- Prepare output directory:
mkdir -p docs/architecture
- Export static site:
structurizr export \
-workspace architecture/workspace.dsl \
-format static \
-output docs/architecture
- (Optional) Generate additional diagram format:
structurizr export \
-workspace architecture/workspace.dsl \
-format plantuml \
-output docs/architecture/plantuml
- Verify generated files:
test -f docs/architecture/index.html
Expected output format
Validation checklist
Standard Task 3: Add deployment view for environment topology
Required inputs
- Existing workspace DSL path.
- Target environment name (for example
Production).
- Deployment nodes/infrastructure services.
- Container-to-node mapping requirements.
Command/snippet workflow
- Add deployment environment and nodes in the
model section:
production = deploymentEnvironment "Production" {
k8s = deploymentNode "Kubernetes Cluster" {
webappInstance = containerInstance webapp
apiInstance = containerInstance api
}
dbNode = deploymentNode "Managed PostgreSQL" {
dbInstance = containerInstance db
}
}
- Add deployment view under
views:
deployment softwareSystem production "ProductionDeployment" {
include *
autoLayout
}
- Re-validate and export:
structurizr validate -workspace architecture/workspace.dsl
structurizr export -workspace architecture/workspace.dsl -format static -output docs/architecture
Expected output format
Validation checklist