mcpField
D
drawio-chart

drawio-chart

github.com/snailclimbデザイン・UI710210 回インストール16 週間前に更新
リポジトリ

drawio-chart について

drawio-chartは、図表の要望から.drawioファイルを作成し、必要に応じてPNG、SVG、PDFへ書き出すスキルです。構造化された技術図や記事用の図を作るユーザー向けに、内容に応じた資料と手順を案内します。

主な機能

  1. 01.drawioネイティブファイルの生成
  2. 02必要に応じたPNG、SVG、PDFへの書き出し
  3. 03フローチャート、構成図、シーケンス図などに対応
  4. 04記事から複数の図を抽出
  5. 05構成計画と納品前チェック

活用シーン

  1. 01システム設計文書の構成図作成
  2. 02記事を複数ページの技術図に整理
  3. 03既存の.drawioファイルの編集
  4. 04必要に応じた図のPNG、SVG、PDFへの書き出し

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/snailclimb/aiguide --skill drawio-chart

インストール後、Claude Code で/drawio-chartを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

agents/
openai.yaml
references/
export-and-files.md
style-spec.md
use-cases.md
xml-and-layout.md

詳細

プロジェクトの README より

Draw.io 配图专家

这个 skill 负责把用户的图表需求转成 .drawio 文件,并在需要时导出为 PNG、SVG 或 PDF。

主文件只保留任务路由、工作流和验收规则。详细样式、XML 模板、导出命令和示例按需读取 references/。

什么时候使用

在这些场景下优先使用本 skill:

  • 用户明确要求 draw.io、diagrams.net 或 .drawio
  • 用户要求生成流程图、架构图、时序图、ER 图、状态机图、思维导图
  • 用户希望把图导出为 PNG / SVG / PDF
  • 用户要给技术文章、教程、系统设计文档配图
  • 用户给出一篇文章,希望抽取多张技术图并放进同一个 draw.io 文件

不适合本 skill 的情况:

  • 用户只想要 Mermaid 代码,不需要 .drawio
  • 用户需要的是位图插画、海报或白板风正文配图,而不是结构化图表
  • 用户只是讨论图表思路,还不想真正生成文件

参考路由

按任务需要读取对应参考文件,不要默认把所有参考内容都塞进上下文:

需求读取文件
颜色、字体、节点语义、连线风格、视觉统一规范references/style-spec.md
XML 结构规则、文本标签规则、节点/连线模板、不同图表类型的结构建议references/xml-and-layout.md
导出命令、文件命名、打开方式、交付规则references/export-and-files.md
常见提示词、单图/多图文章配图示例、批量页面生成方式references/use-cases.md

核心规则

  • 默认先生成 .drawio 原生文件,再根据用户要求决定是否导出。
  • 如果用户明确要求导出 PNG / SVG / PDF,仍然先保留 .drawio 作为源文件,除非用户明确要求删除。
  • 输出图表时,优先保证信息结构清晰,再保证视觉统一,不要为了“好看”牺牲可读性。
  • 图表中的 mxCell.value 默认使用纯文本,避免嵌入 HTML 标签。
  • 连线标签保持短小;长说明优先放到节点里或旁注节点里。
  • 能不解释基础概念就不解释,把上下文留给真正影响绘图结果的约束。

图表类型选择

按内容结构选择图表,不要机械套模板:

  • 流程步骤、决策分支、算法逻辑:流程图
  • 模块关系、服务依赖、部署层次:架构图
  • 服务调用、消息交互、时序过程:时序图
  • 实体、字段、主外键关系:ER 图
  • 生命周期、状态迁移、事件驱动:状态机图
  • 概念梳理、知识组织、层级扩展:思维导图

如果用户指定了图表类型,优先按用户要求执行;只有在用户明显选错图表类型时,才简短提醒并给出替代建议。

工作流

1. 识别任务模式

先判断当前属于哪一种:

  • 单张图生成
  • 单张图生成并导出
  • 一篇文章生成多张图
  • 修改已有 .drawio
2. 收集最小必要输入

至少明确这些信息:

  • 图表主题
  • 目标图表类型
  • 关键节点 / 模块 / 实体 / 步骤
  • 节点之间的关系
  • 是否需要导出,以及导出格式

如果用户信息不完整,但可以合理推断,就直接推断并在结果里说明;只有缺少关键结构信息时才追问。

3. 读取对应参考资料
  • 需要统一视觉风格时,读取 references/style-spec.md
  • 需要生成 XML 或判断布局时,读取 references/xml-and-layout.md
  • 需要导出或命名时,读取 references/export-and-files.md
  • 需要给用户展示常见 prompt 或文章配图模式时,读取 references/use-cases.md
4. 先规划,再生成

生成前先在内部明确:

  • 采用哪种图表类型
  • 页面是一张图还是多个 diagram page
  • 节点分组如何布局
  • 哪些连线需要标签,哪些不需要

不要一边写 XML 一边临时想结构。

5. 生成 .drawio

生成时遵循这些顺序:

  1. 标题
  2. 容器 / 分组
  3. 核心节点
  4. 连线
  5. 标签与旁注
6. 导出或打开
  • 用户要求导出时,再执行导出
  • 用户只要求生成时,默认交付 .drawio
  • 如果本机没有 drawio CLI,要明确告知无法自动导出,但 .drawio 已生成

多图文章模式

当用户给一篇文章并要求“生成多张技术配图”时,按这个规则处理:

  • 先从文章中提炼 2-6 个最值得画图的结构
  • 每个结构对应一个独立 diagram page
  • 主文件名默认与文章文件名保持一致
  • 页面名使用英文小写中划线命名
  • 避免把整篇文章所有知识点挤进一张大图

更细的示例和 prompt 写法,读取 references/use-cases.md。

验证清单

交付前至少检查:

  • 图表类型是否和任务匹配
  • 主要节点是否齐全,关系是否画对
  • 连线是否交代清楚方向和语义
  • 文字是否简洁,没有把长句压在边上
  • mxCell.value 中是否混入 HTML 标签
  • 导出文件名是否符合命名规范
  • 如果是多页文件,页面名是否清晰、一致

失败处理

  • 如果用户需求过于模糊,先给出你推断的图表结构,再说明你的假设
  • 如果导出失败,保留 .drawio,报告失败原因和可手动执行的导出命令
  • 如果用户要求的内容更适合 Mermaid 或图片插画,要明确说明,并建议改用更合适的方式

输出要求

  • 默认返回生成文件路径
  • 若执行了导出,同时返回导出文件路径
  • 若存在假设、删减或结构调整,要用一句话说明

コメント