一键导入
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/