원클릭으로
mermaid
Rules and validation for Mermaid diagrams. Use when creating or editing Mermaid diagrams in documentation.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Rules and validation for Mermaid diagrams. Use when creating or editing Mermaid diagrams in documentation.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Multi-model supervisor that discovers skills, picks models, and composes runs. Use when executing multi-step plans across multiple models.
Agent execution engine that composes prompts, routes models, and writes run artifacts. Use when launching subagent runs.
Multi-model supervisor that discovers skills, picks models, and composes runs. Use when executing multi-step plans across multiple models.
Agent execution engine that composes prompts, routes models, and writes run artifacts. Use when launching subagent runs.
Verifies implementation aligns with stated requirements and acceptance criteria. Use before implementation (to clarify scope) and before final sign-off (to detect gaps).
Breaks the next task from a plan into an implementable task file. Use when decomposing a multi-step plan into ordered work units.
| name | mermaid |
| description | Rules and validation for Mermaid diagrams. Use when creating or editing Mermaid diagrams in documentation. |
| user-invocable | false |
Always follow these rules when writing Mermaid diagrams. After writing or editing any Mermaid block, validate with the co-located script: scripts/check-mermaid.sh <file>.
Any label with (), [], <>, ", ,, <br/>, or emoji must be wrapped in ["..."]:
%% ✅ GOOD — quoted labels
A["Turn 1: user"] --> B["blocks list"]
C["UI Panels (Thread, Tool)"]
%% ❌ BAD — unquoted special chars cause parse errors
A[Turn 1: user<br/>"Write a story"] --> B[blocks[]]
C[UI Panels (Thread, Tool)]
Edge labels with (), <>, <br/>, or [] must be quoted with |"..."|:
%% ✅ GOOD
A -->|"StreamEvents (Delta, Block)"| B
A -->|"JSON DTOs"| B
%% ❌ BAD — parentheses in edge labels
A -->|StreamEvents<br/>(Delta, Block)| B
A -->|JSON (DTOs)| B
<br/> inside labels — use multiline with \n or separate lines%% ✅ GOOD — no <br/>
A["Turn 1\nuser message"]
%% ❌ BAD — <br/> inside labels often breaks
A["Turn 1<br/>user message"]
Note: <br/> works in some Mermaid versions but not all. \n is safer.
[] inside node text%% ✅ GOOD
Store -->|"blocks list"| UI["Chat UI"]
%% ❌ BAD — nested [] conflicts with node shape syntax
Store -->|blocks[]| UI[Chat UI]
%% ✅ GOOD
A["Step complete ✓"] --> B
%% ❌ BAD — emoji in unquoted context
A[Step ✓] --> B
Hardcoded style / classDef colors override Mermaid's theme engine and break when switching between light and dark mode. Let the built-in dark / default themes handle node colors.
%% ✅ GOOD — no hardcoded colors, theme handles it
A[Service] --> B[Database]
%% ❌ BAD — hardcoded fill/color overrides theme
style A fill:#2d7d2d,color:#fff
classDef foo fill:#1a5276,color:#fff
For sequence diagram rect grouping, use near-transparent fills so they work in both themes:
rect rgba(128, 128, 128, 0.08)
Note over A,B: Phase label
end
Sequence diagram statements must end with a newline, not a semicolon followed by more statements on the same line:
%% ✅ GOOD
Note over A: First
Note over A: Second
%% ❌ BAD — multiple statements on one line with semicolons
Note over A: First; isLoading=false
| Context | Needs quotes? | Example |
|---|---|---|
| Simple text only | No | A[Hello World] |
Contains () | Yes | A["Config (optional)"] |
Contains [] | Yes | A["items list"] (avoid [] entirely) |
Contains <br/> | Avoid | Use \n instead |
| Contains emoji | Yes | A["Done ✓"] |
Contains " | Escape | A["Say 'hello'"] |
| Edge with specials | Yes | A -->|"data (raw)"| B |
The validation script lives at scripts/check-mermaid.sh within this skill directory. It extracts each ```mermaid block, validates it with mmdc, and reports file + line number for failures.
# Validate specific file
scripts/check-mermaid.sh path/to/file.md
# Validate all .md files recursively from cwd
scripts/check-mermaid.sh
# Validate a directory
scripts/check-mermaid.sh docs/features/