关于 uml
用于生成 UML 图的 skill,指导用户编写 PlantUML 语法并以指定代码围栏输出,以便渲染图表。涵盖标准 UML 元素、关系和 mxgraph 图标示例。
主要功能
- 01使用 PlantUML 描述图表
- 02遵循图表起止标记与代码围栏
- 03定义 UML 元素及关系
- 04使用 skinparam 和颜色设置样式
- 05添加 mxgraph 图标
适用场景
- 01绘制类图和组件关系
- 02制作包含 AWS 或 Kubernetes 图标的架构图
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ markdown-viewer/ skills --skill uml安装后在 Claude Code 中输入/uml确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
examples/activity-diagram.mdclass-diagram.mdcommunication-diagram.mdcomponent-diagram.mdcomposite-structure-diagram.mddeployment-diagram.mdinteraction-overview-diagram.mdobject-diagram.mdpackage-diagram.mdprofile-diagram.mdsequence-diagram.mdstate-machine-diagram.mdswimlane-activity-diagram.mdsysml-bdd.mduse-case-diagram.mdstencils/alibaba_cloud.mdandroid.mdarchimate.mdarchimate3.mdarrows.mdatlassian.mdaws.mdaws2.mdaws3.mdaws3d.mdaws4.mdazure.mdbasic.mdbootstrap.mdbpmn.md详细介绍
UML 图表生成器
快速开始: 选择图表类型 → 编写 PlantUML 文本 → 定义元素和关系 → 用 ```plantuml 围栏包裹。
⚠️ 重要: 始终使用
```plantuml或```puml代码围栏。切勿使用```text——它不会渲染为图表。
关键规则
- 每个图表都以
@startuml开始,并以@enduml结束 - 使用标准 PlantUML 关键字:
class、interface、abstract、enum、actor、participant、component、node、database、package - 关系使用箭头语法:
-->、<|--、*--、o--、..>、..|> - 使用
skinparam设置全局样式和颜色 - 对单个元素使用
#color设置特定颜色 - 注释使用
note left of、note right of、note over,或独立的note "text" as N
UML 图表类型
| 类型 | 用途 | 关键语法 | 示例 |
|---|---|---|---|
| 类图 | 类结构和关系 | class、interface、<|-- | class-diagram.md |
| 时序图 | 随时间变化的消息交互 | participant、->、--> | sequence-diagram.md |
| 活动图 | 工作流和流程 | start、:action;、if/else | activity-diagram.md |
| 泳道活动图 | 包含泳道的多角色活动 | |Lane|、:action; | swimlane-activity-diagram.md |
| 状态机图 | 对象生命周期状态 | state、[*] --> | state-machine-diagram.md |
| 组件图 | 系统组件组织结构 | component、[name]、interface | component-diagram.md |
| 用例图 | 用户与系统的交互 | actor、usecase、(name) | use-case-diagram.md |
| 部署图 | 物理部署架构 | node、artifact、database | deployment-diagram.md |
| 对象图 | 运行时对象快照 | object "name" as id | object-diagram.md |
| 包图 | 模块组织结构 | package "name" | package-diagram.md |
| 通信图 | 对象协作 | 使用时序语法的编号消息 | communication-diagram.md |
| 复合结构图 | 内部类结构 | 带嵌套 port 的 component | composite-structure-diagram.md |
| 交互概览图 | 活动图与时序图的组合 | group、ref over | interaction-overview-diagram.md |
| 配置文件图 | UML 扩展机制 | <<stereotype>> 标签 | profile-diagram.md |
Mxgraph 图形库图标
draw-uml 支持通过 mxgraph.* 语法使用 9500 多个 mxgraph 图形库图标(AWS、Azure、Cisco、Kubernetes 等)。系统会自动应用默认颜色——无需指定 fillColor 或 strokeColor。
完整图形库参考: 请参阅 stencils/README.md。
语法
mxgraph.<namespace>.<icon> "Label" as <alias>
mxgraph.<namespace>.<icon> "Label" as <alias> #color
mxgraph.<namespace>.<icon> <alias>
mxgraph.<namespace>.<icon>— 图形库形状键(例如mxgraph.aws4.lambda、mxgraph.kubernetes.pod)"Label"— 显示文本(包含空格时加引号,单个单词时不加引号)as <alias>— 用于关系的标识符#color— 可选的覆盖颜色(例如#FF6600、#LightBlue)
示例
@startuml
' Simple icon declaration
mxgraph.aws4.lambda "Lambda\nFunction" as fn
mxgraph.aws4.api_gateway "API GW" as gw
mxgraph.aws4.dynamodb "DynamoDB" as db
gw --> fn
fn --> db
@enduml
@startuml
' Kubernetes architecture with icons
mxgraph.kubernetes.ing "Ingress" as ing
mxgraph.kubernetes.svc "Service" as svc
mxgraph.kubernetes.pod "Pod" as pod
mxgraph.kubernetes.deploy "Deployment" as deploy
ing --> svc
svc --> pod
deploy --> pod
@enduml
@startuml
' Mixing standard UML with stencil icons
node "Cloud" {
mxgraph.aws4.ec2 "EC2" as ec2
mxgraph.aws4.rds "RDS" as rds
}
database "Legacy DB" as legacy
ec2 --> rds
rds --> legacy
@enduml
评论
支持 Markdown