sparklabx/drawio-ai-kit
Teach your AI to draw correct, beautiful draw.io diagrams — declarative layout engine, ground-truth stencils, structural validator, vision self-check. AWS · Azure · GCP · Databricks · BPMN. Zero dependencies.
drawio‑ai‑kit – AI 驱动的、经过验证的 draw.io 图表生成
它是什么
- 一个自包含的 CLI(
drawio‑ai)加上一个 技能,让 LLM 代理(Claude、Gemini 等)无需手动调整坐标即可在 draw.io 中构建云架构图。 - 该工具包保证图表中使用的每个模板 ID 在 draw.io 的 AWS/Azure/GCP 库中确实存在,并且布局遵循一组编码的设计原则。
关键组件
| 组件 | 作用 |
|---|---|
| 声明式目录 | 一个基于 JSON 的单一来源,将每个 draw.io 模板 ID(mxgraph.aws4.*、Azure、GCP 等)映射到其分类、规范调色板和连接点。 |
| 设计原则 | 一个 markdown 文件(principles.md),编码了架构和视觉规则(例如,节点不重叠、固定宽高比、颜色一致性)。 |
| 结构验证器 | 一个静态分析引擎,解析生成的 draw.io XML,检查模板有效性,强制执行原则,并在文件保存前报告任何违规。 |
CLI(drawio‑ai) |
打包为单个 Bun 压缩文件(dist/cli.mjs)。它提供命令用于搜索图标、渲染 PNG、验证 XML、审计美学和安装技能。 |
技能(skills/drawio/) |
一个 LLM 可以调用的小型指令集:它询问用户要绘制什么,加载适当的领域参考(AWS、Azure、GCP、Databricks、BPMN),运行构建‑验证‑渲染循环,并返回完成的 .drawio 文件。 |
它如何为 AI 代理工作
- 代理发出自然语言请求(例如,“绘制一个 AWS 三层 Web 应用”)。
drawio‑ai skill提示代理提供缺失的细节(云提供商、拓扑类型)。- 代理使用工具包的 TypeScript API(
Diagram、group、icon、renderTree等)编写一个简短脚本。 drawio‑ai run <script>执行脚本,布局引擎自动计算坐标,并生成图表 XML。drawio‑ai validate检查 XML;任何幻觉模板 ID 都会被捕获。- 可选地,
drawio‑ai render将 XML 转换为 PNG,用于基于视觉的自我检查。 - 最终的
.drawio文件交还给用户。
安装与使用
- 零运行时依赖 – 仅需 Node ≥ 20.6 或 Bun 1.4+。安装程序(
install.sh)将单个二进制文件(drawio‑ai)放入~/.local/bin并注册技能。 - 一行命令:
curl …/install.sh | sh(或手动npm i -g drawio‑ai-kit && drawio‑ai skill install)。 - 编程使用:
import { Diagram, group, icon, renderTree } from "drawio‑ai-kit";– 该库附带完整的 TypeScript 类型定义。 - 安全性:无安装后脚本,无隐藏遥测,捆绑的
dist/是可读源代码的可重现构建。
你可以构建什么
- 云着陆区(AWS Control Tower、Azure CAF、GCP Shared VPC)。
- 网络拓扑(VPC、子网、路由表、EKS 集群等)。
- 多云或混合图(本地 ↔ AWS ↔ Azure)。
- Databricks lakehouse、MLOps 管道、BPMN 流程。
所有示例位于examples/下,可以使用drawio‑ai scaffold搭建。
为什么重要
- 减少幻觉:AI 代理经常发明模板 ID;验证器在图表保存前捕获这些错误。
- 一致的视觉风格:通过强制使用官方图标目录和颜色/大小调色板,图表看起来专业且易于识别。
- 模型友好:技能的步骤小而确定,即使便宜的 LLM(Claude Haiku)也能驱动整个管道。
结论
drawio‑ai-kit 是大型语言模型与精确、符合标准的 draw.io 图表之间的实用桥梁,既为开发者提供 CLI,也为 LLM 代理提供可自动调用的技能。
相关
- 项目
- 项目
- 项目
- 项目
- 项目