← ClaudeAtlas

canvaslisted

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, create canvas, add to canvas, put this on the canvas.
nathanaday/claude-atlas · ★ 0 · Data & Documents · score 72
Install: claude install-skill nathanaday/claude-atlas
# Canvas A canvas is a vault-scoped JSON Canvas document under `wiki/canvases/`. Reads are read-only; every change goes through one plan of kind `canvas`. ## 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/). ## Scope - Call `status` first. Store boards under `wiki/canvases/`; use `wiki/canvases/main.canvas` only when the user did not name a board. - `wiki/canvases/canvases.md` is an optional catalog. Update it only when a canvas is created, renamed, or removed. - Use vault-relative paths in `file` and `background`; reject absolute paths, `..`, and `~`. - Reference only files already inside the vault. Do not download or copy assets here; a source enters through `wiki-ingest`. - Use `link` nodes for HTTPS URLs only. Creating the node makes no request, but Obsidian may fetch preview metadata from that host when it renders; say so. Otherwise use a text node containing the URL. ## Read-only operations For status or list requests, read the `.canvas` files and report node counts, group labels, broken edge endpoints, and missing file targets. If the default canvas is absent, say so and offer a creation preview; do not create it during a status request. ## Draft a change 1. Read the whole canvas and any catalog target. 2. Preserve unknown JSON fields and existing