恒美微站
首页
关于我们
建站服务
主题模板
案例展示
资讯中心
联系我们
用Skill让AI自动生成流程图:原理、配置与实战
首页
资讯中心
/
用Skill让AI自动生成流程图:原理、配置与实战
用Skill让AI自动生成流程图:原理、配置与实战
发布时间:2026/9/1 4:20:10
写过一个流程图断断续续折腾一下午…… 表格连线对不齐、分支箭头乱七八糟、改一个判断条件整条线都要重画最崩溃的是产品经理说“逻辑再改一下”。后来我发现与其手搓流程图不如用 skill 让 AI 直接生成。这里结合近期 AI Coding 社区里很火的 skill 用法手把手拆解一套“用 skill 自动画流程图”的完整方案包含原理、配置、实战案例和避坑经验不需要你手动拖拽任何一条线。1. 为什么大家都在提“skill 流程图”先说结论skill 不是某个具体的绘图软件而是一套可以被 AI 智能体例如 Claude、Codex、OpenCode 等加载的“能力包”或“技能指令”。在最近的热搜里能看到大量和 skill 相关的词条Claude Code skillCodex skillOpenCode skillAgent skill 与 MCP 的区别workbuddy skill、taste skill、hermes skill 等这些词背后的共同点都是把“AI 能完成的一类任务”封装成一段结构化的指令、参考示例和约束条件。流程图绘制正好是 skill 非常适合落地的场景之一。1.1 流程图绘制为什么需要 skill传统手搓流程图的方式通常是打开 draw.io、Visio、ProcessOn或者用 BPMN.js 嵌入到自己的系统里。这种方式有几个痛点图层和连线容易错乱尤其是复杂分支。修改成本高一个节点变化往往牵一发动全身。跨工具迁移困难draw.io 的格式和 ProcessOn 不通用。和代码、文档脱节流程图很难直接跟随需求文档更新。而用 skill 生成流程图本质上是用文本描述替代手动拖拽。你只需要告诉 AI“我要画一个用户登录的流程图”AI 根据 skill 中预设的规则自动输出 Mermaid、PlantUML 或 draw.io 兼容的 XML 内容。1.2 skill 和普通提示词的区别很多人会问我不就是让 AI 帮我画个流程图吗直接写提示词不就行了为什么非要 skill这里说一下我的理解普通提示词是一次性的AI 不知道你偏好的连线风格、节点命名规则、分支颜色也不知道你最终要导出成什么格式。而 skill 是一套可复用的“工作流配置”它会告诉 AI画流程图的步骤是什么用什么语法Mermaid / PlantUML / DOT节点和连线的命名规范如何判断分支的完整性如何检查循环、回边、终止节点。换句话说普通提示词是“散装对话”skill 是“封装好的专项能力”。用 skill 生成流程图速度更快、格式更统一、逻辑也更严谨。2. 环境准备你需要装好哪些工具这次实战不依赖某个特定操作系统Windows、macOS、Linux 都可以。下面给出的是通用环境版本不写死因为这类工具更新很快你需要根据自己项目实际情况调整。2.1 基础环境清单组件作用说明Node.js 18运行 Mermaid CLI 和部分 skill 解析工具如果只是用 VS Code 插件预览也可以不装VS Code编辑器推荐安装 Mermaid 预览插件Claude Code / Codex CLI / OpenCode承载 skill 的 AI 智能体选择一个即可后续命令基本通用draw.io可选手动微调生成结果支持导入 Mermaid 和 XMLGit管理 skill 文件便于版本迭代注意这里的版本号是常见参考值。Node.js 版本过低可能导致 Mermaid CLI 无法运行建议使用 18 以上版本。如果你的环境已经装有 nvm可以直接切换。2.2 skill 文件放在哪里不同 AI 工具对 skill 的加载路径要求不太一样。以 Claude Code 为例通常是把 skill 放在项目目录下的.claude/skills中也可以放在用户级目录~/.claude/skills。Codex 和 OpenCode 也有类似的目录约定。为了保证文章通用下面我们统一使用一个自定义目录~/my-skills/flowchart-skill/你只需要在自己使用的 AI 工具配置中把这个目录加入 skill 搜索路径即可。3. 手搓一个流程图 skill核心思路与完整配置接下来进入重点如何编写一个专属于你的“流程图生成器 skill”。这个 skill 的目标是当用户用自然语言描述一个业务流程、算法逻辑或系统交互时AI 能自动生成规范、可导出、可二次编辑的流程图代码。3.1 skill 的标准目录结构一个最简单的 skill通常包含两个文件flowchart-skill/ ├── SKILL.md └── examples/ └── basic-flow.mdSKILL.md技能的描述文件包含触发条件、使用流程、约束规则。examples/示例文件用于帮助 AI 理解输出格式。3.2 SKILL.md 的编写要点SKILL.md是 skill 的核心。它的作用不是写一段“请帮我画流程图”这种简单提示而是把画流程图的专业方法教给 AI。先给出一份可直接使用的 SKILL.md 模板--- name: flowchart-generator description: 根据用户需求生成规范、可导出、可编辑的流程图支持 Mermaid、PlantUML 和 draw.io 格式。 --- # 流程图生成 Skill ## 触发场景 当用户要求绘制流程图、业务流程图、算法流程图、系统交互图、状态流转图时使用本 Skill。 ## 工作流程 ### 第一步需求结构化 1. 将用户描述拆解为节点列表。 2. 找出节点之间的顺序关系、分支关系和循环关系。 3. 明确开始节点和结束节点。 ### 第二步选择图形类型 - 如果描述的是业务流程优先使用 flow chart。 - 如果描述的是算法过程优先使用 flow chart并标注判断条件。 - 如果描述的是系统交互优先使用 sequence diagram。 ### 第三步生成 Mermaid 代码 必须遵循以下规则 1. 使用 flowchart TD 或 flowchart LR 作为起始声明。 2. 节点命名使用英文语义化名称中文内容放在方括号或花括号中。 3. 判断节点使用 {} 菱形。 4. 使用 -- 表示普通连线使用 -- 条件 -- 表示分支条件。 5. 必须有明确的 start 和 stop 节点。 6. 分支完整每个判断节点至少有两个出口是/否。 7. 避免连线交叉必要时调整节点顺序。 ### 第四步质量检查 生成后自动检查 - 是否缺少 start / stop 节点。 - 判断节点是否只有单出口。 - 是否有孤立节点。 - 连接线是否对应正确逻辑。 ### 第五步输出 输出内容包括 1. Mermaid 代码块。 2. 简单说明节点含义和分支逻辑。 3. 如需 draw.io 格式可提供 XML 导入提示。这份 SKILL.md 看起来不复杂但关键点是它把“人画流程图的思考过程”拆解成了 AI 能逐步执行的步骤而不是让 AI 自由发挥。3.3 补充一个示例文件为了让 AI 更稳定地输出高质量结果可以在 examples 目录中放一个参考示例。下面是一个用户登录流程的示例# 示例用户登录流程图 ## 用户需求 用户输入账号密码系统校验校验通过进入首页校验失败提示错误。 ## 输出 Mermaid mermaid flowchart TD A[开始] -- B[输入账号密码] B -- C{校验账号密码} C -- 正确 -- D[登录成功] D -- E[进入首页] D -- F[写入登录日志] F -- Z[结束] C -- 错误 -- G[提示登录失败] G -- B说明失败分支回到输入节点允许用户重新输入。正确分支需要写入日志这是实际系统中的常见操作。注意上面的示例故意写成了 mermaid 代码块。如果你要在 CSDN 或其他支持 Mermaid 的平台发布直接使用即可如果在不支持 Mermaid 的平台可以把该代码块替换为纯文本展示。 ### 3.4 在你的 AI 工具中启用这个 skill 以 OpenCode 为例如果你在 opencode skill 相关配置中指定了 skill 目录那么只需要把上面的 flowchart-skill 文件夹放到对应目录下重启命令行工具然后在对话中写请使用 flowchart-generator 画一个订单超时关单的流程图。AI 会自动读取 SKILL.md按照其中定义的规则生成流程图。 如果你用的是 Codex CLI可以把 skill 目录添加到配置文件中。不同工具存在差异这里不写死具体命令核心原则是**让 AI 能读到 SKILL.md 的内容**。 ## 4. 实战让 skill 自动生成订单超时关单流程图 有了 skill我们来跑一个真实业务场景。假设你是电商后端开发需要画一张“订单超时未支付自动关闭”的流程图。 传统做法是打开画图软件慢慢画现在我们可以直接对 AI 说请生成订单超时未支付自动关闭的流程图包含定时任务扫描、状态判断、库存恢复、通知用户几个环节。根据我们在 SKILL.md 中预设的规则AI 会先结构化需求然后生成类似这样的 Mermaid 代码 mermaid flowchart TD Start[定时任务启动] -- Scan[扫描待支付订单] Scan -- Check{订单是否超时} Check -- 否 -- Ignore[跳过] Ignore -- End Check -- 是 -- Lock[锁定订单] Lock -- Update{更新订单状态为已关闭} Update -- 成功 -- Restore[恢复库存] Restore -- Notify[发送通知给用户] Notify -- Log[记录日志] Log -- End[结束] Update -- 失败 -- Retry[重试或告警] Retry -- End输出后你还可以直接让 AI 继续优化“把失败重试逻辑画得更细一点。”“改成 start 和 stop 节点都用圆角矩形。”“增加一个分布式锁的获取环节。”这就是 skill 复用带来的效率提升。4.1 在 VS Code 中预览生成的流程图生成 Mermaid 代码后可以选择三种方式查看效果VS Code Markdown Preview Mermaid Support新建一个.md文件粘贴代码打开预览。Mermaid Live Editor在线编辑器粘贴即预览。draw.io 导入draw.io 支持直接粘贴 Mermaid 语法生成图形。推荐在本地开发时使用 VS Code 插件因为不需要离开编辑器。4.2 生成 draw.io 可编辑文件如果你的团队更习惯用 draw.io 编辑流程图可以让 skill 额外输出 draw.io 的 XML 格式。具体做法是在 SKILL.md 中增加一段输出规则当用户要求导出 draw.io 格式时输出 mxGraphModel 结构的 XML并将节点坐标和连线关系维护为可编辑对象。由于 draw.io XML 较为冗长一般建议直接让 AI 生成 Mermaid再由用户粘贴到 draw.io 中自动转换这样效率更高。5. skill 与 MCP 有什么区别在不少技术讨论中很多人会把 skill 和 MCP 混在一起问。这里用一个表格简单区分维度SkillMCP本质提示词、规则、示例的集合一种协议用于连接 AI 与外部工具/数据源作用范围约束 AI 的行为和输出格式扩展 AI 获取外部信息或操作外部系统的能力典型场景统一流程图、代码规范、文案风格调用数据库、文件系统、GitHub API是否需要联网不需要本地即可生效视连接的工具而定和流程图的关联直接告诉 AI 如何画流程图可以让 AI 读取数据库表结构后自动画 ER 图简单理解skill 管“该怎么画”MCP 管“能拿到什么数据、能调用什么工具”。两者可以结合使用但不是一回事。6. 常见问题与排查思路在实际使用中可能会遇到一些问题下面整理一份高频问题清单。问题现象常见原因解决思路AI 没有按照 skill 生成流程图skill 目录未加载或 SKILL.md 未被读取检查 skill 路径是否已加入工具配置重启 CLIMermaid 代码预览报错节点命名含特殊字符或分支条件格式不对检查中文是否加引号分支条件用-- 条件 --流程图分支不完整SKILL.md 中缺少分支检查规则在 skill 中添加“每个判断节点需有是/否两个出口”的约束生成的流程图太复杂未在 skill 中设置拆分策略增加规则超过 15 个节点时自动拆分子图想导出 draw.io 格式但失败AI 直接生成了 Mermaid 而不是 XML自定义 skill 输出规则明确要求输出 draw.io XML7. 最佳实践与工程建议下面这些建议是我在实际使用中总结出来的能帮你少走很多弯路。7.1 不要把 skill 写成万能提示词skill 的价值在于“稳定”而不是“花哨”。在 SKILL.md 中应尽量写清楚约束条件而不是给出很多开放性的建议。AI 在开放条件下容易自由发挥而流程图一旦自由发挥逻辑就不可控了。7.2 所有节点必须有明确的开始和结束这是流程图最容易忽略的点。很多 AI 生成的流程图只画主干忘记结束节点导致整个图没有边界。在 SKILL.md 中强制要求 start 和 stop 节点可以显著提升成图质量。7.3 分支路径必须完整判断节点后至少要有“是/否”两个出口。不要只画正常逻辑失败分支、异常分支也要画出来。对于真实业务场景异常分支往往比正常分支更重要。7.4 中文内容让 AI 用引号包裹在 Mermaid 中如果节点文字包含特殊符号需要使用引号包裹。可以直接在 skill 中规定节点文字如果有中文一律写在引号内避免语法错误。7.5 用 examples 文件训练 AI 的输出习惯如果你发现 AI 生成的结果总是不符合你的审美或规范不要反复修改提示词直接在 examples 目录中加入你满意的成品示例。AI 会参考示例格式输出结果会越来越接近你的预期。7.6 流程图也要纳入版本管理不要只把流程图当作一次性输出。将 Mermaid 代码保存在 Markdown 文档或代码仓库中后续需求变更时直接修改文本再通过 CI 自动渲染成图片。这样流程图就能和代码一起走版本管理不会出现文档和代码脱节的问题。8. 延伸从画流程图到定义“AI 工作流”学会用 skill 画流程图之后你会发现这个思路可以拓展到很多场景。比如用 skill 统一团队的代码提交规范用 skill 生成接口文档用 skill 规范数据库设计文档用 skill 让 AI 输出符合企业安全审计要求的架构图。流程图的本质是“逻辑可视化”而 skill 的本质是“能力封装”。当你能把画流程图这件事封装成一个标准 skill你就已经在构建自己的 AI 工作流了。下一篇可以继续聊如何把流程图 skill 扩展为“架构图 时序图 ER 图”的组合技能以及如何把生成的图表自动提交到 Git 仓库。如果你在配置过程中遇到任何问题欢迎在评论区留言我会尽量帮你排查。