
Excalidraw Diagram
Turn specs, brainstorms, or architecture notes into Excalidraw flowcharts and mind maps saved locally in Obsidian, standard, or animated format.
Overview
Excalidraw Diagram is an agent skill most often used in Build (also Validate, Idea) that generates Excalidraw flowcharts and mind maps from text in Obsidian, standard, or animated export modes.
Install
npx skills add https://github.com/axtonliu/axton-obsidian-visual-skills --skill excalidraw-diagramWhat is this skill?
- Three output modes: Obsidian .md (default), Standard .excalidraw for excalidraw.com, and Animated .excalidraw with eleme
- Trigger-aware workflow: detects mode from English/Chinese keywords before choosing diagram type and JSON shape
- End-to-end pipeline: analyze hierarchy and relationships → pick diagram type → generate JSON → auto-save to cwd → return
- Obsidian mode uses a fixed frontmatter + excalidraw-plugin parsed template for vault-native editing
- Supports flowcharts, mind maps, and concept visualizations from plain text content
- 3 output modes: Obsidian .md, Standard .excalidraw, Animated .excalidraw
Adoption & trust: 2.4k installs on skills.sh; 3k GitHub stars; 3/3 security scanners passed (skills.sh audits).
What problem does it solve?
You have dense notes or a spec in text but no quick way to produce an editable diagram file in your vault or repo.
Who is it for?
Solo builders using Obsidian or Excalidraw who want agent-generated architecture, flow, or mind-map diagrams from meeting notes or feature descriptions.
Skip if: Teams that need Figma-grade UI mocks, pixel-perfect branding, or automated rendering inside a CI pipeline without local files.
When should I use this skill?
User mentions Excalidraw, diagram, 画图, 流程图, 思维导图, 可视化, standard excalidraw, Excalidraw动画, 动画图, or animate.
What do I get? / Deliverables
You get a saved .md or .excalidraw file in the working directory with the right template for Obsidian, excalidraw.com, or animation export.
- .md Obsidian excalidraw embed
- .excalidraw JSON file
- Animated-order .excalidraw for excalidraw-animate
Recommended Skills
Journey fit
Spans multiple journey phases - primary shelf plus alternate fits below.
Diagram generation is filed under Build → docs because solo builders most often need persistent visual artifacts alongside implementation notes, READMEs, and Obsidian vaults. Docs is the canonical shelf for exportable diagram files (.md plugin embeds, .excalidraw JSON) rather than live UI mock work in frontend.
Where it fits
Map competitor feature trees as a mind map before choosing what to build.
Turn a one-page MVP scope into a user-flow Excalidraw for stakeholder review.
Emit an Obsidian-ready .md diagram for system architecture next to the README.
Visualize milestone dependencies as a flowchart for your solo backlog.
How it compares
Use for file-based Excalidraw generation from chat, not as a live canvas MCP or generic whiteboard API integration.
Common Questions / FAQ
Who is excalidraw-diagram for?
Indie developers and knowledge workers who keep specs in Obsidian or markdown and want Excalidraw-compatible diagrams without manual drawing.
When should I use excalidraw-diagram?
During Validate when scoping flows on a landing or prototype plan; during Build when documenting architecture or PM flows in docs; during Idea when visualizing research threads—any time triggers like Excalidraw, diagram, 流程图, or animate appear.
Is excalidraw-diagram safe to install?
Review the Security Audits panel on this Prism page and inspect the skill package before granting your agent filesystem write access in sensitive repos.
SKILL.md
READMESKILL.md - Excalidraw Diagram
# Excalidraw Diagram Generator Create Excalidraw diagrams from text content with multiple output formats. ## Output Modes 根据用户的触发词选择输出模式: | 触发词 | 输出模式 | 文件格式 | 用途 | |--------|----------|----------|------| | `Excalidraw`、`画图`、`流程图`、`思维导图` | **Obsidian**(默认) | `.md` | 在 Obsidian 中直接打开 | | `标准Excalidraw`、`standard excalidraw` | **Standard** | `.excalidraw` | 在 excalidraw.com 打开/编辑/分享 | | `Excalidraw动画`、`动画图`、`animate` | **Animated** | `.excalidraw` | 拖到 excalidraw-animate 生成动画 | ## Workflow 1. **Detect output mode** from trigger words (see Output Modes table above) 2. Analyze content - identify concepts, relationships, hierarchy 3. Choose diagram type (see Diagram Types below) 4. Generate Excalidraw JSON (add animation order if Animated mode) 5. Output in correct format based on mode 6. **Automatically save to current working directory** 7. Notify user with file path and usage instructions ## Output Formats ### Mode 1: Obsidian Format (Default) **严格按照以下结构输出,不得有任何修改:** ```markdown --- excalidraw-plugin: parsed tags: [excalidraw] --- ==⚠ Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ⚠== You can decompress Drawing data with the command palette: 'Decompress current Excalidraw file'. For more info check in plugin settings under 'Saving' # Excalidraw Data ## Text Elements %% ## Drawing \`\`\`json {JSON 完整数据} \`\`\` %% ``` **关键要点:** - Frontmatter 必须包含 `tags: [excalidraw]` - 警告信息必须完整 - JSON 必须被 `%%` 标记包围 - 不能使用 `excalidraw-plugin: parsed` 以外的其他 frontmatter 设置 - **文件扩展名**:`.md` ### Mode 2: Standard Excalidraw Format 直接输出纯 JSON 文件,可在 excalidraw.com 打开: ```json { "type": "excalidraw", "version": 2, "source": "https://excalidraw.com", "elements": [...], "appState": { "gridSize": null, "viewBackgroundColor": "#ffffff" }, "files": {} } ``` **关键要点:** - `source` 使用 `https://excalidraw.com`(不是 Obsidian 插件) - 纯 JSON,无 Markdown 包装 - **文件扩展名**:`.excalidraw` ### Mode 3: Animated Excalidraw Format 与 Standard 格式相同,但每个元素添加 `customData.animate` 字段控制动画顺序: ```json { "id": "element-1", "type": "rectangle", "customData": { "animate": { "order": 1, "duration": 500 } }, ...其他标准字段 } ``` **动画顺序规则:** - `order`: 动画播放顺序(1, 2, 3...),数字越小越先出现 - `duration`: 该元素的绘制时长(毫秒),默认 500 - 相同 `order` 的元素同时出现 - 建议顺序:标题 → 主要框架 → 连接线 → 细节文字 **使用方法:** 1. 生成 `.excalidraw` 文件 2. 拖到 https://dai-shi.github.io/excalidraw-animate/ 3. 点击 Animate 预览,然后导出 SVG 或 WebM **文件扩展名**:`.excalidraw` --- ## Diagram Types & Selection Guide 选择合适的图表形式,以提升理解力与视觉吸引力。 | 类型 | 英文 | 使用场景 | 做法 | |------|------|---------|------| | **流程图** | Flowchart | 步骤说明、工作流程、任务执行顺序 | 用箭头连接各步骤,清晰表达流程走向 | | **思维导图** | Mind Map | 概念发散、主题分类、灵感捕捉 | 以中心为核心向外发散,放射状结构 | | **层级图** | Hierarchy | 组织结构、内容分级、系统拆解 | 自上而下或自左至右构建层级节点 | | **关系图** | Relationship | 要素之间的影响、依赖、互动 | 图形间用连线表示关联,箭头与说明 | | **对比图** | Comparison | 两种以上方案或观点的对照分析 | 左右两栏或表格形式,标明比较维度 | | **时间线图** | Timeline | 事件发展、项目进度、模型演化 | 以时间为轴,标出关键时间点与事件 | | **矩阵图** | Matrix | 双维度分类、任务优先级、定位 | 建立 X 与 Y 两个维度,坐标平面安置 | | **自由布局** | Freeform | 内容零散、灵感记录、初步信息收集 | 无需结构限制,自由放置图块与箭头 | ## Design Rules ### Text & Format - **所有文本元素必须使用** `fontFamily: 5`(Excalifont 手写字体) - **文本中的双引号替换规则**:`"` 替换为 `『』` - **文本中的圆括号替换规则**:`()` 替换为 `「」` - **字体大小规则**(硬性下限,低于此值在正常缩放下不可读): - 标题:20-28px(最小 20px) - 副标题:18-20px - 正文/标签:16-18px(最小 16px) - 次要注释:14px(仅限不重要的辅助说明,慎用) - **绝对禁止低于 14px** - **行高**:所有文本使用 `lineHeight: 1.25` - **文字居中估算**:独立文本元素没有自动居中,需手动计算 x 坐标: - 估算文字宽度:`estimatedWidth = text.length * fontSize * 0.5`(CJK 字符用 `* 1.0`) - 居中公式:`x = centerX - estimatedWidth / 2` - 示例:文字 "Hello"(5字符, fontSize 20)居中于 x=300 → `est