/install excalidraw-pro
Excalidraw Diagram Generator
You generate .excalidraw files from natural language descriptions. The user can open these files directly in Excalidraw (File → Open) or drag-and-drop onto the canvas.
Workflow
- Understand the description — identify what the user wants to visualize
- Auto-select diagram type — choose the best type from the table below
- Generate the intermediate JSON — write a structured
diagram_input.json - Run the build script — execute
build_excalidraw.pyto produce the file - Tell the user — report the output file path and how to open it
Diagram Type Selection
| What the user describes | Type to use |
|---|---|
| Steps, process, decisions, branching | flowchart |
| Systems, services, components, infrastructure | architecture |
| Topics, ideas, concepts radiating from a center | mindmap |
| Two or more parties exchanging messages over time | sequence |
When in doubt, prefer flowchart — it handles the widest range of content.
Intermediate JSON Formats
Generate one of the following formats as diagram_input.json in the current working directory.
Flowchart
{
"type": "flowchart",
"title": "Short descriptive title",
"nodes": [
{"id": "unique_id", "label": "Display Text", "shape": "rectangle"},
{"id": "decision", "label": "Is it valid?", "shape": "diamond"},
{"id": "start_end", "label": "Start", "shape": "oval"}
],
"edges": [
{"from": "node_a", "to": "node_b"},
{"from": "decision", "to": "node_c", "label": "Yes"},
{"from": "decision", "to": "node_d", "label": "No"}
]
}
Shape choices: rectangle (default), diamond (decisions/conditions), oval (start/end points)
Architecture
{
"type": "architecture",
"title": "System Architecture",
"groups": [
{
"id": "frontend",
"label": "Frontend",
"nodes": [
{"id": "web", "label": "Web App"},
{"id": "mobile", "label": "Mobile App"}
]
},
{
"id": "backend",
"label": "Backend",
"nodes": [
{"id": "api", "label": "API Gateway"},
{"id": "auth", "label": "Auth Service"}
]
}
],
"nodes": [],
"edges": [
{"from": "web", "to": "api", "label": "HTTPS"},
{"from": "mobile", "to": "api", "label": "HTTPS"}
]
}
Note: groups is optional. Use nodes at the top level for ungrouped components. You can mix both.
Mind Map
{
"type": "mindmap",
"title": "Topic Overview",
"root": "Central Topic",
"branches": [
{
"label": "Branch 1",
"children": ["Subtopic A", "Subtopic B", "Subtopic C"]
},
{
"label": "Branch 2",
"children": ["Subtopic D", "Subtopic E"]
}
]
}
Sequence Diagram
{
"type": "sequence",
"title": "Interaction Flow",
"actors": ["User", "Frontend", "API", "Database"],
"messages": [
{"from": "User", "to": "Frontend", "label": "Click Login"},
{"from": "Frontend", "to": "API", "label": "POST /login"},
{"from": "API", "to": "Database", "label": "Query user"},
{"from": "Database", "to": "API", "label": "Return record"},
{"from": "API", "to": "Frontend", "label": "JWT token"},
{"from": "Frontend", "to": "User", "label": "Redirect"}
]
}
Execution Steps
After writing diagram_input.json, run the build script:
python \x3Cskill_dir>/scripts/build_excalidraw.py \
--input diagram_input.json \
--output \x3Ctitle>.excalidraw
Where \x3Cskill_dir> is the directory containing this SKILL.md file, and \x3Ctitle> is a sanitized version of the diagram title.
Output Message to User
After successful generation, tell the user:
✓ Diagram saved to: \x3Cfilename>.excalidraw
To open in Excalidraw:
1. Go to https://excalidraw.com
2. Click the menu (☰) → Open → select the file
— or — drag the file onto the canvas
Tips for Good Diagrams
- Keep labels concise — 1–5 words per node works best
- Limit nodes — 5–15 nodes per diagram for readability; split complex diagrams into multiple files
- Use meaningful IDs — snake_case, no spaces (e.g.,
api_gateway,check_auth) - Flowchart edges — always go from a defined node ID to another defined node ID
- Sequence actors — list them in the order they first appear in the conversation
Error Handling
If the script fails:
- Check that
diagram_input.jsonhas valid JSON syntax - Ensure all edge
from/tovalues match existing nodeidvalues - Verify Python 3.6+ is available (
python3 --version)
- 确保已安装 OpenClaw(本地或 Docker 部署)
- 在对话框中输入安装命令:
/install excalidraw-pro - 安装完成后,直接呼叫该 Skill 的名称或使用
/excalidraw-pro触发 - 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
excalidraw 是什么?
Generate Excalidraw diagrams (.excalidraw files) from natural language descriptions. Use this skill whenever the user asks to create, draw, or visualize a di... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 177 次。
如何安装 excalidraw?
在 OpenClaw 或 Claude Code 对话框中运行命令「/install excalidraw-pro」即可一键安装,无需额外配置。
excalidraw 是免费的吗?
是的,excalidraw 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。
excalidraw 支持哪些平台?
excalidraw 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。
谁开发了 excalidraw?
由 jannik689(@jannik689)开发并维护,当前版本 v1.0.0。