Canvas Visual Knowledge Board
Organize images, PDFs, and wiki pages on an Obsidian visual canvas.
The skill limits its declared tools to Read, Write, Edit, Glob, and Grep, and requires reading the canvas before writing, providing some scope control. However, URL image addition downloads content via curl without explicit confirmation, permits copying files from outside the vault, and does not explain data flow, source trust, rollback, or recovery after write failures, so substantial points are deducted.
Operations, defaults, JSON structures, ID generation, and auto-layout are described clearly enough for plausible happy-path reproduction. However, the canvas paths have no dedicated tests, handling is thin for ambiguous note matches, invalid URLs/files, layout overflow, and batch conflicts, and the summary contradicts the new-operation instruction about updating wiki/index.md versus wiki/overview.md. The static ceiling also applies.
Triggers, input types, and main scenarios are explicit, covering images, text, PDFs, notes, and zones. Non-fit boundaries, ambiguity handling, and confirmation requirements are incomplete; URL downloads, Obsidian, and optional banana/kepano integrations affect environment fit, while Chinese-language support is not explicitly documented.
The documentation is well structured and includes frontmatter, operations, a specification reference, examples, common mistakes, and related projects. Repository context supplies an MIT license, CI, and version information, but this skill lacks its own version, changelog, maintenance owner, or update path, and contains the wiki/index.md versus wiki/overview.md documentation inconsistency.
The skill clearly targets creation and maintenance of Obsidian Canvas boards, writes JSON that Obsidian can consume, and specifies positioning and reporting behavior. Still, no representative result for this selected skill is verified; non-overlap, file copying, PDF page counting, and URL download outcomes may require manual correction, so only moderate static effectiveness is justified.
The skill includes a JSON Canvas specification reference, algorithms, examples, and a common-mistakes section, giving limited auditability. Repository CI and tests primarily cover other scripts and do not cover the canvas skill's key paths, so independent reproducibility evidence is thin and the score remains low.
- Adding a URL image downloads external content without explicit confirmation; verify the URL, target filename, and source first.
- There is no clear recovery procedure for failed writes, partial copies, duplicate nodes, or layout overflow; back up important canvases and inspect results manually.
- The new operation says to update wiki/overview.md, while the summary says to update wiki/index.md; confirm the intended index file before use.
- The workflow depends on Obsidian Canvas and optional banana/kepano skills; reachability from mainland-China networks is not established.
What does this skill do, and when should you use it?
Canvas is the visual-reference skill inside the claude-obsidian monorepo. It reads and writes JSON Canvas files in Obsidian, adding images, text cards, PDFs, and wiki pages with zone-based auto-positioning. Its default canvas is wiki/canvases/main.canvas. It fits Obsidian users who already use the claude-obsidian wiki structure and want a spatial layer for browsing related references.
Reads existing .canvas JSON files and reports node counts and zones; creates or updates canvases under wiki/canvases/; downloads URL images or copies local images into _attachments/images/canvas/ and sizes nodes by aspect ratio; copies PDFs into _attachments/pdfs/canvas/ and creates preview nodes; searches wiki/ for matching pages and creates file nodes; creates labeled zone groups; calculates the next position from zone boundaries, node sizes, and existing content; and can discover recently generated images from .recent-images.txt or the filesystem. Before editing, it requires reading references/canvas-spec.md and follows the JSON Canvas format.
- An Obsidian user wants to arrange research screenshots and images by topic in wiki/canvases/.
- A knowledge manager wants PDF previews, explanatory text, and linked wiki pages on one visual board.
- A user of /banana wants to place recently generated images onto an Obsidian canvas.
- A user needs multiple topic canvases with automatic placement that reduces simple node overlap.
What are this skill's strengths and limitations?
- Supports image, text, PDF, and wiki-page node types.
- Uses zone-aware auto-positioning and collision-safe IDs.
- Works with local JSON Canvas files and Obsidian vault paths.
- Can ingest recent banana-generated images through a session log or filesystem fallback.
- Requires local vault filesystem access and uses shell commands plus Python or ImageMagick for some operations.
- Adding images from URLs requires network access; recovery behavior for failed downloads is not documented.
- The banana integration depends on an external skill not shipped with this repository.
- The README identifies kepano/obsidian-skills as the authoritative JSON Canvas reference, and describes Codex and other hosts as experimentally supported.
How do you install this skill?
The source documents installation for the full claude-obsidian collection, not this skill separately. Clone the repository and run: git clone https://github.com/AgriciDaniel/claude-obsidian && cd claude-obsidian && bash bin/setup-vault.sh. Alternatively run claude plugin marketplace add AgriciDaniel/claude-obsidian, followed by claude plugin install claude-obsidian@agricidaniel-claude-obsidian. A standalone installation procedure for skills/canvas/SKILL.md is not documented.
How do you use this skill?
In the repository or configured Obsidian vault, use /canvas to inspect or create the default canvas. Examples include /canvas new Research, /canvas add image [path or url], /canvas add pdf [path], /canvas add note [wiki-page], /canvas add text [content], /canvas zone [name] [color], and /canvas list. Open the resulting .canvas file in Obsidian.
How does this skill compare with similar options?
Compared with kepano/obsidian-skills' json-canvas skill, this skill focuses on wiki/canvases/ workflows, zone layout, and banana integration above the canvas specification. Compared with claude-canvas, it handles wiki-scoped boards for claude-obsidian, while claude-canvas provides broader project orchestration, templates, layout algorithms, and AI image generation.