# Canvas

Create, inspect, and update Obsidian JSON Canvas boards with text, file, link, group...

- Repository: https://github.com/AgriciDaniel/claude-obsidian (16054 stars)
- Category: Writing
- License: MIT
- Last updated: 2026-10-25
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add AgriciDaniel/claude-obsidian --skill canvas -g -a claude-code -y`
Codex: `npx skills add AgriciDaniel/claude-obsidian --skill canvas -g -a codex -y`
Cursor: `npx skills add AgriciDaniel/claude-obsidian --skill canvas -g -a cursor -y`
Gemini CLI: `npx skills add AgriciDaniel/claude-obsidian --skill canvas -g -a gemini-cli -y`
Claude Code plugin marketplace: `/plugin marketplace add AgriciDaniel/claude-obsidian`

## Description

Create, inspect, and update Obsidian JSON Canvas boards with text, file, link, group, and edge nodes. Use for canvas status, canvas lists, visual maps, zones, spatial layouts, adding vault notes or media to a .canvas file, and requests such as create canvas, add to canvas, or put this on the canvas.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# Canvas

Treat a canvas as a vault-scoped JSON Canvas document. Keep reads read-only and
route every requested mutation through one recoverable transaction.

Resolve the installed product root from this skill's own location, not from the
vault or current working directory:

```bash
PRODUCT_ROOT=/absolute/path/to/installed/claude-obsidian
CORE="$PRODUCT_ROOT/scripts/claude-obsidian.py"
test -f "$CORE"
```

Every `../wiki/references/` link in this file resolves the same way, relative
to this skill's own directory under `$PRODUCT_ROOT`, never relative to the
selected vault's `wiki/` directory.

## Choose the syntax source

Prefer a separately installed `kepano/obsidian-skills` `json-canvas` skill for
format details. Otherwise read [references/canvas-spec.md](references/canvas-spec.md).
The open standard is [JSON Canvas 1.0](https://jsoncanvas.org/spec/1.0/).

Use this skill for vault workflow and transaction safety even when an upstream
syntax skill is available.

## Scope

The rest: https://github.com/AgriciDaniel/claude-obsidian/blob/HEAD/skills/canvas/SKILL.md
