Token导航 LogoToken导航

Agent Skill · 待分类

xml-diagram(XML diagram 命令行)

xml-diagram 用于处理 GitHub 仓库、Issue、Pull Request 和代码协作信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要围绕仓库状态、代码变更或协作事项进行整理时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

xml-diagram 是待分类类 Agent Skill,可用宿主为 Codex、Claude、Cursor、Gemini CLI,通过GitHub 仓库获取,权限为只读;许可证信息还不明确,第三方扫描已通过,按安装量在待分类类的 11,209 个 Skill 里排第 9,872。

总安装 220周安装 9GitHub Stars 14下载 71核验 2026-05-01

安装说明

本站只整理中文说明,不托管安装包,也不代用户安装。
GitHub
许可证
unknown

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:xml-diagram(XML diagram 命令行)
来源仓库:https://github.com/bewatermyfriend7/skill-project
仓库路径:skills/xml-diagram
安装命令:
npx skills add https://github.com/bewatermyfriend7/skill-project --skill xml-diagram
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/bewatermyfriend7/skill-project --skill xml-diagram

这个 Skill 是做什么的

这个 Skill 的分类还没最终确定,用法以来源仓库的说明为准。

用于处理 GitHub 仓库、Issue、Pull Request 和代码协作信息。适合在 Codex、Claude、Cursor、Gemini CLI 中围绕仓库状态或代码变更进行整理。通过 npx skills add 命令从指定 GitHub 仓库安装使用。

需确认权限范围和维护状态,注意是否触发联网或文件读写操作。xml-diagram 属于待分类类 Skill,可作为该场景下的辅助能力补充。

来源仓库内路径:skills/xml-diagram

上手步骤

4 步
  1. 1

    确认自己的宿主工具

    公开资料标注支持 Codex、Claude、Cursor、Gemini CLI;先确认自己用的是其中之一,再按对应工具的 Skills 目录放置。

  2. 2

    拿到安装命令

    可以直接复制的命令是 npx skills add https://github.com/bewatermyfriend7/skill-project --skill xml-dia…;命令里的占位符换成自己的路径或密钥再执行。

  3. 3

    安装后重启宿主

    命令执行完要完全退出宿主工具再打开,让新装的 Skill 被重新扫描到,否则列表里可能看不到。

  4. 4

    按最小权限试用

    它标注为只读,先用只读任务试一次,确认行为符合预期再扩大使用范围。

常见问题

6 条

xml-diagram 怎么安装?

在终端执行 npx skills add https://github.com/bewatermyfriend7/skill-project --skill xml-diagram。装完完全退出宿主工具再打开,让它重新扫描本地 Skill。

xml-diagram 支持哪些 AI 工具?

公开资料标注支持 Codex、Claude、Cursor、Gemini CLI。其他工具只要能读取本地 Skill 目录,一般也能手动放进去,但要自己确认触发方式是否一致。

xml-diagram 需要什么权限?

权限级别是只读。该 Skill 主要提供规则、说明或参考内容,本身偏只读;真正读写文件、联网或执行命令仍取决于宿主 Agent 的任务。

xml-diagram 是免费的吗?

公开资料没有标注明确许可证,收费和商用限制都无法确认。正式使用前请到来源仓库核对授权说明。

xml-diagram 用的人多吗?

公开数据是累计安装 220 次,近一周安装 9 次,下载 71 次,GitHub 14 星。这些数字来自第三方目录统计,只能当作热度参考,不代表质量或安全性。

xml-diagram 安全吗?

第三方扫描结果为通过,但这只覆盖已知的静态检查项,不能替代自己读一遍源码和安装命令。

值得选的地方和要先想清楚的地方

值得选的地方

  • 同时适配 4 种工具,换客户端不用重新找替代品。
  • 第三方扫描已通过,常见的高风险行为没有命中。
  • 标注为只读权限,试用阶段不容易误改本地文件。

先想清楚的地方

  • 许可证没有明确标注,能不能商用、能不能再分发都不确定。
  • 第三方目录整理,版本更新和行为细节以来源仓库为准。

适不适合你

更适合

  • 已经在用 Codex,想直接扩展它能力的人。
  • 需要处理待分类类任务、又不想每次都手写提示词的人。
  • 只想先试试效果、不希望它改动本地文件的人。

不太适合

  • 需要明确授权才能用到公司项目里的场景。
  • 需要厂商级技术支持和 SLA 的生产系统。

待分类类 Skill 对比

6 个同类
Skill总安装GitHub 星权限许可证扫描
infsh-cli

infsh CLI · Codex、Claude

4,374,576382权限未标注未明确未收录
ai-video-generation

AI 视频生成 · Codex、Claude

4,313,376382调用外部服务未明确有提醒
lark-openapi-explorer

云雀 OpenAPI 浏览器 · Codex、Claude

2,064,1209,011需要联网未明确有提醒
lark-workflow-standup-report

Lark 工作流程站立报告 · Codex、Claude

2,041,6328,978需要联网未明确通过
use-my-browser

使用我的浏览器 · Codex、Claude

1,848,49140操作浏览器未明确未通过
xml-diagram

XML diagram 命令行 · 本页

22014只读未明确通过

按安装量取同分类前几名;数字来自第三方目录统计,只作热度参考,不代表质量结论。

SKILL.md 原文

XML 图形生成器(drawio 格式)

核心工作流

用户描述 → 解析需求 → 设计图形 → 生成 drawio XML → 验证输出 → 保存文件

详细流程如下:

  1. 接收用户描述

- 用户可能会描述需要的图类型(流程图、卡片、图表等)、布局(横向、纵向、网格等)、内容(文字、emoji)和风格(简约,专业、可爱等)。 - 解析用户输入,提取关键信息以指导后续的图形设计和生成。

  1. 解析用户需求

- 思考需要绘制的图类型、结构、元素、布局和配色,如果不清楚的情况,请用户确认。 - 评估元素数量,合理分组,避免单个图形承载过多内容

  1. 根据分析结果,设计图的布局和元素

- 确定图的整体结构和层次关系 - 设计每个元素的样式(颜色、形状、大小等) - 确定元素之间的连接方式(线条、箭头等)

  1. 生成 drawio XML 代码

- 使用 drawio 的 mxGraph XML 格式构建图形 - 应用 CSS 样式内嵌到 SVG 中 - 根据风格选择应用滤镜和阴影效果

  1. 针对生成的图进行验证,确保其符合用户需求和预期的视觉效果

- 背景模式确认: - 确认用户选择的背景模式(浅色/深色) - 未明确时默认使用浅色背景 - 深色模式下文字和边框使用浅色系 - 基础结构验证(避免元素重叠和布局错乱): - 检查图的结构和元素是否正确 - 确保所有节点坐标计算准确,无重叠 - 验证连接线起点/终点精确指向节点边缘 - 检查文字与图形边界间距 ≥8px,避免文字溢出 - 布局规约验证(避免空白过多和拥挤): - 画布尺寸紧凑合理,利用率 60%-80% 为宜 - 节点间距合理,无过大或过小 - 分支路径清晰,无路径交叉 - 折线转折点不与节点重叠 - 显示完整性保障(避免显示不完整): - 计算画布尺寸:画布高度 = 标题高度 + 内容总高度 + 节点间距 × (节点数-1) + 图例说明区高度(如有) + 边距 - 确保所有节点、文字、连线、箭头都在画布范围内 - 各边保留 ≥30-40px 边距,避免内容被裁剪 - 箭头与连接验证(避免箭头混乱): - 检查箭头样式统一 - 验证箭头指向准确,无偏移或错位 - 检查折线路径节点顺序正确,无交叉混乱 - 验证虚线仅用于异步流程,错误分支使用实线 - 稳健性设计检查: - 避免使用嵌套坐标,所有坐标使用明确数值 - 确保菱形判断节点中心坐标准确,分支从底部中心出发 - 验证汇聚点位置在分支节点正下方,避免路径交叉 - 图例应置于图形底部,避免与主流程重叠,预留专用图例区域 - 样式与颜色验证: - 确保颜色和样式符合选择的风格 - 验证 drawio XML 代码的正确性和兼容性 - 检查图的布局和元素之间的连接是否合理、线条是否清晰准确、图形是否清晰可读、颜色是否符合预期、排版是否整齐 - 检查图中箭头是否清晰、连接是否正常、大小是否合适 - 检查图片是否能够完整显示,是否有元素被截取 - 复杂流程图验证: - 分支流程使用不同颜色区分(错误分支用红色,主线用灰色/蓝色) - 条件判断节点使用菱形形状 - 异步流程使用虚线连接(仅用于异步场景) - 汇聚点明确标注 - 可选区域用虚线框表示

  1. 输出最终的 drawio XML 文件,供用户使用和修改

- 将 drawio XML 保存到指定路径,文件名以 .drawio 结尾 - 提供 drawio XML 代码字符串供用户复制使用

核心原则:生成的 drawio 图形要简洁美观,符合现代设计规范,与 svg-generator 风格保持一致。

视觉风格规范

背景模式

重要:生成图形时必须明确用户需要的背景模式,未明确时默认使用浅色背景

1. 浅色背景模式(默认)

适用于:浅色主题文档、PPT、网页等

参考示例:浅色流程图、浅色架构图

用途颜色代码
背景色#f8f9fa
卡片背景#ffffff
标题文字#333333
正文文字#666666 或 #999999
边框色#e0e0e0
箭头颜色#999999 或 #666
2. 深色背景模式

适用于:深色主题文档、演示文稿、代码编辑器主题等

参考示例:深色流程图、深色时间线

用途颜色代码
背景色#1a1a2e
卡片背景#16213e
标题文字#ffffff
正文文字#aaaaaa 或 #888888
边框色#333333
箭头颜色#666666 或 #555555

深色模式配色速查:

用途颜色代码
主色(蓝)#3498db
成功(绿)#2ecc71
警告(橙)#e67e22
错误(红)#e74c3c
紫色#9b59b6
青色#1abc9c
黄色#f39c12
青色2#00cec9

深色背景下的特殊处理:

  • 文字使用浅色系确保对比度
  • 节点边框适当加粗(2-3px)以增强可见性
  • 建议使用圆角卡片提升视觉层次

配色方案

用途颜色代码
主色(蓝色)#3498db
辅助色(绿色)#2ecc71
强调色(橙色)#e67e22
警示色(红色)#e74c3c
背景色#f8f9fa
文字色#333333 或 #666666
边框色#e0e0e0
箭头颜色#999999 或 #3498db(灰色/蓝色)

图形规范

项目浅色模式默认值深色模式默认值
画布尺寸800×600800×600
圆角半径8px(卡片)8px(卡片)
阴影柔和阴影无阴影或淡阴影
边框宽度2px2-3px
字体PingFang SC, Microsoft YaHei, sans-serifPingFang SC, Microsoft YaHei, sans-serif
线条粗细2px2px

布局规范(重要)

1. 形状拼接规范(避免圆弧不协调)

问题说明:当一个形状内部包含另一个形状(如带标题栏的卡片)时,如果分别设置圆角会导致边界不协调。

正确做法 - 使用单层结构:

<!-- 推荐:使用单一圆角矩形,标题通过不同颜色或位置区分 -->
<mxCell id="node1" value="节点名称" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#ffffff;strokeColor=#3498db;strokeWidth=2;fontColor=#333333;fontSize=14;fontStyle=1;shadow=1;" vertex="1" parent="1">
  <mxGeometry x="100" y="100" width="140" height="60" as="geometry" />
</mxCell>

简化设计原则:

  • 避免使用双层形状叠加(一个带圆角的矩形+一个矩形标题栏)
  • 如需区分标题区域,使用颜色填充而非叠加形状
  • 标题文字使用粗体或不同颜色区分,不单独创建标题块
  • drawio 中直接使用 fontStyle=1 让文字加粗,或使用不同 fontColor 区分标题
2. 线条布局规范(避免混乱与重叠)

节点间距规则:

  • 横向节点间距:≥ 40px
  • 纵向节点间距:≥ 30px
  • 分支节点间距:分支点前垂直距离 ≥ 50px

连接线规范:

  • 连接线端点距节点边界:≥ 5px
  • 折线转折点:使用整数坐标
  • 避免三条以上路径经过同一坐标点
  • 优先使用直线,其次折线,谨慎使用曲线
  • 使用 edgeStyle=orthogonalEdgeStyle 确保折线正交

分支路径规则:

  • 双分支左右偏转角度:30-45°
  • 分支展开角度合理,避免交叉
  • 汇聚点位于所有分支节点的公共下方

防重叠检查:

  • 连接线不穿过其他节点
  • 文字与图形边界间距 ≥ 8px
  • 图例与主流程保持 ≥ 30px 间距

drawio XML 格式规范

基础结构

<mxfile host="app.diagrams.net">
  <diagram name="页面-1">
    <mxGraphModel dx="1200" dy="800" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="800" pageHeight="600" math="0" shadow="1">
      <root>
        <mxCell id="0" />
        <mxCell id="1" parent="0" />
        <!-- 图形元素 -->
      </root>
    </mxGraphModel>
  </diagram>
</mxfile>

常用元素格式

1. 浅色模式圆角矩形卡片
<mxCell id="node1" value="节点名称" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#ffffff;strokeColor=#3498db;strokeWidth=2;fontColor=#333333;fontSize=14;fontStyle=1;shadow=1;" vertex="1" parent="1">
  <mxGeometry x="100" y="100" width="140" height="60" as="geometry" />
</mxCell>
2. 深色模式圆角矩形卡片
<mxCell id="node1" value="节点名称" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#16213e;strokeColor=#3498db;strokeWidth=2;fontColor=#aaaaaa;fontSize=14;fontStyle=1;" vertex="1" parent="1">
  <mxGeometry x="100" y="100" width="140" height="60" as="geometry" />
</mxCell>
3. 菱形判断节点
<mxCell id="node2" value="判断?" style="rhombus;whiteSpace=wrap;html=1;fillColor=#ffffff;strokeColor=#e67e22;strokeWidth=2;fontColor=#333333;fontSize=12;" vertex="1" parent="1">
  <mxGeometry x="200" y="200" width="80" height="80" as="geometry" />
</mxCell>
4. 圆形节点
<mxCell id="node3" value="开始" style="ellipse;whiteSpace=wrap;html=1;fillColor=#ffffff;strokeColor=#3498db;strokeWidth=2;fontColor=#333333;fontSize=12;" vertex="1" parent="1">
  <mxGeometry x="100" y="100" width="60" height="60" as="geometry" />
</mxCell>
5. 箭头连接线
<mxCell id="edge1" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;strokeColor=#999999;strokeWidth=2;endArrow=classic;endFill=1;" edge="1" parent="1" source="node1" target="node2">
  <mxGeometry relative="1" as="geometry" />
</mxCell>
6. 虚线连接(异步/可选流程)
<mxCell id="edge2" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;strokeColor=#9b59b6;strokeWidth=2;dashed=1;endArrow=classic;endFill=1;" edge="1" parent="1" source="node2" target="node3">
  <mxGeometry relative="1" as="geometry" />
</mxCell>
7. 红色箭头(错误分支)
<mxCell id="edge3" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;strokeColor=#e74c3c;strokeWidth=2;endArrow=classic;endFill=1;" edge="1" parent="1" source="node2" target="node4">
  <mxGeometry relative="1" as="geometry" />
</mxCell>
8. 虚线框(可选区域)
<mxCell id="optional" value="可选流程" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#f8f9fa;strokeColor=#999999;strokeWidth=1;dashed=1;fontColor=#999999;fontSize=10;" vertex="1" parent="1">
  <mxGeometry x="50" y="200" width="200" height="120" as="geometry" />
</mxCell>
9. 汇聚点
<mxCell id="join" value="" style="ellipse;whiteSpace=wrap;html=1;fillColor=#666666;strokeColor=#666666;strokeWidth=0;" vertex="1" parent="1">
  <mxGeometry x="300" y="400" width="12" height="12" as="geometry" />
</mxCell>

样式属性说明

属性说明常用值
rounded圆角0=无, 1=有
whiteSpace文本换行wrap
htmlHTML渲染1
fillColor填充颜色#ffffff, #16213e 等
strokeColor边框颜色#3498db, #e74c3c 等
strokeWidth边框宽度2
fontColor文字颜色#333333, #aaaaaa 等
fontSize字体大小12, 14, 16 等
fontStyle字体样式0=普通, 1=粗体
dashed虚线0=实线, 1=虚线
shadow阴影0=无, 1=有
edgeStyle连线样式orthogonalEdgeStyle=正交, elbowEdgeStyle=肘部

分层架构图容器

<!-- 容器背景 -->
<mxCell id="layer1" value="" style="rounded=1;whiteSpace=wrap=1;html=1;fillColor=#E3F2FD;strokeColor=#3498db;strokeWidth=1;" vertex="1" parent="1">
  <mxGeometry x="100" y="80" width="900" height="80" as="geometry" />
</mxCell>

<!-- 图层标签 -->
<mxCell id="label1" value="① 接入层" style="text;html=1;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;whiteSpace=wrap=1;rounded=0;fontColor=#3498db;fontSize=14;fontStyle=1;" vertex="1" parent="1">
  <mxGeometry x="110" y="85" width="100" height="20" as="geometry" />
</mxCell>

执行步骤

第 1 步:解析用户需求

用户可能提供:

  • 图形类型:流程图、卡片、图表、图标、关系图、架构图
  • 布局描述:横向、纵向、网格、环形
  • 内容:文字、emoji、颜色偏好
  • 风格:简约、专业、可爱
  • 背景模式:浅色/深色(重要:必须明确,未明确时默认浅色)

背景模式确认

关键步骤:生成前必须确认用户需要的背景模式

  1. 询问用户:「需要浅色背景还是深色背景的图?」
  2. 如用户未指定,默认使用浅色背景
  3. 适用场景参考:

- 浅色背景:文档、PPT、网页展示 - 深色背景:代码截图、IDE配套图、深色主题设计稿

第 2 步:选择模板或新建

常用模板:

  1. 横向流程图 - 步骤从左到右排列
  2. 纵向流程图 - 步骤从上到下排列
  3. 循环流程图 - 首尾相连的闭环
  4. 卡片网格 - 多张卡片并列
  5. 对比图 - 左右对比布局
  6. 时间线 - 垂直或水平时间轴
  7. 饼图/柱状图 - 数据可视化
  8. 架构图 - 系统、部署、应用架构图,架构图要分层显示
  9. 表格对比 - 数据表格可视化

第 3 步:生成 drawio XML 代码

根据需求生成完整的 drawio 文件:

浅色背景模板
<mxfile host="app.diagrams.net">
  <diagram name="页面-1">
    <mxGraphModel dx="1200" dy="800" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="800" pageHeight="600" math="0" shadow="1">
      <root>
        <mxCell id="0" />
        <mxCell id="1" parent="0" />

        <!-- 背景 -->
        <mxCell id="bg" value="" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#f8f9fa;strokeColor=#e0e0e0;" vertex="1" parent="1">
          <mxGeometry x="0" y="0" width="800" height="600" as="geometry" />
        </mxCell>

        <!-- 标题 -->
        <mxCell id="title" value="图形标题" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap=1;rounded=0;fontSize=20;fontStyle=1;fontColor=#333333;" vertex="1" parent="1">
          <mxGeometry x="300" y="20" width="200" height="30" as="geometry" />
        </mxCell>

        <!-- 图形内容 -->
        ...
      </root>
    </mxGraphModel>
  </diagram>
</mxfile>
深色背景模板
<mxfile host="app.diagrams.net">
  <diagram name="页面-1">
    <mxGraphModel dx="1200" dy="800" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="800" pageHeight="600" math="0" shadow="0">
      <root>
        <mxCell id="0" />
        <mxCell id="1" parent="0" />

        <!-- 深色背景 -->
        <mxCell id="bg" value="" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#1a1a2e;strokeColor=#333333;" vertex="1" parent="1">
          <mxGeometry x="0" y="0" width="800" height="600" as="geometry" />
        </mxCell>

        <!-- 标题 -->
        <mxCell id="title" value="图形标题" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap=1;rounded=0;fontSize=20;fontStyle=1;fontColor=#ffffff;" vertex="1" parent="1">
          <mxGeometry x="300" y="20" width="200" height="30" as="geometry" />
        </mxCell>

        <!-- 图形内容 -->
        <!-- 卡片示例 -->
        <mxCell id="node1" value="节点内容" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#16213e;strokeColor=#3498db;strokeWidth=2;fontColor=#aaaaaa;fontSize=12;" vertex="1" parent="1">
          <mxGeometry x="100" y="80" width="140" height="60" as="geometry" />
        </mxCell>

        ...
      </root>
    </mxGraphModel>
  </diagram>
</mxfile>

深色背景配色速查表:

元素颜色代码
背景#1a1a2e
卡片背景#16213e
标题文字#ffffff
正文文字#aaaaaa / #888888
边框#333333
箭头#666
主色边框#3498db
成功色#2ecc71
错误色#e74c3c

第 4 步:保存文件

将生成的 drawio 保存到用户指定的位置,文件名以 .drawio 结尾。

箭头规范

箭头样式

样式属性值
灰色箭头(推荐)strokeColor=#999999
蓝色箭头strokeColor=#3498db
红色箭头strokeColor=#e74c3c
紫色箭头strokeColor=#9b59b6

线条样式

样式使用场景属性
实线主线流程、正确分支、错误分支dashed=0
虚线异步/回调/可选流程dashed=1

重要原则:

  • 错误分支必须使用实线,用颜色(红色)区分,不可用虚线
  • 虚线仅用于表示异步、回调、定时任务等非同步场景

箭头端点样式

<!-- 经典箭头 -->
endArrow=classic;endFill=1;

<!-- 空心箭头 -->
endArrow=classicEmpty;endFill=0;

<!-- 菱形端点 -->
endArrow=diamond;endFill=1;

流程图规范

画布尺寸计算规则

画布高度 = 标题高度 + 内容总高度 + 节点间距 × (节点数-1) + 边距
画布宽度 = 边距 + 最大节点宽度 × 列数 + 列间距 × (列数-1) + 边距

节点排列

  • 横向流程:节点水平排列,间距 40-60px
  • 纵向流程:节点垂直排列,间距 30-50px

连接线类型

直线连接
<mxCell id="edge1" style="edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;strokeColor=#999999;strokeWidth=2;endArrow=classic;" edge="1" parent="1" source="node1" target="node2">
  <mxGeometry relative="1" as="geometry" />
</mxCell>
折线连接(路径转向)
<mxCell id="edge2" style="edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;strokeColor=#999999;strokeWidth=2;endArrow=classic;" edge="1" parent="1" source="node2" target="node3">
  <mxGeometry relative="1" as="geometry">
    <Array as="points">
      <Object x="250" y="180" />
    </Array>
  </mxGeometry>
</mxCell>
曲线连接(循环/回退)
<mxCell id="edge3" style="edgeStyle=elbowEdgeStyle;rounded=1;html=1;strokeColor=#9b59b6;strokeWidth=2;dashed=1;endArrow=classic;" edge="1" parent="1" source="node3" target="node1">
  <mxGeometry relative="1" as="geometry" />
</mxCell>

分支与汇聚

菱形判断节点
<mxCell id="decision" value="判断条件" style="rhombus;whiteSpace=wrap;html=1;fillColor=#ffffff;strokeColor=#e67e22;strokeWidth=2;fontColor=#333333;fontSize=12;" vertex="1" parent="1">
  <mxGeometry x="200" y="150" width="80" height="80" as="geometry" />
</mxCell>
分支连线标注

在连线旁边添加标注:

<mxCell id="label1" value="是" style="text;html=1;strokeColor=none;fillColor=none;align=center;fontColor=#666666;fontSize=10;" vertex="1" parent="1">
  <mxGeometry x="220" y="230" width="30" height="20" as="geometry" />
</mxCell>

架构图规范

分层结构

架构图应采用分层设计,从上到下:

  1. 接入层(客户端、CDN、负载均衡、网关)
  2. 服务层(业务服务、认证服务、消息队列)
  3. 数据层(Redis、MySQL、MongoDB)
  4. 基础层(Docker、K8s、监控)

架构图组件模板

服务节点
<mxCell id="service1" value="服务名称" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#E8F5E9;strokeColor=#2ecc71;strokeWidth=2;fontColor=#333333;fontSize=12;shadow=1;" vertex="1" parent="1">
  <mxGeometry x="150" y="100" width="100" height="40" as="geometry" />
</mxCell>
数据库节点
<mxCell id="db1" value="数据库" style="shape=cylinder3;whiteSpace=wrap;html=1;boundedLbl=1;backgroundOutline=1;size=5;fillColor=#FCE4EC;strokeColor=#e74c3c;strokeWidth=2;fontColor=#333333;fontSize=12;" vertex="1" parent="1">
  <mxGeometry x="300" y="350" width="60" height="50" as="geometry" />
</mxCell>
队列节点
<mxCell id="queue1" value="消息队列" style="shape=hexagon;whiteSpace=wrap;html=1;fillColor=#F3E5F5;strokeColor=#9b59b6;strokeWidth=2;fontColor=#333333;fontSize=12;perimeter=hexagonPerimeter;" vertex="1" parent="1">
  <mxGeometry x="400" y="200" width="100" height="40" as="geometry" />
</mxCell>

箭头使用规则

分层架构图中箭头是可选的:

  1. 无箭头架构图:当重点展示系统层次结构和组件分层时,可以不加箭头。
  2. 带箭头架构图:当需要表示数据流向、调用关系或处理顺序时,可添加箭头。箭头应使用统一灰色(#999999)。
<mxCell id="arrow1" style="edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;strokeColor=#999999;strokeWidth=2;endArrow=classic;endFill=1;" edge="1" parent="1" source="layer1" target="layer2">
  <mxGeometry relative="1" as="geometry" />
</mxCell>

验证清单

1. 背景模式确认

生成前必须确认:

  • 已询问用户需要浅色还是深色背景
  • 背景色与内容颜色形成良好对比
  • 深色模式下文字使用浅色系(#ffffff、#aaaaaa、#888888)

2. 基础结构验证

  • 节点圆角一致(rounded=1)
  • 边框宽度适中(strokeWidth=2)
  • 文字清晰可读,与背景对比度足够
  • 箭头样式统一
  • 形状拼接验证:避免双层叠加导致的圆角不协调问题,使用单层结构
  • 连接线验证:确保连接线端点精确指向节点边缘,不偏移

3. 布局规约验证

  • 画布尺寸合适,无过多空白(利用率 60%-80%)
  • 节点间距合理,无拥挤或过大间距
  • 分支路径清晰,无路径交叉
  • 折线转折点不与节点重叠
  • 防线条混乱验证:

- 避免三条以上路径经过同一坐标点 - 连接线不穿过其他节点 - 分支角度合理(30-45°),避免交叉

  • 图例位于底部,与主流程无重叠

4. 图形完整显示验证

  • 图形能够完整显示,避免元素超出画布范围
  • 所有节点在画布范围内
  • 连接线端点距节点边界距离合适
  • 文字与图形边界间距足够

5. 颜色与样式验证

  • 颜色符合配色规范
  • 错误分支使用红色实线(非虚线)
  • 异步流程使用虚线(紫色或灰色)
  • 边框宽度合适(浅色模式:2px,深色模式:2-3px)

输出说明

生成的 drawio XML 文件可以直接:

  1. 在 drawio 中打开查看和编辑
  2. 保存为.drawio 文件
  3. 导出为 PNG、SVG、PDF 等格式
  4. 嵌入到文档中使用

触发条件

当用户提到以下内容时触发:

  • XML、drawio、绘图
  • 流程图、关系图、结构图、架构图
  • 生成一个图、把文字变成图
  • drawio 编辑

与 svg-generator 的对应关系

本 skill 与 svg-generator 功能完全一致,区别在于输出格式:

svg-generatorxml-diagram
输出 SVG 格式输出 drawio XML 格式
.svg 文件.drawio 文件
可在浏览器打开可在 drawio 中编辑
相同配色方案相同配色方案
相同布局规范相同布局规范
相同验证清单相同验证清单

平台分布

Codex

35.55%
按下载量换算25

Claude

30.32%
按下载量换算22

Cursor

20.51%
按下载量换算15

Gemini CLI

9.68%
按下载量换算7

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

只读

该 Skill 主要提供规则、说明或参考内容,本身偏只读;真正读写文件、联网或执行命令仍取决于宿主 Agent 的任务。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。目前只有一个公开来源,建议同时核对源仓库。

继续浏览同类 Skills