SuperAPI AI 工具集

bpmn

通用与其它

查看项目

更新于 10-15 17:17

技能介绍

用途:帮助理解已有 .bpmn 文件并用自然语言解释,以及生成或修改可在 Camunda Modeler、bpmn.io、Cawemo 等建模器中正常打开、布局整洁的 BPMN 2.0 图。核心思路是将 .bpmn 文件看作两层:语义层(bpmn:process,含任务、网关、事件、顺序流)和图形交换层 DI(bpmndi:BPMNDiagram,含坐标与连线)。不要手写 DI,只改语义,由 layout 命令负责生成和同步布局。

主要能力由 scripts/bpmn-tool.mjs 提供:summarize 输出结构化流程大纲(可加 --json);layout 把图同步到语义修改,默认非破坏性,已有 DI 时保留原布局并修剪/补充形状,无 DI 时生成新布局,--rebuild 才会完全重排;validate 检查能否解析、每个流元素是否有形状、形状是否重叠;lint 检查控制流缺陷,如网关分叉/汇聚不匹配导致的死锁或重复执行、令牌卡住、不可达节点、死端、缺少开始/结束、隐式分叉、事件方向错误、边界事件宿主非法、泳道节点未分配、池内消息流等;diff 比较两图差异;find 按名称或类型查找元素。

使用方式:先安装依赖 npm install --prefix "<SKILL_DIR>",再调用 node "<SKILL_DIR>/scripts/bpmn-tool.mjs" <命令>。新建流程时先手工编写仅含语义、不含 bpmndi 块的文档,再依次运行 layout、validate、lint;编辑已有文件时先 summarize 理解现状,再修改语义。建模时应先明确触发条件、参与者、正常路径、决策点、异常分支和结束状态;任务用动宾短语命名,网关用问题命名,流出连线标注答案。

限制:分组(group)不会自动放置;池、泳道、数据对象、注释的自动布局为近似结果,可能需在建模器中微调;脚本需两个 npm 包,缺失时应先安装。validate 与 lint 均通过前不应宣称图已完成。