swimlane-arch

业务流程图×系统架构图,一句话出图。支持横向泳道、竖向泳道和分层架构图,输出Draw.io XML格式直接可编辑。 触发关键词:泳道图、架构图、流程图、swimlane、一句话出图、画个图、业务流程、系统架构

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "swimlane-arch" with this command: npx skills add leslietong2046-ship-it/swimlane-arch-skill

泳道图架构图一句话生成

业务流程图 × 系统架构图,一句话出图

版本: 1.1.4


⚡ 30秒体验

对你的Agent说:

"画个政务审批泳道图"

一句话生成Draw.io XML — 横向/竖向泳道、分层架构,直接打开就能编辑,配色专业美观。

技能定位

泳道图架构图一句话生成 是一款智能图表生成器,一句话就能生成专业的 Draw.io XML 图表。

核心能力

  • 泳道图(Swimlane):支持横向泳道和竖向泳道两种方向,多角色/多部门清晰展示跨角色业务流转,政务场景友好
  • 架构图(Architecture):分层架构(用户层→应用层→服务层→数据层→基础设施层),支持微服务/API/数据库等组件
  • 双格式输出
    • Draw.io XML.drawio):默认格式,直接在 diagrams.net 打开编辑
    • ProcessOn(需配置 API Key):如检测到 PROCESSON_API_KEY,自动调用 ProcessOn API 生成更精美的云端图表
  • 自然语言交互:无需了解图表语法,用日常语言描述即可

泳道图(Swimlane Diagram)规范

结构规范

方向选择

方向适用场景触发关键词
横向泳道(默认)角色少、流程步骤多、强调时序推进默认,或"横向""水平"
竖向泳道角色多、流程步骤少、强调角色分工对比"竖向""纵向""竖版""垂直"

横向泳道

  1. 泳道方向:横向泳道,每个泳道代表一个角色/部门/系统
  2. 排列顺序:泳道从上到下排列,角色名在左侧标签区
  3. 流程节点:节点在对应泳道内,用箭头连接
  4. 起止标识
    • 起始节点:实心圆(绿色,#82b366)
    • 结束节点:圆环+实心圆(红色,#d9574a)

竖向泳道

  1. 泳道方向:竖向泳道,每个泳道代表一个角色/部门/系统
  2. 排列顺序:泳道从左到右排列,角色名在顶部标签区
  3. 流程节点:节点在对应泳道内,从上到下流转
  4. 起止标识
    • 起始节点:实心圆(绿色,#82b366)
    • 结束节点:圆环+实心圆(红色,#d9574a)
  5. 适用场景
    • 多角色并行对比(如多个部门各自流程并排展示)
    • 角色分工明确但流程不长的场景(如政务审批多部门会签)
    • 需要强调角色间横向交互的场景

竖向泳道 XML 生成规范

竖向泳道的 Draw.io 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:顶部标签区高度
  • 泳道宽度固定(约300px),高度随流程步骤增加
  • 节点在泳道内从上到下排列,y坐标递增
  • 跨泳道箭头为水平方向连接

节点类型与样式

节点类型形状填充色边框色
开始/结束圆形#82b366 / #d9574a#333333
活动节点圆角矩形#dae8fc#6c8ebf
判断节点菱形#fff2cc#d6b656
子流程双边框矩形#f8cecc#b85450
数据/文档波浪底矩形#f5f5f5#666666

箭头规范

路径类型线型颜色标注
主流程实线箭头黑色 #333333
判断"是"实线箭头绿色 #82b366
判断"否"虚线箭头红色 #d9574a
跨泳道连接(横向泳道)垂直箭头黑色 #333333交互说明
跨泳道连接(竖向泳道)水平箭头黑色 #333333交互说明

样式参数

  • 泳道标题区:深色背景(#f5f5f5),加粗文字,14px
  • 泳道内容区:白色背景
  • 整体尺寸:宽度自适应,最小 1200px
  • 泳道高度:每条至少 200px
  • 字体:微软雅黑,节点内 12px
  • 节点内边距:上下 8px,左右 12px

政务场景常见角色

  • 申请人/群众
  • 窗口受理人员
  • 部门审批人员
  • 领导决策
  • 系统自动处理
  • 第三方机构

架构图(Architecture Diagram)规范

分层架构规范

从下到上依次为:

  1. 基础设施层(最底层)
  2. 数据层
  3. 服务层
  4. 应用层
  5. 用户层(最顶层)

节点样式

层级形状填充色边框色
用户层圆角矩形#d5e8d4#82b366
应用层圆角矩形#dae8fc#6c8ebf
服务层圆角矩形#fff2cc#d6b656
数据层圆柱体形状#e1d5e7#9673a6
基础设施层矩形#f5f5f5#666666

特殊节点

  • 数据库:圆柱体形状(style 包含 shape=cylinder3
  • 外部系统:虚线边框矩形(dashed=1)
  • API/网关:六边形(hexagon)
  • 微服务:带云图标边框

连接线规范

关系类型线型说明
同步调用实线箭头标准服务调用
异步消息虚线箭头消息队列场景
数据流实线+标注带数据说明
依赖关系箭头A→B 表示 A 依赖 B

输出格式说明

Draw.io XML(默认)

生成 .drawio 文件,可在 diagrams.net 直接打开编辑,无需任何账号。

<?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_KEY),则优先调用 ProcessOn API:

  1. 将图表转换为 ProcessOn 支持的格式
  2. 调用 POST https://open.pingcode.com/v1/graph 上传并生成图片
  3. 返回 ProcessOn 在线链接,支持更多人协作

若未配置 ProcessOn API Key,默认输出 Draw.io XML 格式。


生成流程

Step 1: 理解需求

从用户描述中提取:

  • 泳道图:角色列表、流程步骤、所属角色、判断分支、跨角色交互
  • 架构图:架构层次、各层组件、组件调用关系、数据流向

Step 2: 结构化解析

泳道图解析逻辑

输入描述 → 识别角色 → 梳理流程 → 标记判断 → 确定交互

架构图解析逻辑

输入描述 → 识别层次 → 梳理组件 → 确定关系 → 标注流向

Step 3: 生成 Draw.io XML

必须遵循的 XML 规范:

  1. 使用 mxGraphModel 作为根元素
  2. 每个元素使用 mxCell 定义,id 必须唯一
  3. 泳道使用 swimlane 关键字标识
  4. 箭头使用 edge 类型,source/target 指向节点 id
  5. 合理计算坐标位置,避免重叠

Step 4: 保存文件

  • 文件路径:{工作目录}/{用户指定名称或自动生成名称}.drawio
  • 编码:UTF-8

XML 生成关键规范

节点定义示例

<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>

泳道定义示例

横向泳道(默认):

<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>

竖向泳道

<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>

箭头定义示例

<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>

交互规范

用户交互方式

用户只需用自然语言描述流程或架构,例如:

  • "画一个用户注册登录的泳道图"
  • "生成政务服务事项办理流程图"
  • "做一个微服务架构图"

自动识别逻辑

  1. 图类型判断

    • 提到"角色"、"流程"、"办理" → 泳道图
    • 提到"架构"、"层"、"服务"、"系统" → 架构图
    • 混合描述时,优先泳道图(更常用)
  2. 泳道方向判断

    • 用户提到"竖向""纵向""竖版""垂直" → 竖向泳道
    • 角色数量≥4且流程步骤≤6 → 自动推荐竖向泳道
    • 其他情况 → 横向泳道(默认)
  3. 信息补全

    • 如果用户描述的信息不足以生成完整图,列出需要补充的点
    • 但不要逐个追问,一次性列出所有缺失信息

输出提示

生成完成后告知:

  1. 文件保存路径
  2. 提醒可在 diagrams.net 打开编辑
  3. 如有自定义需求可继续调整

文件路径

  • 主文件:泳道图架构图一句话生成/SKILL.md
  • 参考模板:
    • 泳道图架构图一句话生成/references/swimlane-template.xml
    • 泳道图架构图一句话生成/references/arch-template.xml

完整生成示例

示例:电商订单处理泳道图

用户输入

画一个电商订单处理流程图,包含用户、订单系统、库存系统、支付系统4个角色,从下单到发货的完整流程

生成步骤

  1. 识别角色:用户、订单系统、库存系统、支付系统
  2. 识别流程
    • 用户 → 提交订单 → 订单系统
    • 订单系统 → 扣减库存 → 库存系统
    • 订单系统 → 请求支付 → 支付系统
    • 支付成功 → 发货 → 用户
  3. 判断分支:支付成功/失败
  4. 泳道方向:横向(4个角色,流程步骤适中)

生成输出

<?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 打开编辑。如需调整角色、流程步骤或添加判断分支,请告诉我。

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

Quickbooks mcp

Use QuickBooks integration context for customers, invoices, payments, expenses, vendors, and financial reports. Use after Maverick connects QuickBooks and pr...

Registry SourceRecently Updated
General

Pandadoc mcp

Use PandaDoc integration context for documents, templates, recipients, proposals, and document status. Use after Maverick connects PandaDoc and provisions ru...

Registry SourceRecently Updated
General

Meta Ads MCP

Operational guide for creating, managing, optimizing, and documenting Meta (Facebook/Instagram) ad campaigns via the Facebook Ads MCP. Use whenever the user...

Registry SourceRecently Updated
General

陌生人靠近预警技能

Detects the appearance of strangers near minors and actively issues safety reminder alerts to protect minor safety, suitable for homes, schools, childcare ce...

Registry SourceRecently Updated