common-best-practices
Enforce SOLID principles, guard-clause style, function size limits, and intention-revealing naming across all languages. Use when refactoring for readability,…
Draw architecture diagrams as editable draw.io files with a fixed house style, C4 levels, and evidence-tagged shapes. Use when producing a system context, container, deployment, data flow, sequence, or state diagram, or redrawing an ASCII or Mermaid one.
$ npx -y skills add hoangnguyen0403/agent-skills-standard --skill common-architecture-diagramming --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/common-architecture-diagrammingContext preview
The summary Claude sees to decide when to auto-load this skill.
Draw architecture diagrams as editable draw.io files with a fixed house style, C4 levels, and evidence-tagged shapes. Use when producing a system context, container, deployment, data flow, sequence, or state diagram, or redrawing an ASCII or Mermaid one.
name: common-architecture-diagramming
description: Draw architecture diagrams as editable draw.io files with a fixed house style, C4 levels, and evidence-tagged shapes. Use when producing a system context, container, deployment, data flow, sequence, or state diagram, or redrawing an ASCII or Mermaid one.
metadata:
triggers:
files:
- "ARCHITECTURE.md"
- "**/*.drawio"
- "**/*.mermaid"
- "docs/architecture/**"
keywords:
- diagram
- c4
- drawio
- mermaid
- erd
- entity relationship
- schema diagram
- aws
- architecture diagram
- solution architecture
- system context
- deployment diagramNever hand-write mxGraph XML. Write a spec; the scripts own every visual decision, so diagrams stay identical across authors, repositories, and sessions.
1. Write `spec.json` — schema in [diagram-spec.md](references/diagram-spec.md). For an ERD, generate it: `python3 scripts/schema_to_spec.py db/schema.sql --title "<System> — ERD" -o spec.json` 2. `python3 scripts/validate_spec.py spec.json` 3. `python3 scripts/render_drawio.py spec.json -o docs/architecture/<slug>.drawio --strict` (exit 2 = a layout finding; change the spec, per [layout-rules.md](references/layout-rules.md)) 4. Export the image: a draw.io MCP tool if the session has one, else `python3 scripts/export_drawio.py docs/architecture/<slug>.drawio -f png -o docs/architecture/<slug>.png`, else ship the `.drawio` and say the image was not exported. See [export paths](references/mermaid-fallback.md).
Commit the `.drawio` as the source of truth; the image is a copy for a deck.
marked UNVERIFIED — leave the flag showing rather than asserting a guess.
`constraint` says why it exists; never invent either.
vendor is a `cloud:*` kind with the service named in `sublabel`. No Azure logos exist in the bundle, so Azure is always `cloud:*`.
| Thought | Reality | |---------|---------| | "It is one box, I will write the XML" | The renderer owns style, legend, and title block. Use it. | | "Close enough, I will guess this service" | Guesses ship as facts. Omit the evidence and let it render UNVERIFIED. | | "Managers want the whole system on one page" | Past 12 nodes they stop reading. Split it. |
The portable SDLC standards layer for AI coding agents. Sync once, then work in your own runtime.
Repo: hoangnguyen0403/agent-skills-standard
Enforce SOLID principles, guard-clause style, function size limits, and intention-revealing naming across all languages. Use when refactoring for readability,…
Standardize BRD and BRD-lite discovery for business goals, stakeholder impact, current-to-future state, and measurable value outcomes. Use when creating BRD,…
Conduct high-quality, persona-driven code reviews. Use when reviewing PRs, critiquing code quality, or analyzing changes for team feedback.
Maximize context window efficiency, reduce latency, and prevent lost-in-middle issues through strategic masking and compaction. Use when token budgets are…
Standardize dynamic application security testing for backend APIs, frontend web apps, and mobile clients. Covers ZAP, Nuclei, Nikto, sqlmap, ffuf, browser…
Troubleshoot systematically using the Scientific Method. Use when debugging crashes, tracing errors, diagnosing unexpected behavior, or investigating…