excalidraw-creator
Create hand-drawn style Excalidraw diagrams, flowcharts, and architecture visuals as PNG images
Install via CLI (Recommended)
clawhub install openclaw/skills/skills/plgonzalezrx8/excalidraw-creatorExcalidraw Creator
Generate beautiful hand-drawn style diagrams rendered as PNG images.
Workflow
- Generate JSON — Write Excalidraw element array based on what the user wants
- Save to file — Write JSON to
/tmp/<name>.excalidraw - Render —
node <skill_dir>/scripts/render.js /tmp/<name>.excalidraw /tmp/<name>.png - Send — Send the PNG via message tool with
filePath
Quick Reference
node <skill_dir>/scripts/render.js input.excalidraw output.png
Element Types
| Type | Shape | Key Props |
|---|---|---|
rectangle | Box | x, y, width, height |
ellipse | Oval | x, y, width, height |
diamond | Decision | x, y, width, height |
arrow | Arrow | connects shapes (see Arrow Binding below) |
line | Line | x, y, points: [[0,0],[dx,dy]] |
text | Label | x, y, text, fontSize, fontFamily (1=hand, 2=sans, 3=code) |
Styling (all shapes)
{
"strokeColor": "#1e1e1e",
"backgroundColor": "#a5d8ff",
"fillStyle": "hachure",
"strokeWidth": 2,
"roughness": 1,
"strokeStyle": "solid"
}
fillStyle: hachure (diagonal lines), cross-hatch, solid
roughness: 0=clean, 1=hand-drawn (default), 2=very sketchy
Arrow Binding (IMPORTANT)
Always use from/to bindings for arrows. The renderer auto-calculates edge intersection points — no manual coordinate math needed.
Simple arrow (straight, between two shapes)
{"type":"arrow","id":"a1","from":"box1","to":"box2","strokeColor":"#1e1e1e","strokeWidth":2,"roughness":1}
That's it. No x, y, or points needed. The renderer computes start/end at shape edges.
Multi-segment arrow (routed path with waypoints)
For arrows that need to go around obstacles, use absolutePoints with intermediate waypoints:
{
"type":"arrow","id":"a2","from":"box3","to":"box1",
"absolutePoints": true,
"points": [[375,500],[30,500],[30,127],[60,127]],
"strokeColor":"#1e1e1e","strokeWidth":2,"roughness":1
}
- First point = near source shape edge (will snap to actual edge)
- Last point = near target shape edge (will snap to actual edge)
- Middle points = absolute waypoint coordinates for routing
Arrow labels
Place a separate text element near the arrow midpoint:
{"type":"text","id":"label","x":215,"y":98,"width":85,"height":16,"text":"sends data","fontSize":10,"fontFamily":1,"strokeColor":"#868e96"}
Arrow styles
"strokeStyle":"dashed"— dashed line"startArrowhead": true— bidirectional arrow
Template: Flowchart with Bindings
{
"type": "excalidraw",
"version": 2,
"elements": [
{"type":"rectangle","id":"start","x":150,"y":50,"width":180,"height":60,"strokeColor":"#1e1e1e","backgroundColor":"#b2f2bb","fillStyle":"hachure","strokeWidth":2,"roughness":1},
{"type":"text","id":"t1","x":200,"y":65,"width":80,"height":30,"text":"Start","fontSize":20,"fontFamily":1,"strokeColor":"#1e1e1e"},
Metadata
Not sure this is the right skill?
Describe what you want to build — we'll match you to the best skill from 16,000+ options.
Find the right skillPaste this into your clawhub.json to enable this plugin.
{
"plugins": {
"official-plgonzalezrx8-excalidraw-creator": {
"enabled": true,
"auto_update": true
}
}
}Related Skills
openrouter-analytics
Review OpenRouter usage, analytics, and troubleshooting data via API. Use when the user asks for spend/usage monitoring, activity trends, per-key management reporting, or deep investigation of specific request IDs (latency, provider fallback, finish reason, token/cost breakdown).
apple-remind-me
Natural language reminders that create actual Apple Reminders.app entries (macOS-native)
workflow-orchestrator
Structural parity skeleton for queue-driven orchestration in a workflow context.
web-markdown-navigator
Fetch webpages and return clean markdown instead of raw HTML. Use for URL reading, extraction, and summarization tasks where the user wants markdown output; use browser fallback for JS-heavy/SPA pages when extraction is thin.
openclaw-healthcheck-cron
Create and run a reusable OpenClaw deep healthcheck automation using a cron job plus a script. Use when setting up scheduled OpenClaw health audits, standardizing security/status checks, sanitizing environment-specific values for sharing, and packaging the setup for reuse.