From c4-skills
Review C4 architecture models for notation compliance, completeness, and common mistakes. Use when reviewing architecture PRs, auditing existing models, validating model quality, or before publishing architecture documentation.
How this skill is triggered — by the user, by Claude, or both
Slash command
/c4-skills:c4-reviewThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Review C4 architecture models for notation compliance, completeness, and common mistakes.
Review C4 architecture models for notation compliance, completeness, and common mistakes.
architecture/workspace.dslarchitecture/workspace.dsl)Run structurizr/structurizr to catch syntax errors before manual review:
podman run --rm \
-v "$(pwd)/architecture:/usr/local/structurizr" \
structurizr/structurizr validate -workspace workspace.dsl
If validation fails, fix syntax errors first. Do not proceed with review until the model parses cleanly.
Run the inspect subcommand to surface Checkstyle-style violations (missing descriptions, duplicate names, duplicate view keys, duplicate relationship descriptions, etc.):
podman run --rm \
-v "$(pwd)/architecture:/usr/local/structurizr" \
structurizr/structurizr inspect -workspace workspace.dsl -severity error,warning
The exit code equals the number of violations. Severity levels can be tuned per element via structurizr.inspection.* workspace properties (ignore, info, warning, error).
Check every element in the model against these criteria:
Check every relationship:
Suggest specific alternatives for vague labels:
| Vague | Ask | Better Example |
|---|---|---|
| "Uses" | What does it use it for? | "queries order history from" |
| "Connects to" | What data flows? | "sends email notifications via" |
| "Interacts with" | What's the interaction? | "submits search queries to" |
| "Communicates with" | What's communicated? | "publishes order events to" |
Check each view:
include * or explicitly includes all relevant elementsshape Personshape Cylinder!identifiers hierarchical is used (recommended for non-trivial models)api, database, not c1, c2)!adrs directive points to ADR directory (if ADRs exist)!docs directive points to documentation (if applicable)Produce a review summary with:
validateinspectWhen reviewing a C4 model for an Elixir/OTP system, check these additional items:
c4-model — C4 abstractions and diagram typesstructurizr-dsl — DSL syntax referencec4-deployment — Deployment modeling specificsProvides UI/UX resources: 50+ styles, color palettes, font pairings, guidelines, charts for web/mobile across React, Next.js, Vue, Svelte, Tailwind, React Native, Flutter. Aids planning, building, reviewing interfaces.
Fetches up-to-date documentation from Context7 for libraries and frameworks like React, Next.js, Prisma. Use for setup questions, API references, and code examples.
npx claudepluginhub jrjsmrtn/jrjsmrtn-skills --plugin c4-skills