Skip to content

第42课 · 让 AI 替你画内控流程图

本节要点

  • 审计、咨询、内控搭建、内控评价——全都离不开画流程图,以前只能用 Visio 一根线一根线地手画
  • draw.io 免费开源、能被 AI 直接读写,是 Visio 的完美替代品
  • 让 AI 画流程图有三条路:MCP、通用 Skill、直接写 XML,直接写 XML 最省 token、最推荐
  • nigo 自己做了一个 Flow Chart Generator Skill,输入一段流程描述(或一整张内控矩阵表),批量生成泳道图
  • 装好 draw.io 桌面版后,配合一条 CLI 命令就能批量导出 PNG / PDF / SVG / Visio

1. 审计人为什么要会画内控流程图

画流程图这件事,在审计和咨询行业里几乎躲不开:

  • 内控搭建:每梳理一个业务循环,就要画对应的流程图和风险控制点
  • 内控评价:拿现成的流程图去评价控制设计是不是合理
  • 审计底稿:理解一个业务的流转,最快的方式就是画一张图
  • 咨询项目:客户给你的第一份交付物,常常就是一张「业务流程图」

一个稍微大点的内控项目,几十张泳道图是常有的事。以前画图只能用 Visio——一个流程图从拖框、连线、对齐、配色,画完一张得折腾小半天,几十张下来人都要麻了。

这节课要解决的就是这件事:让 AI 来画。

💡 nigo 做内控咨询的时候,一个项目 30 张泳道图,用 AI 半天就能全部生成出来,剩下的时间只用来微调连线和细节。


2. draw.io:免费替代 Visio 的画图神器

为什么不用 Visio?两个原因:

  1. Visio 收费,正版要花钱,而且 Visio 的 SDK / API 更是贵得离谱(几万美金),没必要
  2. Visio 没法被 AI 高效操作,它是闭源的二进制格式,AI 读写起来很费劲

所以这节课的主角是 draw.io——一款免费、开源、跨平台的画图工具。

draw.io 官网https://www.drawio.com/

它有三种用法:

形态地址适合
网页版app.diagrams.net临时画一张,不装软件
桌面版官网下载日常用,带命令行(CLI),必须装这个
VS Code 插件商店搜索 drawio在编辑器里看图

为什么强调要装桌面版?因为只有桌面版自带 CLI(命令行工具),AI 才能通过命令行批量把 .drawio 文件导出成 PNG、PDF、SVG。网页版没有这个能力。

💡 draw.io 的核心文件 .drawio 本质就是一个纯 XML 文本文件。纯文本意味着 AI 能直接读写它,也能用 git 追踪每次改动——这是它最大的优势。


3. AI 画流程图的三条路(怎么选)

让 AI 帮你画 draw.io 流程图,目前有三条路:

方案原理优点缺点
① draw.io MCP 服务器AI 通过 MCP 协议一个个 cell 地调 draw.io 接口能精确修改已有图每加一个框调一次接口,token 爆炸
② 官方通用 Skill(drawio-pro-skill)开箱即用装上就能用不懂内控规范,画出来样式乱
③ 直接写 XML(推荐)AI 直接生成整个 .drawio 文本文件一次出图,省 95%+ token需要约定好样式常量

nigo 的建议:日常用直接写 XML 这条路。它的效率最高——AI 把整张图的 XML 一次性写出来,比一个个框调用接口省太多 token。

不用任何 Skill 也能走这条路:你只要在对话里提到 「drawio」 这个关键词,AI 就知道你要的是 draw.io 格式,会直接帮你写 XML 文件。区别只在于样式好不好看。

如果你想画的是内控泳道图这种有固定规范的图,建议用下面 nigo 做的专用 Skill——它把内控常用的泳道、配色、形状都固化好了。


4. 安装 draw.io 桌面版

4.1 macOS

bash
brew install --cask drawio

装好后:

  • 应用程序在 /Applications/draw.io.app
  • 命令行工具(CLI)在 /opt/homebrew/bin/drawio

4.2 Windows

去 draw.io desktop 的 GitHub Releases 页面下载 .exe 安装包:

下载后双击安装即可。

4.3 ⚠️ 重要:要导出 Visio 格式,请用这个版本

draw.io 最新版已经不支持导出 Visio(vsdx)格式了

如果你需要把图导成 .vsdx 交给客户(很多甲方爸爸还是只认 Visio),请用 v26.0.16 这个版本——它是最后一个支持导出 vsdx 的版本。

💡 nigo 已经把这个版本(draw.io v26.0.16,Mac + Windows 安装包)放在了百度网盘,直接去网盘下载就行,不用自己到处找。


5. 实战:让 AI 直接写 .drawio 文件(推荐方案)

这是最核心的部分。AI 生成的 .drawio 文件长什么样?其实就是一堆带样式常量的 XML:

xml
<mxGraphModel>
  <root>
    <mxCell id="0"/>
    <mxCell id="1" parent="0"/>
    <!-- 一个矩形步骤框 -->
    <mxCell id="step1" value="提交付款申请" style="rounded=0;fillColor=#dae8fc;strokeColor=#6c8ebf;"
            vertex="1" parent="1">
      <mxGeometry x="120" y="80" width="120" height="60" as="geometry"/>
    </mxCell>
  </root>
</mxGraphModel>

关键点:

  • style 是一段 key=value;key=value; 的字符串,决定颜色、形状、边框
  • mxGeometry 决定位置和大小
  • AI 只要按这套规则把文本写出来,draw.io 打开就是一张图

你不用记这些规则。你只要在对话里说「用 drawio 画一张 XX 流程图」,AI 就会帮你写好文件,你双击打开就能看。


6. nigo 的流程图 Skill:批量生成内控流程图

6.1 这个 Skill 是干嘛的

nigo 自己做了一个 Skill,叫 Flow Chart Generator(流程图生成器)

它的思路是:把样式和布局逻辑固化成代码,AI 只负责理解你的流程描述、生成结构化数据,然后调用代码批量出图。

这样做的好处:

  • 不依赖任何外部服务,本地就能跑
  • 泳道图的配色、形状、职能带都按内控规范固定好了
  • 大模型不用每次重新想样式,省 token、出图稳定
  • 可以微调主题方案,存成你自己的风格

6.2 输入支持任意格式

这个 Skill 的输入很灵活,不挑格式:

  • 一段话描述流程
  • 一个表格(比如内控矩阵)
  • 任意文本文件

视频里演示的是用第 36 课 Local RAG 生成的「内部控制活动矩阵」作为输入——一行就是一条流程,Skill 读进去就能批量画图。

6.3 怎么用

💡 Flow Chart Generator Skill 放在百度网盘,配套课程资料里下载。装到 OpenCode / Claude Code 里就能用。

典型指令:

把这个文件里的 5 条数据(一行是一条流程),生成内控流程图,保存到这个文件夹。

Skill 会问你想要哪种输出格式:

格式用途
.drawio可编辑的源文件,推荐保存这个
.png图片,插进 Word / PPT
.svg矢量图,放大不失真
.vsdxVisio 格式,交给甲方(必须装 v26.0.16

6.4 实战示例:内控泳道图

一条典型的内控流程,画成泳道图大概是这样的结构(5 个职能带 × 8 个步骤):

┌─────────────┬─────────────┬─────────────┬─────────────┐
│  相关部门/   │             │             │             │
│  分子公司    │  ①发起申请   │             │             │
├─────────────┼─────────────┼─────────────┼─────────────┤
│ 财务资金部   │             │ ②审核       │             │
│ -资金中心   │             │ ③复核       │             │
├─────────────┼─────────────┼─────────────┼─────────────┤
│ 预算管理     │             │             │ ④预算核对    │
│ 委员会       │             │             │ ⑤审议       │
├─────────────┼─────────────┼─────────────┼─────────────┤
│ 总经理办公会 │             │             │ ⑥审批下达    │
└─────────────┴─────────────┴─────────────┴─────────────┘

形状约定:

  • 椭圆 = 流程的开始和结束
  • 矩形 = 具体步骤
  • 不同职能带用不同颜色区分

这套规范在 Skill 里已经固化好了,AI 出图时直接套用,不用每次重新描述。

6.5 诚实说明:它不完美

这个 Skill 做了碰撞检测代码,但复杂场景下连线还是可能需要手动微调。它不能保证 100% 完美,但能帮你节省大量重复劳动——以前画 30 张图要小半天,现在批量生成后只调整连线,效率高得多。

💡 这个 Skill 不是唯一解。你也可以:① 不用 Skill,直接让 AI 调 drawio CLI 或写 XML;② 自己做一个属于你行业的 Skill;③ 装 draw.io 的 MCP 对比效果。找到最适合你的那条路就行。


7. draw.io CLI 速查表(批量导出)

装好桌面版之后,drawio 这个命令行工具可以批量把 .drawio 导出成各种格式。这是批量出图的关键。

7.1 常用导出命令

bash
# 导出 PNG(-b 20 是四周留 20px 白边)
drawio -x -f png -b 20 -o 输出.png 输入.drawio

# 导出 PDF(--crop 裁掉多余白边)
drawio -x -f pdf --crop -o 输出.pdf 输入.drawio

# 导出 SVG(矢量图,放大不失真)
drawio -x -f svg -o 输出.svg 输入.drawio

# 把 Visio 文件转成 drawio
drawio -x -f xml -u -o 输出.drawio 输入.vsdx

7.2 批量导出一个文件夹下的所有图

配合 shell 循环,一次性把整个目录的 .drawio 全导成 PNG:

bash
for f in *.drawio; do
  drawio -x -f png -b 20 -o "${f%.drawio}.png" "$f"
done

7.3 注意事项

  • drawio CLI 本质上是 Electron 应用,第一次启动会比较慢(大概 10 秒),后面就快了
  • 导出 vsdx(Visio 格式)必须用 v26.0.16 这个老版本,新版本已经不支持

8. 延伸参考:社区里的 draw.io Skill

除了 nigo 的内控专用 Skill,社区和官方也有一些现成的 draw.io Skill 可以直接装。如果你要画的不仅是内控泳道图,还涉及架构图、网络拓扑、UML 等通用场景,可以参考这几个:

社区最高人气bahayonghang/drawio-skills

  • 6.2K 安装,244 GitHub Stars,通过 Socket / Snyk 安全审计
  • 支持创建、编辑、导出 draw.io 图,覆盖泳道图、流程图、组织架构图、UML、ER 图等
  • 自带样式预设、主题、本地 CLI 和桌面版导出助手
  • 安装命令:
bash
npx skills add bahayonghang/drawio-skills@drawio

官方 MCPjgraph/drawio-mcp

  • draw.io 官方组织 jgraph 出品,2.2K 安装
  • 走 MCP 协议,适合需要精确控制、修改已有图的场景
  • 注意:它是逐个 cell 调用接口的,token 消耗较大(就是第 3 节讲的第一条路)

💡 这些通用 Skill 适合画各种类型的图。如果你的场景就是画内控泳道图,nigo 的 Flow Chart Generator Skill 把内控规范和配色固化得更彻底,开箱即用。两者可以对比着试,找到最适合你的那条路。


⚠️ 常见问题

装完桌面版,命令行里敲 drawio 没反应?

macOS 用 Homebrew 装的,CLI 在 /opt/homebrew/bin/drawio,确认这个路径在你的 PATH 里。Windows 需要把安装目录加到系统环境变量,或者用完整路径调用。

新版 draw.io 导不出 vsdx(Visio 格式)?

这是正常的。draw.io 从某个版本开始移除了 vsdx 导出功能。要导 Visio 格式,必须用 v26.0.16 这个老版本(nigo 网盘里有 Mac + Windows 安装包)。如果你根本不需要交 Visio 给客户,用最新版导 PNG / PDF / SVG 就行。

我不用 nigo 的 Skill,能让 AI 自己画吗?

可以。只要在对话里提到「drawio」这个词,AI 就知道你要的是 draw.io 格式,会直接帮你写 XML 文件。区别只是样式可能没有 Skill 里固定的内控主题那么规范,你可以让它调整。

Skill 生成的图连线很乱怎么办?

复杂流程下连线确实可能需要手动微调。建议:先用 Skill 批量生成骨架,再在 draw.io 里手动调整几条连线的走向。整体效率还是比纯手画高得多。

网页版 draw.io 能不能用 CLI 导出?

不能。网页版(app.diagrams.net)没有命令行。要用 CLI 批量导出,必须装桌面版

这节课和第 36 课 Local RAG 有什么关系?

第 36 课讲的是怎么从制度文档里提取结构化数据(比如「内部控制活动矩阵」)。这节课的 Skill 可以直接读那个矩阵当输入,一行生成一张流程图。两节课是上下游关系:RAG 帮你读懂制度,这个 Skill 帮你把读懂的东西画成图。


关键收获

TIP

画内控流程图这件最耗时的重复劳动,完全可以交给 AI。

最省事的路径是:装好 draw.io 桌面版 → 用 nigo 的 Flow Chart Generator Skill → 把内控矩阵或一段流程描述丢进去 → 批量生成泳道图 → 命令行一键导出 PNG/PDF

几十张图半天的活,现在半小时搞定,剩下的时间只用来微调。如果你不需要 nigo 的 Skill,只要在对话里说「drawio」,AI 也会直接帮你写图——只是样式需要自己调。


参考链接

© 2025 逆行的狗