with one click
生成 draw.io 图表(.drawio),可选导出 PNG/SVG/PDF
npx skills add https://github.com/debug-zhuweijian/ai-research-toolkit --skill drawioCopy and paste this command into Claude Code to install the skill
生成 draw.io 图表(.drawio),可选导出 PNG/SVG/PDF
npx skills add https://github.com/debug-zhuweijian/ai-research-toolkit --skill drawioCopy and paste this command into Claude Code to install the skill
Coordinate multi-agent academic research workflows with sanitized Paperclip-style handoffs, verification gates, and release-safe outputs.
实现前的信心评估:检查理解和准备的充分程度
任意输入(代码、文档、论文、图片)→ 知识图谱 → 聚类社区 → HTML + JSON + 审计报告
知识库维护 — 扫描新资料、入库、健康检查、统计查询
编排端到端自主 AI 研究项目,双循环架构:内循环快速实验迭代,外循环综合分析引导方向
学术研究全流程编排器:10 阶段从选题到投稿,完整性校验门,两阶段审稿
| name | drawio |
| description | 生成 draw.io 图表(.drawio),可选导出 PNG/SVG/PDF |
| allowed-tools | Bash, Write |
Generate draw.io diagrams as native .drawio files. Optionally export to PNG, SVG, or PDF with the diagram XML embedded (so the exported file remains editable in draw.io).
<DRAWIO_OUTPUT_DIR>/<diagram-name>/ and write the XML to <DRAWIO_OUTPUT_DIR>/<diagram-name>/<diagram-name>.drawio using the Write tool (NOT the current working directory)--embed-diagram to the same subfolder, then delete the source .drawio file.drawio file otherwiseCheck the user's request for a format preference. Examples:
/drawio create a flowchart -> <DRAWIO_OUTPUT_DIR>/flowchart/flowchart.drawio/drawio png flowchart for login -> <DRAWIO_OUTPUT_DIR>/login-flow/login-flow.drawio.png/drawio svg: ER diagram -> <DRAWIO_OUTPUT_DIR>/er-diagram/er-diagram.drawio.svg/drawio pdf architecture overview -> <DRAWIO_OUTPUT_DIR>/architecture-overview/architecture-overview.drawio.pdfIf no format is mentioned, just write the .drawio file and open it in draw.io. The user can always ask to export later.
| Format | Embed XML | Notes |
|---|---|---|
png | Yes (-e) | Viewable everywhere, editable in draw.io |
svg | Yes (-e) | Scalable, editable in draw.io |
pdf | Yes (-e) | Printable, editable in draw.io |
jpg | No | Lossy, no embedded XML support |
PNG, SVG, and PDF all support --embed-diagram -- the exported file contains the full diagram XML, so opening it in draw.io recovers the editable diagram.
The draw.io desktop app includes a command-line interface for exporting.
Try drawio first (works if on PATH), then fall back to the platform-specific path:
/Applications/draw.io.app/Contents/MacOS/draw.iodrawio (typically on PATH via snap/apt/flatpak)"C:\Program Files\draw.io\draw.io.exe" (or the path reported by where drawio)Use which drawio (or where drawio on Windows) to check if it's on PATH before falling back.
drawio -x -f <format> -e -b 10 -o "<DRAWIO_OUTPUT_DIR>/<name>/<name>.drawio.<format>" <input.drawio>
Key flags:
-x / --export: export mode-f / --format: output format (png, svg, pdf, jpg)-e / --embed-diagram: embed diagram XML in the output (PNG, SVG, PDF only)-o / --output: output file path-b / --border: border width around diagram (default: 0)-t / --transparent: transparent background (PNG only)-s / --scale: scale the diagram size--width / --height: fit into specified dimensions (preserves aspect ratio)-a / --all-pages: export all pages (PDF only)-p / --page-index: select a specific page (1-based)open <file>xdg-open <file>start <file><DRAWIO_OUTPUT_DIR>/<diagram-name>/.drawio, .drawio.png, .drawio.pdf) go in the same subfolderlogin-flow, database-schema)name.drawio.png, name.drawio.svg, name.drawio.pdf -- this signals the file contains embedded diagram XML.drawio file -- the exported file contains the full diagram<DRAWIO_OUTPUT_DIR>: base directory where generated .drawio and exported files should be writtenA .drawio file is native mxGraphModel XML. Always generate XML directly -- Mermaid and CSV formats require server-side conversion and cannot be saved as native files.
Every diagram must have this structure:
<mxGraphModel>
<root>
<mxCell id="0"/>
<mxCell id="1" parent="0"/>
<!-- Diagram cells go here with parent="1" -->
</root>
</mxGraphModel>
id="0" is the root layerid="1" is the default parent layerparent="1" unless using multiple layersRounded rectangle:
<mxCell id="2" value="Label" style="rounded=1;whiteSpace=wrap;" vertex="1" parent="1">
<mxGeometry x="100" y="100" width="120" height="60" as="geometry"/>
</mxCell>
Diamond (decision):
<mxCell id="3" value="Condition?" style="rhombus;whiteSpace=wrap;" vertex="1" parent="1">
<mxGeometry x="100" y="200" width="120" height="80" as="geometry"/>
</mxCell>
Arrow (edge):
<mxCell id="4" value="" style="edgeStyle=orthogonalEdgeStyle;" edge="1" source="2" target="3" parent="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
Labeled arrow:
<mxCell id="5" value="Yes" style="edgeStyle=orthogonalEdgeStyle;" edge="1" source="3" target="6" parent="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
| Property | Values | Use for |
|---|---|---|
rounded=1 | 0 or 1 | Rounded corners |
whiteSpace=wrap | wrap | Text wrapping |
fillColor=#dae8fc | Hex color | Background color |
strokeColor=#6c8ebf | Hex color | Border color |
fontColor=#333333 | Hex color | Text color |
shape=cylinder3 | shape name | Database cylinders |
shape=mxgraph.flowchart.document | shape name | Document shapes |
ellipse | style keyword | Circles/ovals |
rhombus | style keyword | Diamonds |
edgeStyle=orthogonalEdgeStyle | style keyword | Right-angle connectors |
edgeStyle=elbowEdgeStyle | style keyword | Elbow connectors |
dashed=1 | 0 or 1 | Dashed lines |
swimlane | style keyword | Swimlane containers |
--) inside XML comments. -- is illegal inside <!-- --> per the XML spec and causes parse errors. Use single hyphens or rephrase.&, <, >, "id values for each mxCell