关于 bpmn
bpmn 是用于生成业务流程与集成图的技能,面向需要以 PlantUML 描述流程的用户。它提供 BPMN、企业集成模式和价值流映射符号及图类型指引。
主要功能
- 01使用 BPMN 事件、网关和任务标记
- 02支持企业集成模式图标
- 03支持价值流映射符号
- 04提供多种流程图类型示例
适用场景
- 01绘制订单处理流程
- 02整理多级审批工作流
- 03展示消息路由与转换
- 04描述微服务编排或事件流
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ markdown-viewer/ skills --skill bpmn安装后在 Claude Code 中输入/bpmn确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
examples/approval-workflow.mdcustomer-service.mdeip-messaging.mdetl-pipeline.mdevent-driven.mdmicroservice-orchestration.mdorder-processing.mdvalue-stream.md详细介绍
业务流程与集成图生成器
**快速入门:**选择图表类型 → 声明事件/网关/任务的模板图标 → 分组到池/泳道中 → 使用箭头语法连接 → 用 ```plantuml 围栏包裹。
⚠️ **重要:**始终使用
```plantuml或```puml代码围栏。切勿使用```text——它不会渲染为图表。
关键规则
- 每个图表以
@startuml开始,并以@enduml结束 - 流程图使用
left to right direction(从开始到结束按从左到右的顺序阅读) - BPMN 事件、网关和任务标记使用
mxgraph.bpmn.* - 企业集成模式图标使用
mxgraph.eip.* - 价值流映射符号使用
mxgraph.lean_mapping.* - 默认颜色会自动应用——无需指定
fillColor或strokeColor - BPMN 池和泳道使用
rectangle "Pool" { ... } - 顺序流使用
-->,消息流使用..>(虚线)
**完整的模板参考:**请参阅 stencils/README.md,了解 9500 多种可用图标。
Mxgraph 模板语法
mxgraph.<library>.<icon> "Label" as <alias>
BPMN 模板系列(mxgraph.bpmn.*)
事件——表示流程触发和结果的圆形:
| 图标 | 含义 |
|---|---|
mxgraph.bpmn.event.start | 开始事件 |
mxgraph.bpmn.event.end | 结束事件 |
mxgraph.bpmn.event.terminateEnd | 终止结束事件 |
mxgraph.bpmn.event.timerStart | 定时器开始事件 |
mxgraph.bpmn.event.timerCatching | 中间定时器事件 |
mxgraph.bpmn.event.messageStart | 消息开始事件 |
mxgraph.bpmn.event.messageCatching | 消息捕获事件 |
mxgraph.bpmn.event.messageEnd | 消息结束事件 |
mxgraph.bpmn.event.errorEnd | 错误结束事件 |
mxgraph.bpmn.event.errorBound | 错误边界事件 |
mxgraph.bpmn.event.signalStart | 信号开始事件 |
mxgraph.bpmn.event.signalEnd | 信号结束事件 |
网关——表示分支/合并的菱形:
| 图标 | 含义 |
|---|---|
mxgraph.bpmn.gateway2.exclusive | 排他网关(XOR) |
mxgraph.bpmn.gateway2.parallel | 并行网关(AND) |
mxgraph.bpmn.gateway2.inclusive | 包容网关(OR) |
mxgraph.bpmn.gateway2.complex | 复杂网关 |
任务——任务使用 rectangle,带类型的任务使用模板标记:
| 图标 | 含义 |
|---|---|
mxgraph.bpmn.user_task | 用户任务 |
mxgraph.bpmn.service_task | 服务任务 |
mxgraph.bpmn.script_task | 脚本任务 |
mxgraph.bpmn.manual_task | 手动任务 |
mxgraph.bpmn.business_rule_task | 业务规则任务 |
数据——类似文档的形状:
| 图标 | 含义 |
|---|---|
mxgraph.bpmn.data2.dataObject | 数据对象 |
mxgraph.bpmn.data2.dataInput | 数据输入 |
mxgraph.bpmn.data2.dataOutput | 数据输出 |
EIP 模板系列(mxgraph.eip.*)
| 图标 | 含义 |
|---|---|
mxgraph.eip.messageChannel | 消息通道 |
mxgraph.eip.deadLetterChannel | 死信通道 |
mxgraph.eip.content_based_router | 基于内容的路由器 |
mxgraph.eip.message_filter | 消息过滤器 |
mxgraph.eip.splitter | 拆分器 |
mxgraph.eip.aggregator | 聚合器 |
mxgraph.eip.message_translator | 消息转换器 |
mxgraph.eip.content_enricher | 内容增强器 |
mxgraph.eip.messaging_gateway | 消息传递网关 |
mxgraph.eip.channel_adapter | 通道适配器 |
mxgraph.eip.messaging_bridge | 消息传递桥接器 |
mxgraph.eip.recipient_list | 接收方列表 |
mxgraph.eip.wire_tap | 线缆监听器 |
mxgraph.eip.event_driven_consumer | 事件驱动的使用者 |
mxgraph.eip.competing_consumers | 竞争消费者 |
mxgraph.eip.process_manager | 流程管理器 |
Lean Mapping 模板系列(mxgraph.lean_mapping.*)
| 图标 | 含义 |
|---|---|
mxgraph.lean_mapping.outside_sources | 供应商 / 客户 |
mxgraph.lean_mapping.manufacturing_process | 流程步骤 |
mxgraph.lean_mapping.supermarket | 超市(库存缓冲区) |
mxgraph.lean_mapping.fifo_lane | FIFO 通道 |
mxgraph.lean_mapping.production_kanban | 生产看板 |
mxgraph.lean_mapping.withdrawal_kanban | 取货看板 |
mxgraph.lean_mapping.signal_kanban | 信号看板 |
mxgraph.lean_mapping.truck_shipment | 卡车运输 |
mxgraph.lean_mapping.operator | 操作员 |
mxgraph.lean_mapping.inventory_box | 库存 |
mxgraph.lean_mapping.kaizen_lightening_burst | Kaizen 爆发符号 |
mxgraph.lean_mapping.mrp_erp | MRP / ERP 系统 |
mxgraph.lean_mapping.warehouse | 仓库 |
mxgraph.lean_mapping.push_arrow | 推式箭头 |
mxgraph.lean_mapping.timeline2 | 时间线 |
连接类型
| 语法 | 含义 | 使用场景 |
|---|---|---|
A --> B | 实线箭头 | 顺序流(任务→任务) |
A ..> B | 虚线箭头 | 消息流(跨泳池)/ 异步触发 |
A --> B : "label" | 带标签的实线 | 条件流(网关分支) |
A ..> B : "label" | 带标签的虚线 | 命名消息 / 信号 |
快速示例
@startuml
left to right direction
mxgraph.bpmn.event.start "Start" as start
rectangle "Review\nRequest" as review
mxgraph.bpmn.gateway2.exclusive "Approved?" as gw
rectangle "Process\nOrder" as process
rectangle "Notify\nRejection" as reject
mxgraph.bpmn.event.end "End" as end_ok
mxgraph.bpmn.event.end "End" as end_fail
start --> review
review --> gw
gw --> process : "Yes"
gw --> reject : "No"
process --> end_ok
reject --> end_fail
@enduml
图表类型
| 类型 | 用途 | 关键模板 | 示例 |
|---|---|---|---|
| 订单处理 | 电子商务 / 订单履行 | mxgraph.bpmn.event.*、mxgraph.bpmn.gateway2.* | order-processing.md |
| 审批工作流 | 多级审批 | mxgraph.bpmn.event.*、mxgraph.bpmn.gateway2.* | approval-workflow.md |
| EIP 消息传递 | 消息路由与转换 | mxgraph.eip.* | eip-messaging.md |
| ETL 流水线 | 数据提取与加载 | mxgraph.bpmn.event.*、mxgraph.eip.* | etl-pipeline.md |
| 价值流 | 精益制造流程 | mxgraph.lean_mapping.* | value-stream.md |
| 微服务编排 | 服务协同 | mxgraph.bpmn.event.*、mxgraph.eip.* | microservice-orchestration.md |
| 事件驱动架构 | 发布 / 订阅事件流 | mxgraph.bpmn.event.*、mxgraph.eip.* | event-driven.md |
| 客户服务 | 支持工单生命周期 | mxgraph.bpmn.event.*、mxgraph.bpmn.gateway2.* | customer-service.md |
评论
支持 Markdown