Obsidian Visual Skills Pack — Generate Excalidraw, Mermaid & Canvas Diagrams from Text

Obsidian Visual Skills Pack — Generate Excalidraw, Mermaid & Canvas Diagrams from Text

kepano’s obsidian-skills teach Claude how to edit vault files. Obsidian Visual Skills Pack teaches Claude how to draw — generating Excalidraw diagrams, Mermaid charts, and Canvas mind maps directly in your vault from a single text prompt. Three skills, three output formats, one command: “draw me a diagram of X.” The result is a file you can view, edit, and share natively in Obsidian.

*Source: axtonliu/axton-obsidian-visual-skills on GitHub 产品经理胡笛笛 on Xiaohongshu Axton Liu*

The Three Skills at a Glance

Skill Output Best for File type
Excalidraw Hand-drawn aesthetic diagrams Architecture, flowcharts, system designs .md (Obsidian mode) or .excalidraw
Mermaid Structured charts with syntax validation Sequence diagrams, state machines, process flows Mermaid code block in .md
Canvas Interactive spatial layouts Mind maps, knowledge graphs, relationship webs .canvas (JSON)
"Draw me a diagram of X"
        │
        ├─ Architecture / system design?  → Excalidraw
        │   (hand-drawn feel, flexible layout)
        │
        ├─ Process / sequence / state?    → Mermaid
        │   (structured, version-controllable)
        │
        └─ Relationships / exploration?   → Canvas
            (interactive, node-and-edge, zoomable)

Installation

Via Claude Code marketplace

/plugin marketplace add axtonliu/axton-obsidian-visual-skills
/plugin install obsidian-visual-skills
/reload-plugins

Manual

git clone https://github.com/axtonliu/axton-obsidian-visual-skills.git
cp -r axton-obsidian-visual-skills/skills/ ~/.claude/skills/

Prerequisite for Excalidraw: Install the Excalidraw plugin in Obsidian. Mermaid and Canvas work without extra plugins.

Skill 1: Excalidraw — Hand-Drawn Diagrams

Excalidraw produces diagrams with a hand-drawn aesthetic — the informal, whiteboard-like style that’s become popular in technical documentation and presentations.

Supported diagram types

Type Use case Example prompt
Flowchart Process steps, decision trees “Draw a flowchart of the CI/CD pipeline”
Mind map Brainstorming, topic exploration “Mind map of type system design decisions”
Hierarchy Org charts, class inheritance “Draw the class hierarchy for the AST nodes”
Relationship Entity relationships, dependencies “Diagram the module dependencies in this codebase”
Comparison Side-by-side analysis “Compare static vs dynamic type checking approaches”
Timeline Project phases, historical events “Timeline of programming language paradigms”
Matrix 2D categorization “2x2 matrix: safety vs expressiveness for type systems”
Freeform Custom layouts “Draw the data flow through the PCSAT pipeline”

Output modes

Obsidian mode (default):
  → .md file with embedded Excalidraw JSON
  → Opens directly in Obsidian with Excalidraw plugin
  → Can edit visually in-place

Standard mode:
  → .excalidraw file
  → Editable on excalidraw.com
  → Good for sharing outside Obsidian

Animated mode:
  → .excalidraw file with animation sequencing
  → Elements appear step-by-step
  → Great for presentations and teaching

Activation triggers

Say any of: “Excalidraw”, “diagram”, “flowchart”, “mind map”, “画图”, “流程图”, “思维导图”

Example: Research architecture diagram

You: Draw an Excalidraw diagram showing the PCSAT verification
     pipeline: source program → CHC encoding → PCSAT solver →
     verdict. Show the relational cost invariant as an annotation
     on the encoding step. Use the hierarchy layout.

Claude generates a .md file with embedded Excalidraw JSON. Open it in Obsidian — you see a clean hand-drawn architecture diagram that you can drag, edit, and annotate.

Example: Teaching — step-by-step algorithm

You: Create an animated Excalidraw diagram showing how merge sort
     works on the array [38, 27, 43, 3, 9, 82, 10]. Show each
     split and merge step appearing sequentially.

The animated mode makes elements appear one by one — perfect for lecture slides where you reveal each step as you explain.

Skill 2: Mermaid — Structured Charts

Mermaid generates diagrams as text-based syntax inside Markdown code blocks. The key advantage: version-controllable. You can diff, merge, and track Mermaid diagrams in Git, unlike binary image files.

Supported diagram types

Type Mermaid syntax Use case
Flowchart graph TD/LR Process flows, decision trees
Sequence diagram sequenceDiagram API calls, protocol interactions
State diagram stateDiagram-v2 State machines, automata
Mind map mindmap Topic hierarchies
Circular flow graph with cycles Feedback loops, iterative processes
Class diagram classDiagram OOP design, type hierarchies

Built-in quality checks

The skill includes syntax validation that prevents common Mermaid errors:

  • Naming conflicts between nodes and subgraphs
  • Special characters breaking the parser
  • Subgraph declaration order issues
  • Layout orientation conflicts

Example: Research — type system rules as sequence diagram

You: Create a Mermaid sequence diagram showing the type checking
     process for a function application in STLC:
     1. Check function has arrow type
     2. Check argument matches domain
     3. Return codomain type
     Show the environment lookups and the error case.

Output (in your Obsidian note):

```mermaid
sequenceDiagram
    participant TC as TypeChecker
    participant Env as Γ (Environment)
    participant Fun as e₁ (Function)
    participant Arg as e₂ (Argument)

    TC->>Fun: typecheck(e₁)
    Fun-->>TC: τ₁ → τ₂
    TC->>Arg: typecheck(e₂)
    Arg-->>TC: τ₁'
    alt τ₁ = τ₁'
        TC-->>TC: return τ₂
    else τ₁ ≠ τ₁'
        TC-->>TC: TypeError: expected τ₁, got τ₁'
    end
```

This renders natively in Obsidian’s reading mode — no plugins needed.

Example: Teaching — state machine for a protocol

You: Mermaid state diagram for the TCP 3-way handshake.
     Show CLOSED, SYN_SENT, SYN_RECEIVED, ESTABLISHED states
     with transitions labeled by segment types.

Students see a clean state diagram in their notes. They can copy the Mermaid source, edit it, and submit modified versions for assignments.

Skill 3: Canvas — Interactive Spatial Layouts

Canvas produces .canvas files — Obsidian’s native format for spatial, node-and-edge layouts. Unlike Excalidraw (drawings) or Mermaid (structured charts), Canvas is interactive — you can zoom, pan, drag nodes, and click through to linked notes.

Layout modes

Mode Description Best for
MindMap Radial hierarchy from a central node Topic exploration, brainstorming, chapter outlines
Freeform Flexible positioning with custom connections Knowledge graphs, research landscapes, project boards

Features

  • Responsive node sizing — larger nodes for more content
  • Automatic edge labels — relationships described on connections
  • Color coding — preset and custom colors for grouping
  • Overlap prevention — nodes auto-space to avoid collision
  • Group nodes — cluster related items visually
  • Wikilinks — nodes can link to other vault notes via [[note name]]

Example: Research — literature landscape

You: Create a Canvas mind map of the relational verification
     literature. Center node: "Relational Verification". Branch
     into: Type-based (RelCost, DuCostIt), Logic-based (PCSAT,
     CHC), Simulation-based (bisimulation, coupling). For each
     paper, add author and year. Color-code by approach.

Result: A .canvas file with a zoomable knowledge graph. Each paper is a node with metadata. Clicking a node can link to the clipped paper note (if you used Web Clipper to save it). The entire literature review becomes navigable.

Example: Teaching — course module map

You: Create a Canvas for CS305 Module 3: Memory Safety.
     Central topic: "Memory Safety". Branches:
     - Spatial safety (buffer overflows, bounds checking)
     - Temporal safety (use-after-free, dangling pointers)
     - Rust ownership model (borrow checker, lifetimes)
     - Tools (AddressSanitizer, Valgrind, Miri)
     Link each leaf to the corresponding lecture note if it
     exists in the vault.

Students open the Canvas in Obsidian and navigate the module visually. Each node is a clickable entry point into the relevant lecture notes.

Choosing the Right Skill

What do you need?
│
├─ Something that looks hand-drawn / informal?
│  ├─ Static? → Excalidraw (Obsidian mode)
│  └─ Animated / step-by-step? → Excalidraw (animated mode)
│
├─ Something structured / version-controllable?
│  ├─ Sequence of interactions? → Mermaid (sequence diagram)
│  ├─ State machine? → Mermaid (state diagram)
│  └─ Process flow? → Mermaid (flowchart)
│
└─ Something interactive / navigable?
   ├─ Hierarchical topic? → Canvas (MindMap mode)
   └─ Freeform relationships? → Canvas (Freeform mode)
Factor Excalidraw Mermaid Canvas
Visual style Hand-drawn, informal Structured, clean Interactive nodes
Editability Visual drag-and-drop Edit text source Drag nodes in Obsidian
Git-friendly No (JSON blob) Yes (plain text) Partially (JSON)
Needs plugin Yes (Excalidraw plugin) No (built-in) No (built-in)
Best audience Presentations, papers Documentation, code Exploration, navigation
Animation Yes (animated mode) No No
Links to notes Limited No Yes ([[wikilinks]])

The Full Visual Pipeline

Combined with the other Obsidian tools:

Web Clipper          CLI              kepano/skills      Visual Skills
(CAPTURE)     →    (READ)      →    (EDIT/CREATE)   →   (DRAW)
                                                          │
Clip papers         Search vault     Write .md            ├─ Excalidraw
from arXiv          Read notes       Edit .base           ├─ Mermaid
Save to inbox/      Feed context     Build .canvas        └─ Canvas
                                     Update props

Example flow:
1. Clip 5 papers on type safety with Web Clipper
2. CLI reads them, feeds to Claude
3. kepano/skills organizes metadata in a .base view
4. Visual Skills generates a Canvas knowledge graph
   linking all papers with relationship edges

Research Scenarios

Scenario 1: Paper submission — figure generation

You: I need a figure for Section 3 of our POPL paper showing
     the type system architecture. Draw an Excalidraw diagram
     with: Surface language → Elaboration → Core IR → Type checker
     → Verified program. Show the relational cost annotations
     flowing through each stage.

Export the Excalidraw as SVG/PNG for the paper. The hand-drawn style is acceptable in many PL venues and adds visual warmth to otherwise dense technical content.

Scenario 2: Proof structure visualization

You: Create a Mermaid flowchart showing the dependency structure
     of our soundness proof. Lemma 1 (substitution) feeds into
     Lemma 3 (preservation). Lemma 2 (canonical forms) feeds into
     Lemma 4 (progress). Both feed into Theorem 1 (soundness).
     Color completed lemmas green, in-progress yellow, unstarted red.

Track proof progress visually. Update the Mermaid source as you complete each lemma — it’s just text, so it diffs cleanly in Git.

You: Canvas mind map of all papers cited in our Related Work
     section. Group by: type-based approaches, logic-based
     approaches, testing-based approaches. Add edges where
     Paper A extends Paper B. Link each node to the clipped
     note in my vault.

Navigate the related work spatially. Click a node to read the clipped paper. Identify gaps visually — areas of the canvas with few nodes.

Teaching Scenarios

Scenario 1: Lecture preparation — algorithm animations

You: Animated Excalidraw of Dijkstra's algorithm on a 6-node
     graph. Step 1: initialize distances. Step 2: visit node A.
     Step 3: relax edges. ... Show the priority queue state at
     each step. Each step appears sequentially.

Open the Excalidraw in presentation mode during lecture. Step through the animation as you explain each phase.

Scenario 2: Student reference cards

You: Mermaid class diagram showing the AST node hierarchy for
     our teaching language: Expr (base) → IntLit, BoolLit, BinOp,
     IfExpr, LetExpr, FunExpr, AppExpr. Include the key fields
     for each node.

Students paste this into their own Obsidian notes. They can modify it as they extend the language in assignments.

Scenario 3: Course module navigation

You: Canvas mind map for the entire CS305 syllabus. Center:
     "CS305 Computer Security". Branches for each module
     (Crypto, Web Security, Memory Safety, Access Control,
     Network Security). Each module links to its lecture notes
     folder. Color by unit exam coverage.

Publish this Canvas as the course “home page” in a shared vault. Students navigate the course structure visually instead of scrolling through a flat syllabus.

Scenario 4: Exam review — concept relationships

You: Canvas freeform diagram showing how all CS305 concepts
     connect. Buffer overflow → leads to → code injection.
     ASLR → mitigates → code injection. Stack canaries →
     detect → buffer overflow. Make it dense — this is a
     review sheet, not a teaching tool.

Students use this as a study map. They can add their own nodes and edges as they study.

How LearnAI Team Could Use This

  • Paper figures — Generate publication-ready diagrams from text descriptions. Excalidraw for architecture figures, Mermaid for formal structures.
  • Proof tracking — Mermaid flowcharts showing lemma dependencies with color-coded completion status. Diffs cleanly in Git.
  • Literature landscapes — Canvas knowledge graphs of cited papers, linked to clipped notes via Web Clipper. Navigate related work spatially.
  • Lecture animations — Excalidraw animated mode for step-by-step algorithm visualizations during class.
  • Student reference material — Mermaid class/state diagrams students can copy, edit, and extend for assignments.
  • Course navigation — Canvas mind maps as visual syllabi linking to lecture notes, readings, and assignments.

Real-World Use Cases

Scenario Skill Output
System architecture for a paper Excalidraw SVG/PNG figure
Type checker data flow Excalidraw (animated) Step-by-step presentation
Proof dependency structure Mermaid (flowchart) Git-trackable diagram
API interaction protocol Mermaid (sequence) Documentation
Literature review map Canvas (freeform) Navigable knowledge graph
Course syllabus overview Canvas (mind map) Visual course navigation
Algorithm animation for lecture Excalidraw (animated) In-class presentation
Student study map Canvas (freeform) Review sheet with links

Key Details

   
Repo github.com/axtonliu/axton-obsidian-visual-skills
Author Axton Liu
License MIT
Status Experimental
Compatible agents Claude Code
Prerequisites Obsidian + Excalidraw plugin (for Excalidraw skill only)
Output types .md (Excalidraw), .md (Mermaid code blocks), .canvas (JSON)