Help us improve
Share bugs, ideas, or general feedback.
From claude-canvas
Re-layout existing Obsidian Canvas nodes using 6 spatial algorithms: grid (galleries, mood boards), dagre (flowcharts, org charts), radial (mind maps), force-directed (knowledge graphs), linear (timelines), and auto-detect. Preserves group membership, snaps to 20px grid, refits zones around content. Triggers on: canvas layout, re-layout canvas, arrange canvas, auto-layout, organize canvas, fix canvas layout, canvas grid, canvas dagre.
npx claudepluginhub agricidaniel/claude-canvasHow this skill is triggered — by the user, by Claude, or both
Slash command
/claude-canvas:canvas-layoutThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Read `../canvas/references/layout-algorithms.md` for algorithm details and selection guide.
AI-orchestrated visual production for Obsidian Canvas. Create presentations, flowcharts, mood boards, knowledge graphs, galleries, storyboards, timelines, dashboards, and more with intelligent layout and AI-generated content. Claude acts as Creative Director — dispatching sub-agents for image generation, SVG diagrams, GIF creation, and spatial layout. Supports 12 template archetypes, 6 layout algorithms, and Advanced Canvas presentation mode. Triggers on: /canvas, create canvas, build canvas, make a presentation, visual board, mood board, flowchart canvas, storyboard, canvas from template, lay out canvas, export canvas, canvas layout, canvas generate, add to canvas, put this on the canvas, open canvas, canvas present, canvas template.
Create and edit .canvas JSON files for Obsidian, managing nodes, edges, groups, and connections. Ideal for mind maps, flowcharts, and visual diagrams with ID validation.
Creates and edits JSON Canvas (.canvas) files with nodes, edges, groups for mind maps, flowcharts, diagrams. Validates IDs, references, structure. Use for Obsidian Canvas files.
Share bugs, ideas, or general feedback.
Read ../canvas/references/layout-algorithms.md for algorithm details and selection guide.
Read ../canvas/references/performance-guide.md for node limits.
/canvas list to show options).auto detection.python3 scripts/canvas_layout.py [canvas_path] [algorithm] [options]
python3 scripts/canvas_validate.py [canvas_path] to confirm valid output.When the user says /canvas layout auto or doesn't specify an algorithm, use the auto-detection in the script. It analyzes edge density, node types, and connection patterns.
For explicit requests, map user intent to algorithm:
| User says | Algorithm | Options |
|---|---|---|
| "organize these images" | grid | --sort-by type |
| "make a grid" | grid | |
| "flowchart layout" | dagre | --direction TB |
| "left to right flow" | dagre | --direction LR |
| "mind map layout" | radial | |
| "expand from [node]" | radial | --center [node-id] |
| "untangle this" | force | |
| "spread out the nodes" | force | |
| "make a timeline" | linear | --axis horizontal |
| "vertical sequence" | linear | --axis vertical |
| "auto-layout" | auto | |
| "fix the layout" | auto |
Pass algorithm-specific options to the script:
--columns N (override auto-detection), --sort-by type|size--direction TB|LR|BT|RL--center node-id (override auto-detection of hub node)--iterations N (default 100, reduce to 50 for 50+ nodes)--axis horizontal|verticalAdd --dry-run to preview without writing.
When a canvas has more than 30 nodes, dispatch the canvas-layout agent instead of running the script directly. The agent can:
.bak already exists, use .bak2, .bak3, etc.