excalidraw-diagram
Skill0 starsChanged 4 months agoMITView on GitHub
Generate structured, argumentative Excalidraw diagrams from natural language descriptions. Use when creating architecture diagrams, system visualizations, data flow diagrams, pipeline visualizations, workflow charts, or any technical illustration that outputs .excalidraw JSON files. DO NOT USE FOR: Mermaid or markdown diagrams, text-based documentation (use brainstorming or architect), code generation, or non-visual output.
51 other projects use a version of this, 25 of them edited.
Adopted by
Most recently taken up by
- podo/design-agent-skillstheir own version, first seen Nov 8, 2026
- levi-qiao/obsidian-llm-wikitheir own version, first seen Nov 8, 2026
- ZhouYinLong-lab/Dog-Skillstheir own version, first seen Nov 8, 2026
- codetesla51/skillsedited, first seen Nov 1, 2026
- hmjBill/skillstheir own version, first seen Oct 29, 2026
- tony-hoang-ai-automation/mkt-skillsedited, first seen Oct 25, 2026
Used with
Projects with it also use mermaid-visualizer, obsidian-canvas-creator and 10 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
BCS1037Skillmermaid-visualizer
Transform text content into professional Mermaid diagrams for presentations and documentation. Use when users ask to visualize concepts, create flowcharts, or make diagrams from text. Supports process flows, system architectures, comparisons, mindmaps, and more with built-in syntax error prevention.
Also in 7 projects that use this
BCS1037Skillobsidian-canvas-creator
Create Obsidian Canvas files from text content, supporting both MindMap and freeform layouts. Use this skill when users want to visualize content as an interactive canvas, create mind maps, or organize information spatially in Obsidian format.
Also in 4 projects that use this
MicrosoftSkillrvap-brand
Applies the RVAP (Real Value Acceleration Program) brand identity — colors, fonts, logo, and layout patterns — consistently to any GitHub Pages website. Use this skill whenever someone asks to brand, rebrand, apply RVAP/RVAS visual identity, make a site look RVAP, match the brand kit, or transform a GitHub Pages site's look and feel to match RVAP. Also trigger when the user shares an HTML/CSS/MkDocs site and says it should look consistent with other RVAP/RVAS materials, even if they don't explicitly say "brand".
Also in 3 projects that use this
XIYBHKSkillhuashu-design
花叔Design(Huashu-Design)——用HTML做高保真原型、交互Demo、幻灯片、动画、设计变体探索+设计方向顾问+专家评审的一体化设计能力。HTML是工具不是媒介,根据任务embody不同专家(UX设计师/动画师/幻灯片设计师/原型师),避免web design tropes。触发词:做原型、设计Demo、交互原型、HTML演示、动画Demo、设计变体、hi-fi设计、UI mockup、prototype、设计探索、做个HTML页面、做个可视化、app原型、iOS原型、移动应用mockup、导出MP4、导出GIF、60fps视频、设计风格、设计方向、设计哲学、配色方案、视觉风格、推荐风格、选个风格、做个好看的、评审、好不好看、review this design。**主干能力**:Junior Designer工作流(先给假设+reasoning+placeholder再迭代)、反AI slop清单、React+Babel最佳实践、Tweaks变体切换、Speaker Notes演示、Starter Components(幻灯片外壳/变体画布/动画引擎/设备边框)、App原型专属守则(默认从Wikimedia/Met/Unsplash取真图、每台iPhone包AppPhone状态管理器可交互、交付前跑Playwright点击测试)、Playwright验证、HTML动画→MP4/GIF视频导出(25fps基础 + 60fps插帧 + palette优化GIF + 6首场景化BGM + 自动fade)。**需求模糊时的Fallback**:设计方向顾问模式——从5流派×20种设计哲学(Pentagram信息建筑/Field.io运动诗学/Kenya Hara东方极简/Sagmeister实验先锋等)推荐3个差异化方向,展示24个预制showcase(8场景×3风格),并行生成3个视觉Demo让用户选。**交付后可选**:专家级5维度评审(哲学一致性/视觉层级/细节执行/功能性/创新性各打10分+修复清单)。
Also in 4 projects that use this
HK-hubSkilldefuddle
Extract clean markdown content from web pages using Defuddle CLI, removing clutter and navigation to save tokens. Use instead of WebFetch when the user provides a URL to read or analyze, for online documentation, articles, blog posts, or any standard web page.
Also in 5 projects that use this
wangzhuofengSkillobsidian-bases
Create and edit Obsidian Bases (.base files) with views, filters, formulas, and summaries. Use when working with .base files, creating database-like views of notes, or when the user mentions Bases, table views, card views, filters, or formulas in Obsidian.
Also in 6 projects that use this
Other versions51 projects use a version of this.
Word for word · 0
None found.
Edited · 25
- coleam00/excalidraw-diagram-skill★ 4.7k20% same
- luanmorenommaciel/agentspec★ 25620% same
- walidboulanouar/Ay-Skills★ 9018% same
- tenstorrent/tt-xla★ 7421% same
- kv0906/cc-skills★ 4220% same
- codetesla51/skills★ 3220% same
- ccomkhj/skills★ 1020% same
- kevin-burns/claude-skills★ 1018% same
- microsoft/frontier-agentic-cobuild-rvas★ 720% same
- microsoft/frontier-ai-starter-kit-rvas★ 720% same
15 more not listed
Wrote their own version · 26
- breferrari/obsidian-mind★ 5.4ksame name
- axtonliu/axton-obsidian-visual-skills★ 3.6ksame name
- xstongxue/best-skills★ 2.9ksame name
- podo/design-agent-skills★ 32same name
- Treasoni/kaoyan_skills★ 19same name
- aiagentwithdhruv/skills★ 16same name
- levi-qiao/obsidian-llm-wiki★ 9same name
- BCS1037/awesome-obsidian-skills★ 8same name
- ZhouYinLong-lab/Dog-Skills★ 7same name
- HK-hub/AgentSkills★ 6same name
16 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository29 other files it gives its agents.
- architectSkill
- brainstormingSkill
- concise-planningSkill
- context-engineerSkill
- data-analystSkill
- data-deprecation-analysisSkill
- data-engineeringSkill
- analystSkill
- detectiveSkill
- editorSkill
- inspectorSkill
- data-narrativeSkill
- data-scienceSkill
- genai-securitySkill
- guardianSkill
- holdout-validationSkill
- implementerSkill
- llm-app-patternsSkill
- llm-memSkill
- opsSkill
- prompt-librarySkill
- security-boundariesSkill
- story-masterSkill
- story-plannerSkill
- subagent-executionSkill
- systematic-debuggingSkill
- task-routingSkill
- thinkerSkill
- verification-before-completionSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
16 rules. 0 are common, 12 are distinctive, and 4 are very specific to this project.
0
Common
Most of the 45 edited versions we read keep these.
12
Distinctive
This author's own choices. Worth a look.
4
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 29
The Isomorphism Test: If you removed all text, would the structure alone communicate the concept?
- Distinctive: line 46
Before designing, determine what level of detail this diagram needs:
- Distinctive: line 55
Read the content. For each concept, ask:
- Distinctive: line 84
Before writing JSON, mentally trace how the eye moves through the diagram.
- Very specific: line 88
Create the .excalidraw file.
- Very specific: line 96
File naming: Use kebab-case descriptive names: auth-architecture.excalidraw, etl-pipeline-flow.excalidraw, rag-pipeline.excalidraw.
- Distinctive: line 100
After generating JSON, review the file against the Definition of Done checklist below.
- Distinctive: line 106
Use abstract shapes when:
- Distinctive: line 114
Use concrete examples when:
- Distinctive: line 136
Not every piece of text needs a shape around it: Default to free-floating text.
- Distinctive: line 169
Connections Required: If A relates to B, there must be an arrow.
- Very specific: line 175
Opacity: Always opacity: 100. Use color, size, and stroke width for hierarchy instead of transparency.
- Distinctive: line 176
Small Markers: Use 10-20px ellipses as timeline markers, bullet points, and visual anchors instead of full shapes.
- Distinctive: line 188
After all sections are in place, review the complete JSON for binding correctness and spacing balance.
- Distinctive: line 195
Quality Gate: All elements properly bound, no orphaned arrows, visual variety present
- Very specific: line 239
NO inventing colors: All colors must come from references/color-palette.md.
“Common” is measured: kept by at least 6 in 10 of the 45 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Excalidraw Diagram Creator
Version: 9.0 | Updated: 01-July-2026 | Architect: Karim Bhalwani | Deps: none
Overview
Generate .excalidraw JSON files that argue visually, not just display information. Every diagram produced by this skill uses shape, layout, and color to mirror the concept it represents - not just label it.
Output files are saved to an excalidraw/ directory (created automatically if it does not exist). Users open .excalidraw files in the VS Code Excalidraw extension, at excalidraw.com, or in Obsidian.
Core Philosophy
Diagrams should ARGUE, not DISPLAY.
A diagram is not formatted text. It is a visual argument that shows relationships, causality, and flow that words alone cannot express. The shape should BE the meaning.
- The Isomorphism Test: If you removed all text, would the structure alone communicate the concept? If not, redesign.
- The Education Test: Could someone learn something concrete from this diagram, or does it just label boxes? A good diagram teaches.
When to Use
- Visualizing system architectures alongside
SPEC.md - Illustrating data pipelines (ETL, Medallion, Data Vault)
- Documenting RAG pipelines, agent workflows, or prompt flows
- Creating component interaction diagrams or state machines
- Mapping workflows and process flows for planning
- Producing before/after comparisons for refactoring proposals
- Any request for a diagram, visualization, flowchart, or architecture picture
Workflow
Step 0: Assess Depth Required
Before designing, determine what level of detail this diagram needs:
- Simple/Conceptual: Abstract shapes, labels, relationships. Use for mental models, philosophies, quick overviews.
- Comprehensive/Technical: Concrete examples, real data formats, actual event names. Use for systems, architectures, tutorials.
For technical diagrams, research actual specifications before drawing. Look up real event names, API endpoints, data formats - never use generic placeholders.
Step 1: Understand Deeply
Read the content. For each concept, ask:
- What does this concept DO? (not what IS it)
- What relationships exist between concepts?
- What is the core transformation or flow?
- What would someone need to SEE to understand this?
Step 2: Map Concepts to Visual Patterns
For each concept, find the visual pattern that mirrors its behavior. Consult references/visual-patterns.md for the full pattern library.
| If the concept... | Use this pattern |
| Spawns multiple outputs | Fan-out (radial arrows from center) |
| Combines inputs into one | Convergence (funnel, arrows merging) |
| Has hierarchy or nesting | Tree (lines + free-floating text) |
| Is a sequence of steps | Timeline (line + dots + labels) |
| Loops or improves continuously | Spiral/Cycle (arrow returning to start) |
| Is an abstract state or context | Cloud (overlapping ellipses) |
| Transforms input to output | Assembly line (before → process → after) |
| Compares two things | Side-by-side (parallel with contrast) |
| Separates into phases | Gap/Break (visual separation) |
Step 3: Ensure Variety
For multi-concept diagrams: each major concept must use a different visual pattern. No uniform card grids. No equal boxes. Visual variety mirrors conceptual variety.
Step 4: Sketch the Flow
Before writing JSON, mentally trace how the eye moves through the diagram. There should be a clear visual story - typically left→right or top→bottom.
Step 5: Generate JSON
Create the .excalidraw file. For the JSON structure, element templates, and color palette, consult:
references/color-palette.md- All color choicesreferences/element-templates.md- Copy-paste JSON for each element typereferences/json-schema.md- Excalidraw JSON format
Output directory: Save all .excalidraw files to the excalidraw/ directory at the workspace root. Create the directory if it does not exist.
File naming: Use kebab-case descriptive names: auth-architecture.excalidraw, etl-pipeline-flow.excalidraw, rag-pipeline.excalidraw.
Step 6: Verify Structure
After generating JSON, review the file against the Definition of Done checklist below. Verify element bindings, spacing, and that every relationship has an arrow or line.
Depth Levels
Simple / Conceptual Diagrams
Use abstract shapes when:
- Explaining a mental model or philosophy
- The audience does not need technical specifics
- The concept IS the abstraction (e.g., "separation of concerns")
Comprehensive / Technical Diagrams
Use concrete examples when:
- Diagramming a real system, protocol, or architecture
- The audience needs to understand what things actually look like
- You are showing how multiple technologies integrate
For technical diagrams, include evidence artifacts - code snippets, JSON payloads, real event names embedded directly in the diagram using dark-background rectangles with colored text. See references/color-palette.md for evidence artifact colors.
Multi-Zoom Architecture
Comprehensive diagrams operate at multiple zoom levels simultaneously:
| Level | What It Shows | Example |
| Level 1: Summary Flow | Full pipeline at a glance | Input → Processing → Output |
| Level 2: Section Boundaries | Labeled regions grouping related components | Backend / Frontend, Setup / Execution / Cleanup |
| Level 3: Detail Inside Sections | Evidence artifacts, code snippets, concrete examples | Actual API response format inside a "Backend" section |
For comprehensive diagrams, aim to include all three levels.
Container vs. Free-Floating Text
Not every piece of text needs a shape around it. Default to free-floating text. Add containers only when they serve a purpose.
| Use a Container When... | Use Free-Floating Text When... |
| It is the focal point of a section | It is a label or description |
| It needs visual grouping with other elements | It is supporting detail or metadata |
| Arrows need to connect to it | It describes something nearby |
| The shape itself carries meaning (diamond = decision) | Typography alone creates sufficient hierarchy |
| It represents a distinct "thing" in the system | It is a section title or annotation |
Rule: Aim for <30% of text elements inside containers. Use font size and color for hierarchy instead of boxes.
Shape Meaning
Choose shape based on what it represents - or use no shape at all:
| Concept Type | Shape | Why |
| Labels, descriptions | none (free-floating text) | Typography creates hierarchy |
| Section titles | none (free-floating text) | Font size/weight is enough |
| Timeline markers | small ellipse (10-20px) | Visual anchor, not container |
| Start, trigger, input | ellipse | Soft, origin-like |
| End, output, result | ellipse | Completion, destination |
| Decision, condition | diamond | Classic decision symbol |
| Process, action, step | rectangle | Contained action |
| Abstract state, context | overlapping ellipse | Fuzzy, cloud-like |
| Hierarchy node | lines + text (no boxes) | Structure through lines |
Layout Principles
- Hierarchy Through Scale: Hero elements 300×150, primary 180×90, secondary 120×60, small 60×40
- Whitespace = Importance: The most important element has 200px+ of empty space around it
- Flow Direction: Guide the eye left→right or top→bottom for sequences, radial for hub-and-spoke
- Connections Required: If A relates to B, there must be an arrow. Position alone does not show relationships.
Modern Aesthetics
- Roughness:
roughness: 0for clean modern diagrams (default). Useroughness: 1only for hand-drawn/informal. - Stroke Width:
1= thin/elegant,2= standard shapes/arrows,3= bold emphasis (use sparingly) - Opacity: Always
opacity: 100. Use color, size, and stroke width for hierarchy instead of transparency. - Small Markers: Use 10-20px ellipses as timeline markers, bullet points, and visual anchors instead of full shapes.
Large Diagram Strategy
For comprehensive or technical diagrams, build the JSON one section at a time. Do NOT generate the entire file in a single pass.
- Create the base file with the JSON wrapper and first section of elements.
- Add one section per edit. Each section gets its own dedicated pass.
- Use descriptive string IDs (e.g.,
"trigger_rect","arrow_fan_left") for readability. - Namespace seeds by section (section 1 uses 100xxx, section 2 uses 200xxx) to avoid collisions.
- Update cross-section bindings as you go - edit earlier elements'
boundElementswhen adding connecting arrows.
After all sections are in place, review the complete JSON for binding correctness and spacing balance.
Outputs & Deliverables
- Primary Output:
.excalidrawJSON file saved toexcalidraw/directory - Secondary Output: Brief description of the diagram's structure and how to open it
- Success Criteria: Diagram passes the Isomorphism Test and Education Test
- Quality Gate: All elements properly bound, no orphaned arrows, visual variety present
Definition of Done
Conceptual Checks
- Isomorphism: Each visual structure mirrors its concept's behavior
- Argument: The diagram shows something text alone could not
- Variety: Each major concept uses a different visual pattern
- No uniform containers: Avoided card grids and equal boxes
Container Discipline
- Minimal containers: Most text is free-floating, <30% inside shapes
- Lines as structure: Tree/timeline patterns use lines + text, not boxes
- Typography hierarchy: Font size and color create visual hierarchy
Structural Checks
- Connections: Every relationship has an arrow or line
- Flow: Clear visual path for the eye to follow
- Hierarchy: Important elements are larger and more isolated
Technical Checks
- Text clean:
textandoriginalTextcontain only readable words - Font:
fontFamily: 3on all text elements - Roughness:
roughness: 0unless hand-drawn style explicitly requested - Opacity:
opacity: 100on all elements - Output location: File saved to
excalidraw/directory - Valid JSON: File is valid Excalidraw JSON with
type: "excalidraw",version: 2
Evidence Checks (Technical Diagrams Only)
- Research done: Actual specs, formats, event names looked up
- Evidence artifacts: Code snippets, JSON examples, or real data included
- Multi-zoom: Summary flow + section boundaries + detail present
- Concrete over abstract: Real content shown, not just labeled boxes
Constraints
- NO render pipeline. This skill generates
.excalidrawJSON only. Users view diagrams in VS Code Excalidraw extension, excalidraw.com, or Obsidian. - NO image generation. Output is structured JSON, not PNG/SVG.
- NO implementation code. Diagrams only - do not implement systems shown in diagrams.
- NO inventing colors. All colors must come from
references/color-palette.md.
Common Pitfalls
- Uniform Card Grids: Making every concept the same rectangle in a grid. Each concept should use a visual pattern that mirrors its behavior.
- Everything in Boxes: Putting every label in a rectangle. Default to free-floating text; add containers only when they carry meaning.
- Generic Placeholders: Using "Event 1", "Step A", "Input" instead of real terminology. Research actual names, formats, and data.
- Missing Connections: Placing elements near each other without arrows. Proximity does not show relationships - arrows do.
- Ignoring Scale Hierarchy: Making all elements the same size. Important elements should be visually dominant (larger, more whitespace).
- Broken Bindings: Arrow
startBinding/endBindingreferencing element IDs that do not exist, or missingboundElementson the target shape. - Token Overflow on Large Diagrams: Generating entire comprehensive diagrams in one pass. Build section-by-section to stay within output limits.
Integration Points
| Phase | Input From | Output To | Context |
| Architecture | architect | SPEC.md companion | Visual architecture alongside specification |
| Data Design | data-engineering | Pipeline documentation | ETL/Medallion/Data Vault visualizations |
| AI Systems | llm-app-patterns | Pattern documentation | RAG pipeline and agent architecture diagrams |
| Planning | concise-planning | Workflow visualization | Process flow diagrams for implementation |
| Discovery | brainstorming | Idea visualization | Visual exploration of design options |
| Review | guardian | Review documentation | Architecture review visual aids |
References
Load these before generating any diagram:
Reference Documents
- color-palette.md - Single source of truth for all color choices. Load before generating any diagram. Contains semantic shape colors, text hierarchy colors, and evidence artifact colors.
- element-templates.md - Copy-paste JSON templates for each Excalidraw element type (text, rectangle, arrow, line, ellipse, diamond). Pull colors from color-palette.md based on each element's semantic purpose.
- json-schema.md - Excalidraw JSON format reference. Element types, common properties, text-specific properties, arrow bindings, and the top-level file structure.
- visual-patterns.md - Visual pattern library with ASCII examples. Nine reusable patterns (fan-out, convergence, tree, timeline, cycle, cloud, assembly line, side-by-side, gap/break) with when-to-use guidance and implementation notes.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

