Obsidian Canvas Boards
AgriciDaniel/claude-obsidian
Creates, inspects and updates Obsidian JSON Canvas boards in a vault, with text, file, link, group and edge nodes, using safe recoverable edits.
Lists 12 canvas template types for Obsidian Canvas and builds a ready-to-use canvas from one, such as a presentation, flowchart, kanban board or timeline.
$ npx skills add AgriciDaniel/claude-canvas --skill canvas-template -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install AgriciDaniel/claude-canvas canvas-template --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/AgriciDaniel/claude-canvas.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/canvas-template .claude/skills/canvas-template && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "canvas-template" agent skill from https://github.com/AgriciDaniel/claude-canvas/tree/main/skills/canvas-template into .claude/skills/canvas-template/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "canvas-template", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/AgriciDaniel/claude-canvas/tree/main/skills/canvas-templateType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add AgriciDaniel/claude-canvas --skill canvas-template -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install AgriciDaniel/claude-canvas canvas-template --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/AgriciDaniel/claude-canvas.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/canvas-template .agents/skills/canvas-template && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "canvas-template" agent skill from https://github.com/AgriciDaniel/claude-canvas/tree/main/skills/canvas-template into .agents/skills/canvas-template/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "canvas-template", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add AgriciDaniel/claude-canvas --skill canvas-template -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install AgriciDaniel/claude-canvas canvas-template --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/AgriciDaniel/claude-canvas.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/canvas-template .cursor/skills/canvas-template && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "canvas-template" agent skill from https://github.com/AgriciDaniel/claude-canvas/tree/main/skills/canvas-template into .cursor/skills/canvas-template/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "canvas-template", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/AgriciDaniel/claude-canvas.git --path skills/canvas-template--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add AgriciDaniel/claude-canvas --skill canvas-template -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install AgriciDaniel/claude-canvas canvas-template --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/AgriciDaniel/claude-canvas.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/canvas-template .gemini/skills/canvas-template && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "canvas-template" agent skill from https://github.com/AgriciDaniel/claude-canvas/tree/main/skills/canvas-template into .gemini/skills/canvas-template/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "canvas-template", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install AgriciDaniel/claude-canvas canvas-templateInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add AgriciDaniel/claude-canvas --skill canvas-template -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/AgriciDaniel/claude-canvas.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/canvas-template .github/skills/canvas-template && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "canvas-template" agent skill from https://github.com/AgriciDaniel/claude-canvas/tree/main/skills/canvas-template into .github/skills/canvas-template/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "canvas-template", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add AgriciDaniel/claude-canvas --skill canvas-template -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install AgriciDaniel/claude-canvas canvas-template --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/AgriciDaniel/claude-canvas.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/canvas-template .opencode/skills/canvas-template && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "canvas-template" agent skill from https://github.com/AgriciDaniel/claude-canvas/tree/main/skills/canvas-template into .opencode/skills/canvas-template/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "canvas-template", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
canvas-templateLists 12 canvas template types for Obsidian Canvas and builds a ready-to-use canvas from one, such as a presentation, flowchart, kanban board or timeline.
Two operations are covered around a set of 12 canvas archetypes: presentation, flowchart, mind-map, gallery, dashboard, storyboard, knowledge-graph, mood-board, timeline, comparison, kanban and project-brief. Listing runs a Python script and shows the results as a table of archetype, layout and description, for example a slide deck sized 1200x675 or a Todo, Doing and Done board.
To build a canvas, the agent checks the template name, asks for a title and any template-specific settings such as slide or step count, picks an output path, runs the template script and then a validation script. A final quality step requires replacing every placeholder string with real content that fits the title, confirming zero errors and zero overlap warnings, and checking that any automatic layout, such as radial for mind maps, was applied. It ends by reporting how many nodes, edges and groups were created.
7 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 05b808c. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
python3From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Canvas Template Browser loads about 1.1k tokens when it runs. Until then it costs about 108 tokens; SKILL.md has 395 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from AgriciDaniel/claude-canvas at commit 05b808c, republished under its MIT licence (© AgriciDaniel). 395 words, ~1,054 tokens.
.claude/skills/canvas-template/SKILL.md (or your agent's skills folder)./canvas template list)Run the template script to list available archetypes:
python3 scripts/canvas_template.py --listPresent the results as a formatted table:
| Archetype | Layout | Description |
|---|---|---|
| presentation | linear-vertical | Slide deck for Advanced Canvas (1200x675 slides) |
| flowchart | linear-vertical → auto dagre | Process flow with connected step nodes |
| mind-map | grid → auto radial | Radial expansion from central topic |
| gallery | grid | Image placeholder grid with title zone |
| dashboard | grid | Metric cards + status zones |
| storyboard | linear-horizontal | Scene cards for video planning |
| knowledge-graph | grid → auto force | Entity nodes for relationship mapping |
| mood-board | grid | Asymmetric image grid for creative direction |
| timeline | linear-horizontal | Horizontal event sequence |
| comparison | grid | Side-by-side columns for option analysis |
| kanban | grid | Todo/Doing/Done column board |
| project-brief | linear-vertical | Stacked zones for project kickoff |
/canvas template use [name])python3 scripts/canvas_template.py [template] [output_path] --param title="[title]" --param [key]=[value]python3 scripts/canvas_validate.py [output_path]python3 scripts/canvas_validate.py and confirm 0 errors, 0 overlap warningspost_layout (mind-map→radial, knowledge-graph→force, flowchart→dagre), confirm the layout was appliedEach template has defaults that can be overridden:
| Template | Key Parameters | Defaults |
|---|---|---|
| presentation | slide_count | 6 |
| flowchart | step_count | 5 |
| mind-map | branch_count | 5 |
| gallery | image_count, columns | 9, 3 |
| dashboard | metric_count | 4 |
| storyboard | scene_count | 6 |
| knowledge-graph | entity_count | 8 |
| mood-board | image_count | 8 |
| timeline | event_count | 6 |
| comparison | criteria_count | 4 |
| kanban | cards_per_column | 3 |
| project-brief | objective_count | 3 |
All templates accept color_title, color_body, color_accent to override the color scheme (values: "1"-"6").
After creating a template canvas, suggest next steps based on the archetype:
/canvas add banana for hero images."/canvas add image or /canvas add banana."/canvas layout dagre to re-flow after changes."/canvas layout radial for proper expansion."/canvas layout force to visualize relationships."/canvas add text. Move between columns manually in Obsidian."© AgriciDaniel, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in skills/canvas-template of AgriciDaniel/claude-canvas.
Open the folder on GitHubat commit 05b808c
Canvas Template Browser next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Canvas Template Browser this skillAgriciDaniel/claude-canvas | 300 | — | ~1.1k | Automated safety check: Pass | MIT | |
| Obsidian Canvas BoardsAgriciDaniel/claude-obsidian | 15k | — | ~1.4k | Automated safety check: Pass | MIT | |
| LLM Wikilewislulu/llm-wiki-skill | 655 | — | ~3.7k | Automated safety check: Pass | None | |
| Swarmvaultswarmclawai/swarmvault | 708 | — | ~6.1k | Automated safety check: Pass | MIT | |
| Engraphdevwhodevs/engraph | 171 | — | ~792 | Automated safety check: Pass | MIT | |
| Subscription Videos MetadataEfficientStreet/youtube-subscriptions-ingest | 178 | — | ~7.1k | Automated safety check: Notes | MIT |
AgriciDaniel/claude-obsidian
Creates, inspects and updates Obsidian JSON Canvas boards in a vault, with text, file, link, group and edge nodes, using safe recoverable edits.
lewislulu/llm-wiki-skill
Build and maintain a Karpathy-style LLM knowledge base — a self-compiling Obsidian markdown wiki where an Agent ingests raw sources, compiles cross-linked concept/entity/summary pages, answers…
swarmclawai/swarmvault
Use SwarmVault when the user needs a local-first knowledge vault that writes durable markdown, graph, search, dashboard, review, chat-session, context-pack, task-ledger, static AI export, retrieval…
devwhodevs/engraph
Index and search document collections using hybrid semantic + graph + full-text search.
EfficientStreet/youtube-subscriptions-ingest
Pull metadata from YouTube subscription videos into a second-brain vault as a real cross-linked knowledge graph — not just a flat archive.
xoai/sage-wiki
Reference skill for sage-wiki — local-first knowledge graph with MCP server, REST API, compiled wiki, and Obsidian-compatible output.
AgriciDaniel/claude-canvas
Builds and lays out Obsidian Canvas files with sub-agents for images, diagrams and layout, from flowcharts and mood boards to presentation decks.
AgriciDaniel/claude-canvas
Creates new Obsidian Canvas files, either blank with a starter structure or from one of 12 templates such as flowchart, mind map, kanban or timeline.
AgriciDaniel/claude-canvas
Exports Obsidian Canvas files to PNG, SVG or PDF, using the Advanced Canvas plugin when Obsidian is open and falling back to a Playwright screenshot.
AgriciDaniel/claude-canvas
Builds a complete Obsidian canvas from a plain description by picking one of 12 template archetypes, planning nodes, and generating text and media for it.
AgriciDaniel/claude-canvas
Rearranges the nodes of an existing Obsidian Canvas with grid, dagre, radial, force-directed or linear layouts while keeping groups intact.
AgriciDaniel/claude-canvas
Adds images, text cards, PDFs, notes, links, diagrams, zones and edges to an existing Obsidian Canvas file without overlapping what is already there.
Works with
Categories
Lists 12 canvas template types for Obsidian Canvas and builds a ready-to-use canvas from one, such as a presentation, flowchart, kanban board or timeline. Two operations are covered around a set of 12 canvas archetypes: presentation, flowchart, mind-map, gallery, dashboard, storyboard, knowledge-graph, mood-board, timeline, comparison, kanban and project-brief. Listing runs a Python script and shows the results as a table of archetype, layout and description, for example a slide deck sized 1200x675 or a Todo, Doing and Done board.
Canvas Template Browser fits situations like: seeing which canvas layouts are available before starting a new canvas; creating a kanban, timeline or comparison canvas from a template; building a presentation or mind-map canvas with a set number of slides or steps.
Run `npx skills add AgriciDaniel/claude-canvas --skill canvas-template -a claude-code`. Or copy the skill folder (skills/canvas-template in AgriciDaniel/claude-canvas) into .claude/skills/canvas-template in your project. Claude Code loads it when a task matches its description.
Run `npx skills add AgriciDaniel/claude-canvas --skill canvas-template -a codex`. Or copy the skill folder (skills/canvas-template in AgriciDaniel/claude-canvas) into .agents/skills/canvas-template in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add AgriciDaniel/claude-canvas --skill canvas-template -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/canvas-template, .gemini/skills/canvas-template, .github/skills/canvas-template and .opencode/skills/canvas-template in your project.
Going by SKILL.md and its folder, Canvas Template Browser needs the command-line tools its instructions call (python3). Our summary lists: Python 3 to run the template and validation scripts; Obsidian with Canvas.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Canvas Template Browser is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.1k tokens (SKILL.md is roughly 4.2k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Canvas Template Browser: Obsidian Canvas Boards (AgriciDaniel/claude-obsidian, 15k stars), LLM Wiki (lewislulu/llm-wiki-skill, 655 stars), Swarmvault (swarmclawai/swarmvault, 708 stars) and Engraph (devwhodevs/engraph, 171 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
AgriciDaniel (a GitHub user) maintains it in AgriciDaniel/claude-canvas, which has 300 GitHub stars. The repository holds 8 skills in this directory. The repository was last updated on April 10, 2026.
Source: AgriciDaniel/claude-canvas on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.