skills/diagram-gen/SKILL.md
根据用户描述生成各种类型的图表(时序图、流程图、类图、状态图等),使用 Mermaid 语法,支持保存为文件
npx skillsauth add snailuu/skill diagram-genInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
必须直接使用 Bash 工具执行 shell 命令,绝对不要使用 Task 工具来执行命令。
当用户输入包含以下关键词时触发:
用于展示对象之间的交互顺序。
sequenceDiagram
participant A as 用户
participant B as 系统
A->>B: 请求
B-->>A: 响应
用于展示流程和决策。
flowchart TD
A[开始] --> B{判断}
B -->|是| C[执行]
B -->|否| D[结束]
C --> D
用于展示类的结构和关系。
classDiagram
class Animal {
+String name
+int age
+makeSound()
}
class Dog {
+bark()
}
Animal <|-- Dog
用于展示状态转换。
stateDiagram-v2
[*] --> 待处理
待处理 --> 处理中
处理中 --> 已完成
处理中 --> 失败
已完成 --> [*]
失败 --> [*]
用于展示数据库实体关系。
erDiagram
USER ||--o{ ORDER : places
ORDER ||--|{ ORDER_ITEM : contains
PRODUCT ||--o{ ORDER_ITEM : "ordered in"
用于展示项目进度。
gantt
title 项目计划
dateFormat YYYY-MM-DD
section 阶段1
任务1 :a1, 2024-01-01, 30d
任务2 :after a1, 20d
用于展示 Git 分支历史。
gitGraph
commit
branch develop
checkout develop
commit
checkout main
merge develop
根据用户描述,生成对应的 Mermaid 语法代码。
时序图关键语法:
participant A as 名称 - 定义参与者A->>B: 消息 - 同步消息A-->>B: 消息 - 异步响应alt/else/end - 条件分支loop/end - 循环par/and/end - 并行流程图关键语法:
A[矩形] - 普通节点B{菱形} - 判断节点C([圆角]) - 圆角节点D[(数据库)] - 数据库节点A --> B - 箭头连接A -->|文字| B - 带文字的箭头类图关键语法:
+ public, - private, # protected<|-- 继承, *-- 组合, o-- 聚合..> 依赖, ..|> 实现直接输出 Mermaid 代码块:
```mermaid
sequenceDiagram
participant 用户
participant 系统
用户->>系统: 登录请求
系统-->>用户: 返回 token
```
如果用户需要保存,询问文件名并保存为 .md 文件:
# 保存到当前目录
echo '```mermaid\n...\n```' > diagram.md
告知用户如何查看和使用生成的图表:
用户输入:
生成一个用户登录的时序图,包括前端、后端API、数据库
生成:
```mermaid
sequenceDiagram
participant 前端
participant API
participant 数据库
前端->>API: POST /login {username, password}
API->>数据库: 查询用户信息
数据库-->>API: 返回用户数据
alt 认证成功
API->>API: 生成 JWT token
API-->>前端: 返回 {token, user}
前端->>前端: 保存 token 到 localStorage
前端-->>前端: 跳转到首页
else 认证失败
API-->>前端: 返回 {error: "用户名或密码错误"}
前端-->>前端: 显示错误提示
end
```
用户输入:
画一个订单处理的流程图
生成:
```mermaid
flowchart TD
A[接收订单] --> B{库存充足?}
B -->|是| C[扣减库存]
B -->|否| D[通知用户缺货]
C --> E{支付成功?}
E -->|是| F[生成发货单]
E -->|否| G[恢复库存]
F --> H[发货]
H --> I[订单完成]
D --> J[订单取消]
G --> J
```
可以添加样式定义:
flowchart TD
A[开始]:::startClass --> B[处理]
classDef startClass fill:#f9f,stroke:#333,stroke-width:4px
可以使用子图组织复杂流程:
flowchart TD
subgraph 前端
A[页面] --> B[组件]
end
subgraph 后端
C[API] --> D[数据库]
end
B --> C
可以添加注释说明:
sequenceDiagram
Note over 用户,系统: 这是一个注释
用户->>系统: 请求
documentation
Use when 需要根据 git 历史生成或更新 CHANGELOG.md,尤其在发版前整理 Unreleased、版本区间、tag diff 或 Keep a Changelog 条目时。
development
Semantic Design System Skill for Google Stitch. Generates agent-friendly DESIGN.md files that enforce premium, anti-generic UI standards — strict typography, calibrated color, asymmetric layouts, perpetual micro-motion, and hardware-accelerated performance.
development
Upgrades existing websites and apps to premium quality. Audits current design, identifies generic AI patterns, and applies high-end design standards without breaking functionality. Works with any CSS framework or vanilla CSS.
development
Overrides default LLM truncation behavior. Enforces complete code generation, bans placeholder patterns, and handles token-limit splits cleanly. Apply to any task requiring exhaustive, unabridged output.