业务流程图 × 系统架构图,一句话出图
版本: 1.1.4
对你的Agent说:
"画个政务审批泳道图"
一句话生成Draw.io XML — 横向/竖向泳道、分层架构,直接打开就能编辑,配色专业美观。
泳道图架构图一句话生成 是一款智能图表生成器,一句话就能生成专业的 Draw.io XML 图表。
泳道图(Swimlane):支持横向泳道和竖向泳道两种方向,多角色/多部门清晰展示跨角色业务流转,政务场景友好
架构图(Architecture):分层架构(用户层→应用层→服务层→数据层→基础设施层),支持微服务/API/数据库等组件
双格式输出:
.drawio):默认格式,直接在 diagrams.net 打开编辑PROCESSON_API_KEY,自动调用 ProcessOn API 生成更精美的云端图表自然语言交互:无需了解图表语法,用日常语言描述即可
方向适用场景触发关键词横向泳道(默认)角色少、流程步骤多、强调时序推进默认,或"横向""水平"竖向泳道角色多、流程步骤少、强调角色分工对比"竖向""纵向""竖版""垂直"
泳道方向:横向泳道,每个泳道代表一个角色/部门/系统
排列顺序:泳道从上到下排列,角色名在左侧标签区
流程节点:节点在对应泳道内,用箭头连接
起止标识:
泳道方向:竖向泳道,每个泳道代表一个角色/部门/系统
排列顺序:泳道从左到右排列,角色名在顶部标签区
流程节点:节点在对应泳道内,从上到下流转
起止标识:
适用场景:
竖向泳道的 Draw.io XML 关键差异:
xml
<!-- 竖向泳道:使用 horizontal=0 或在 style 中指定方向 -->
<mxCell id="swimlane1" value="角色名称"
style="swimlane;horizontal=0;fillColor=#f5f5f5;strokeColor=#666666;fontSize=14;fontStyle=1;startSize=40;"
vertex="1" parent="1">
<mxGeometry x="0" y="0" width="300" height="800" as="geometry" />
</mxCell>
关键参数:
horizontal=0:泳道竖向排列(角色标签在顶部)startSize=40:顶部标签区高度节点类型形状填充色边框色开始/结束圆形#82b366 / #d9574a#333333活动节点圆角矩形#dae8fc#6c8ebf判断节点菱形#fff2cc#d6b656子流程双边框矩形#f8cecc#b85450数据/文档波浪底矩形#f5f5f5#666666
路径类型线型颜色标注主流程实线箭头黑色 #333333无判断"是"实线箭头绿色 #82b366是判断"否"虚线箭头红色 #d9574a否跨泳道连接(横向泳道)垂直箭头黑色 #333333交互说明跨泳道连接(竖向泳道)水平箭头黑色 #333333交互说明
从下到上依次为:
层级形状填充色边框色用户层圆角矩形#d5e8d4#82b366应用层圆角矩形#dae8fc#6c8ebf服务层圆角矩形#fff2cc#d6b656数据层圆柱体形状#e1d5e7#9673a6基础设施层矩形#f5f5f5#666666
shape=cylinder3)关系类型线型说明同步调用实线箭头标准服务调用异步消息虚线箭头消息队列场景数据流实线+标注带数据说明依赖关系箭头A→B 表示 A 依赖 B
生成 .drawio 文件,可在 diagrams.net 直接打开编辑,无需任何账号。
xml
<?xml version="1.0" encoding="UTF-8"?>
<mxGraphModel dx="900" dy="900" grid="1" gridSize="10" guides="1" ...>
<root>
<mxCell id="0" />
<mxCell id="1" parent="0" />
<!-- 泳道和节点定义 -->
</root>
</mxGraphModel>
如用户配置了 ProcessOn API Key(环境变量 PROCESSON_API_KEY),则优先调用 ProcessOn API:
POST https://open.pingcode.com/v1/graph 上传并生成图片若未配置 ProcessOn API Key,默认输出 Draw.io XML 格式。
从用户描述中提取:
泳道图解析逻辑:
text
输入描述 → 识别角色 → 梳理流程 → 标记判断 → 确定交互
架构图解析逻辑:
text
输入描述 → 识别层次 → 梳理组件 → 确定关系 → 标注流向
必须遵循的 XML 规范:
swimlane 关键字标识{工作目录}/{用户指定名称或自动生成名称}.drawioxml
<mxCell id="node1" value="开始" style="ellipse;fillColor=#82b366;strokeColor=#333333;fontColor=#000000;" vertex="1" parent="1">
<mxGeometry x="100" y="100" width="80" height="80" as="geometry" />
</mxCell>
横向泳道(默认):
xml
<mxCell id="swimlane1" value="角色名称" style="swimlane;fillColor=#f5f5f5;strokeColor=#666666;fontSize=14;fontStyle=1;" vertex="1" parent="1">
<mxGeometry x="0" y="0" width="400" height="300" as="geometry" />
</mxCell>
竖向泳道:
xml
<mxCell id="swimlane1" value="角色名称" style="swimlane;horizontal=0;fillColor=#f5f5f5;strokeColor=#666666;fontSize=14;fontStyle=1;startSize=40;" vertex="1" parent="1">
<mxGeometry x="0" y="0" width="300" height="800" as="geometry" />
</mxCell>
xml
<mxCell id="edge1" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;arrowColor=#333333;" edge="1" parent="1" source="node1" target="node2">
<mxGeometry relative="1" as="geometry" />
</mxCell>
用户只需用自然语言描述流程或架构,例如:
生成完成后告知:
泳道图架构图一句话生成/SKILL.md泳道图架构图一句话生成/references/swimlane-template.xml泳道图架构图一句话生成/references/arch-template.xml用户输入:
画一个电商订单处理流程图,包含用户、订单系统、库存系统、支付系统4个角色,从下单到发货的完整流程
生成步骤:
识别角色:用户、订单系统、库存系统、支付系统
识别流程:
判断分支:支付成功/失败
泳道方向:横向(4个角色,流程步骤适中)
生成输出:
xml
<?xml version="1.0" encoding="UTF-8"?>
<mxGraphModel dx="1200" dy="800" grid="1" gridSize="10" guides="1" tools="ext">
<root>
<mxCell id="0" />
<mxCell id="1" parent="0" />
<!-- 泳道1:用户 -->
<mxCell id="swimlane1" value="用户" style="swimlane;fillColor=#f5f5f5;strokeColor=#666666;fontSize=14;fontStyle=1;" vertex="1" parent="1">
<mxGeometry x="0" y="0" width="300" height="600" as="geometry" />
</mxCell>
<!-- 开始节点 -->
<mxCell id="node1" value="开始下单" style="ellipse;fillColor=#82b366;strokeColor=#333333;fontColor=#000000;" vertex="1" parent="swimlane1">
<mxGeometry x="100" y="50" width="100" height="60" as="geometry" />
</mxCell>
<!-- 订单系统泳道 -->
<mxCell id="swimlane2" value="订单系统" style="swimlane;fillColor=#f5f5f5;strokeColor=#666666;fontSize=14;fontStyle=1;" vertex="1" parent="1">
<mxGeometry x="300" y="0" width="300" height="600" as="geometry" />
</mxCell>
<!-- 库存系统泳道 -->
<mxCell id="swimlane3" value="库存系统" style="swimlane;fillColor=#f5f5f5;strokeColor=#666666;fontSize=14;fontStyle=1;" vertex="1" parent="1">
<mxGeometry x="600" y="0" width="300" height="600" as="geometry" />
</mxCell>
<!-- 支付系统泳道 -->
<mxCell id="swimlane4" value="支付系统" style="swimlane;fillColor=#f5f5f5;strokeColor=#666666;fontSize=14;fontStyle=1;" vertex="1" parent="1">
<mxGeometry x="900" y="0" width="300" height="600" as="geometry" />
</mxCell>
<!-- 结束节点 -->
<mxCell id="node8" value="收到货物" style="ellipse;fillColor=#d9574a;strokeColor=#333333;fontColor=#000000;" vertex="1" parent="swimlane1">
<mxGeometry x="100" y="500" width="100" height="60" as="geometry" />
</mxCell>
</root>
</mxGraphModel>
保存路径: 电商订单处理流程.drawio
用户提示:
泳道图已生成!保存在
电商订单处理流程.drawio,可在 diagrams.net 打开编辑。如需调整角色、流程步骤或添加判断分支,请告诉我。