mermaid
Mermaid 图绘制助手。适用于用户明确要求绘制 Mermaid 图,或提到流程图、架构图、时序图、状态图、甘特图、ER 图、用户旅程图、类图,并希望直接输出 Mermaid 代码块时使用。会先判断最合适的图类型,再生成可渲染、结构清晰的 Mermaid 代码,并在必要时附上简短说明或迭代建议。不适用于追求高保真视觉设计稿的场景。
Best use case
mermaid is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Mermaid 图绘制助手。适用于用户明确要求绘制 Mermaid 图,或提到流程图、架构图、时序图、状态图、甘特图、ER 图、用户旅程图、类图,并希望直接输出 Mermaid 代码块时使用。会先判断最合适的图类型,再生成可渲染、结构清晰的 Mermaid 代码,并在必要时附上简短说明或迭代建议。不适用于追求高保真视觉设计稿的场景。
Teams using mermaid should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/mermaid/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How mermaid Compares
| Feature / Agent | mermaid | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Mermaid 图绘制助手。适用于用户明确要求绘制 Mermaid 图,或提到流程图、架构图、时序图、状态图、甘特图、ER 图、用户旅程图、类图,并希望直接输出 Mermaid 代码块时使用。会先判断最合适的图类型,再生成可渲染、结构清晰的 Mermaid 代码,并在必要时附上简短说明或迭代建议。不适用于追求高保真视觉设计稿的场景。
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# Mermaid
专门用于把结构、流程、关系和时间顺序整理成 Mermaid 图。
## 设计模式
本 skill 主要采用:
- **Generator**:根据用户需求或现有文本直接生成 Mermaid 图
- **Reviewer**:先判断该用哪种图,再决定是否需要补最小必要信息
## Gotchas
- 不要一上来就默认 `flowchart`,先判断是否更适合时序图、状态图、ER 图或甘特图
- 不要把段落原文整段塞进节点,节点文字要短、可扫描
- 不要为了“信息完整”把一张图画得过满;必要时提醒用户拆成两张图
- 不要输出明显无法渲染的 Mermaid 代码;交付前自查括号、连线、缩进和子图闭合
- 在 `flowchart` 中,如果节点文本里包含 `/plan-ceo-review` 这类带斜杠的字符串,不要写成 `E1[/plan-ceo-review<br/>CEO视角审视产品]`,要写成 `E1["/plan-ceo-review"<br/>CEO视角审视产品]`,否则容易触发语法错误
- 如果用户只说“画个 Mermaid 图”但材料很少,先基于现有信息做一个合理初稿,不要过度追问
- 如果需求本质上是“做一张好看的配图”而不是 Mermaid 语法图,明确说明边界
## 工作流
复制此清单并跟踪进度:
```text
绘图进度:
- [ ] 步骤 1:理解目标
- [ ] 步骤 2:选择图类型
- [ ] 步骤 3:抽取关键节点与关系
- [ ] 步骤 4:生成 Mermaid 代码
- [ ] 步骤 5:自查可读性与语法
- [ ] 步骤 6:交付并说明
```
### Step 1: 理解目标
先判断用户要表达的核心是什么:
- **流程推进**:某件事按步骤如何发生
- **结构分层**:系统、模块、组织或页面如何组成
- **交互时序**:角色或服务之间如何来回通信
- **状态变化**:对象如何在不同状态间切换
- **数据关系**:实体与字段之间如何关联
- **项目安排**:任务、时间、依赖如何分布
- **用户体验路径**:用户在一段旅程中的动作和感受
如果用户给的是文章、方案、PRD、会议纪要或口头描述,先提炼成“节点 + 关系 + 顺序/层级”。
### Step 2: 选择图类型
优先根据表达目标选择图类型。需要时读取 [references/diagram-selection.md](references/diagram-selection.md)。
快速判断:
- 讲步骤和分支:`flowchart`
- 讲服务/角色之间的调用顺序:`sequenceDiagram`
- 讲状态切换:`stateDiagram-v2`
- 讲数据库或业务实体关系:`erDiagram`
- 讲排期、里程碑、依赖:`gantt`
- 讲用户体验过程:`journey`
- 讲对象/模块的静态关系:`classDiagram`
- 讲 git 分支关系:`gitGraph`
如果用户指定了图类型,优先尊重;仅在明显不合适时再说明替代建议。
### Step 3: 抽取关键节点与关系
生成前先做轻量结构化:
- 列出 3 到 9 个关键节点
- 明确节点之间的主关系:顺序、包含、依赖、调用、状态转移、拥有
- 保留主线,删掉次要修饰语
- 给节点命名时优先短中文或稳定英文术语
如果一张图超过 12 个核心节点,优先压缩、分组,或建议拆图。
### Step 4: 生成 Mermaid 代码
默认直接输出 fenced code block,例如:
```mermaid
flowchart TD
A[开始] --> B[分析需求]
B --> C{选择图类型}
C -->|流程| D[输出 flowchart]
C -->|时序| E[输出 sequenceDiagram]
```
生成时遵循这些规则:
- 节点 ID 保持简短稳定,如 `A`、`svc_api`、`user`
- 节点文案面向阅读,ID 面向语法,不要混用
- 一张图只表达一个核心问题
- 合理使用子图、注释方向和分组,但不要堆技巧
- 如无特别要求,流程图默认用 `TD`
- 需要强调判断分支时,用菱形条件节点
- 需要强调系统边界时,用 `subgraph`
### Step 5: 自查可读性与语法
交付前至少自查这些点:
- 图类型声明是否正确
- 节点 ID 是否重复
- 连线语法是否闭合
- 文案是否过长
- `flowchart` 节点文本里若包含以 `/` 开头的路径或命令,是否已经用引号包住显示文本
- 是否有无意义的交叉线和重复节点
- 中文内容是否能在 Mermaid 中稳定显示
如果图较复杂,先保证“能渲染 + 看得懂”,再追求细节丰富。
### Step 6: 交付并说明
默认交付内容:
1. Mermaid 代码块
2. 一句说明图表达了什么
3. 如图较复杂,再给一句可选迭代方向
如果用户要求“只给 Mermaid 代码”,就不要附加多余解释。
## 输出要求
- 优先直接输出可复制的 Mermaid fenced code block
- 如用户给了现成文本,必要时先给 1 句“我将其整理为某某图”
- 不要输出大段 Mermaid 教程,除非用户明确要学语法
- 不确定时,先给一个能工作的简洁版本,再说明可继续细化
## 参考资料
- [references/diagram-selection.md](references/diagram-selection.md):图类型选择和常用骨架Related Skills
sync-skills
Skills 同步助手。将本地目录、GitHub 仓库或 skillsmp.com 页面的 skill 同步到用户选择的 AI 编码工具目录。使用 AskUserQuestion 选择目标(支持多选和自定义路径),展示同步计划后执行,同名 skill 会被覆盖。必须包含 ~/.agents/skills 作为同步目标。
skill-optimizer
优化和重构现有 skill。用于检查目标 skill 的触发描述、SKILL.md 工作流、确认门槛、渐进式披露,以及 references/scripts/assets 的组织方式。当用户提到“优化 skill”“检查 skill 质量”“改进某个 skill”“重构技能说明”,或直接说明要优化哪些方面时使用。默认先审查、再出计划、等待用户确认后再修改目标 skill。
qoder-wiki
Qoder 官方文档知识库,包含产品介绍、用户指南、功能配置、扩展能力、账户定价和故障排查。当用户询问 Qoder 相关问题(如安装、使用、功能、定价、快捷键、MCP、Skills、Quest Mode、Repo Wiki 等)时使用此 skill。
prompt-optimizer
Prompt 优化助手。适用于用户想优化提示词、改进 AI 指令、为特定任务设计更好的 prompt,或需要选择合适提示框架时使用。会根据任务场景匹配合适框架,必要时先追问关键信息,再输出更清晰、更可执行的提示词版本。
paper-interpreter
论文解读助手。适用于用户发送 arXiv 论文链接,并希望下载论文、解读论文、生成读书笔记、做论文拆解或输出详细报告时使用。会在工作目录创建论文文件夹、下载 PDF 与 TeX Source(如有)、生成中文 Markdown 报告。默认先交付初稿,不自动复查;如果用户明确同意,再安排后续复查。不适用于只要简短推荐语的情况。
opendataloader-pdf
PDF 数据提取工具。当用户提到"PDF 提取"、"PDF 转 Markdown"、"PDF 解析"、"提取 PDF 内容"、"PDF 转 JSON"、"RAG PDF"时使用。OpenDataLoader PDF 是目前基准测试第一的 PDF 解析器,支持本地模式(快速、确定)和混合 AI 模式(复杂表格、扫描件、公式),输出 Markdown、JSON(带边界框)、HTML。适用于需要从 PDF 提取结构化数据用于 RAG/LLM pipeline,或需要批量处理 PDF 文档的场景。
openclaw-wiki
OpenClaw 官方文档知识库。适用于用户询问 OpenClaw 相关问题,如安装、配置、Gateway、WhatsApp/Telegram/Discord 等渠道连接、Sessions、Tools、Skills、Pi Agent、CLI、故障排查等场景。默认先查本地文档,文档不足时再考虑联网补充。
openclaw-session-cleaner
OpenClaw session 清理助手。用于用户提到清理 OpenClaw sessions、删除旧 cron session、压缩或重建 sessions.json、排查 session 文件膨胀时使用。触发后优先检查 ~/.openclaw/agents/main/sessions/ 下的 session 文件数量和 sessions.json 大小,并按指令执行清理。
openclaw-ops
OpenClaw 运维助手。用于用户提到 OpenClaw、小龙虾、gateway、渠道连接、消息发送失败、服务不可达、日志排查、渠道或 Agent 管理时使用。优先执行状态检查与故障分流;涉及重启、修复、更新、配置变更等高影响操作时,先向用户说明再执行。
github-code-interpreter
GitHub 源码解读助手。适用于用户提供 GitHub 仓库链接,并希望解读源码、理解原理、分析架构、生成学习报告或快速上手文档时使用。会在 working 目录下生成源码解读和快速上手两份文档。默认先交付初稿,不自动复查;如果用户明确同意,再安排后续复查。不适用于仅克隆仓库或只要一句简介的场景。
copaw-ops
CoPaw 运维助手。用于用户提到 copaw 运维、服务无响应、渠道断连、MCP 失败、模型调用失败、cron 不执行、Docker 部署、重载、重启或重置恢复时使用。优先执行状态检查与故障分流;涉及重启、重载、重置、配置修改等高影响动作时,先向用户说明再执行。
claudian-installer
Claudian 安装助手。适用于用户想在 Obsidian 仓库中安装 Claudian 插件,或提到“Claudian”“Claude Code in Obsidian”“install Claudian plugin”时使用。会把插件文件复制到目标 vault 并引导用户启用插件。