json-canvas SKILL.md skillA

json-canvas from kepano/obsidian-skills is an agent skill: a SKILL.md folder an AI agent loads when a task calls for it.

Install it, pinned
mdr add kepano/obsidian-skills/json-canvas@git:20260225.5a557ce

Pins git:20260225.5a557ce in mdr.lock. Pin the fingerprint instead.

Audit grade
A, 17 of 17 checks passed
Kind
SKILL.md skill
Repository
kepano/obsidian-skills
Path
skills/json-canvas/SKILL.md
Versions recorded
4
Latest version
git:20260225.5a557ce, committed Feb 25, 2026
First version recorded
Jan 9, 2026
Size
7,624 bytes
Repository stars
49,805
License
MIT

Create and edit JSON Canvas files (.canvas) with nodes, edges, groups, and connections. Use when working with .canvas files, creating visual canvases, mind maps, flowcharts, or when the user mentions Canvas files in Obsidian.

Collected from public GitHub. Every version is saved exactly as it was and never changes. Install it at an exact version with the mdr tool, and every file is checked before it reaches your agent. The main file is checked against the SHA-256 fingerprint recorded here, and the others against the fingerprints GitHub keeps for its source commit. The automatic checks below grade the latest version, and the same checks always give the same file the same grade.

What the file says

# JSON Canvas Skill

## File Structure

A canvas file (`.canvas`) contains two top-level arrays following the [JSON Canvas Spec 1.0](https://jsoncanvas.org/spec/1.0/):

```json
{
  "nodes": [],
  "edges": []
}
```

- `nodes` (optional): Array of node objects
- `edges` (optional): Array of edge objects connecting nodes

## Common Workflows

### 1. Create a New Canvas

1. Create a `.canvas` file with the base structure `{"nodes": [], "edges": []}`
2. Generate unique 16-character hex IDs for each node (e.g., `"6f0ad84f44ce9c17"`)
3. Add nodes with required fields: `id`, `type`, `x`, `y`, `width`, `height`
4. Add edges referencing valid node IDs via `fromNode` and `toNode`
5. **Validate**: Parse the JSON to confirm it is valid. Verify all `fromNode`/`toNode` values exist in the nodes array

### 2. Add a Node to an Existing Canvas

1. Read and parse the existing `.canvas` file
2. Generate a unique ID that does not collide with existing node or edge IDs
3. Choose position (`x`, `y`) that avoids overlapping existing nodes (leave 50-100px spacing)
4. Append the new node object to the `nodes` array
5. Optionally add edges connecting the new node to existing nodes
…

Read the whole file at its exact version.

How to install

The exact contents, by fingerprint
mdr add kepano/obsidian-skills/json-canvas@sha256:97d1ae0728955c42

The line at the top of this page pins the label git:20260225.5a557ce, which is what most people want. This one pins the sha256 fingerprint of the contents instead, so it survives a label being moved. Either way the exact version is written to mdr.lock, and mdr install downloads and checks those contents again, so it installs them exactly or stops with an error.

Badge

mdr badge

[![mdr](https://markdownregistry.com/badge/art_mohlapcu4v66o2vg.svg)](https://markdownregistry.com/a/art_mohlapcu4v66o2vg)

4 badge image fetches in 30 days. What the badge shows.

Versions

The registry has recorded 4 versions of this file, between Jan 9, 2026 and Feb 25, 2026, about one every 16 days.

versioncommittedcommitsizeaudit
git:20260225.5a557ce latest2026-02-25 5a557ce 7,624 BA view · diff
git:20260116.1fe3a852026-01-16 1fe3a85 14,401 BA view · diff
git:20260111.ec8f9e22026-01-11 ec8f9e2 14,013 BA view · diff
git:20260109.60aacf62026-01-09 60aacf6 14,001 BA view

Audit of the latest version

A  17 of 17 checks passed. Fixed automatic checks with no AI involved, so the same checks give the same answer every run.
  • pass: Frontmatter block present
  • pass: Frontmatter declares a name
  • pass: Frontmatter declares a description
  • pass: Size between 200 bytes and 200 KB (7624 bytes)
  • pass: No zero-width or bidi control characters
  • pass: No instruction hidden inside an HTML comment
  • pass: No link to an exfiltration or paste host
  • pass: No credential-shaped string
  • pass: No instruction to send local credentials anywhere
  • pass: No text hidden with inline styles
  • pass: No prompt-injection phrasing
  • pass: No curl or wget piped into a shell
  • pass: No recursive delete of root, home or parent
  • pass: No instruction to read or print local credentials
  • pass: No base64 blob over 200 characters
  • pass: No link to a raw IP address
  • pass: No script tag

Source

GitHub

kepano/obsidian-skills · 49,805 stars · license MIT · pushed 2026-09-15 · branch main

API

GET https://markdownregistry.com/api/v1/artifacts/art_mohlapcu4v66o2vg
GET https://markdownregistry.com/api/v1/resolve?ref=kepano/obsidian-skills/json-canvas
GET https://markdownregistry.com/api/v1/blob/97d1ae0728955c4203922753d5656890e5e4dd371b8306ea11884f9b510f1b85

Your AI assistant does the legwork. You hear about the deals worth your word. Hand yours the standing instructions at modelranch.com and it joins the network that reads files like this one.

Guides: the SKILL.md format and its required fields · what to check before you install a skill · how to pin a skill to an exact version · where to find agent skills · keeping a team on the same skills · which agent file does what.

More from kepano/obsidian-skills

defuddle SKILL.md skill
kepano/obsidian-skills · skills/defuddle/SKILL.md · Extract clean Markdown from HTML pages with Defuddle CLI.
git:20260909.957c634 · audit A · 49,805 stars
knap SKILL.md skill
kepano/obsidian-skills · skills/knap/SKILL.md · Render Markdown from templates and structured data using Knap CLI. Use when the user asks to apply a Knap template…
git:20260910.8ccef29 · audit A · 49,805 stars
obsidian-bases SKILL.md skill
kepano/obsidian-skills · skills/obsidian-bases/SKILL.md · Create and edit Obsidian Bases (.base files) with views, filters, formulas, and summaries. Use when working with .base…
git:20260407.9b736ba · audit A · 49,805 stars
obsidian-cli SKILL.md skill
kepano/obsidian-skills · skills/obsidian-cli/SKILL.md · Interact with Obsidian vaults using the Obsidian CLI to read, create, search, and manage notes, tasks, properties, and…
git:20260225.5a557ce · audit A · 49,805 stars
obsidian-markdown SKILL.md skill
kepano/obsidian-skills · skills/obsidian-markdown/SKILL.md · Create and edit Obsidian Flavored Markdown with wikilinks, embeds, callouts, properties, and other Obsidian-specific…
git:20260225.5a557ce · audit A · 49,805 stars

Every file in kepano/obsidian-skills

Other files named json-canvas

json-canvas SKILL.md skill
anbeime/skill · skills/obsidian-skills-integrated/json-canvas/SKILL.md · 产品经理与内容创作者在构建Obsidian知识库或梳理复杂逻辑时,当需要创建思维导图、流程图等可视化画布,使用此技能可自动生成标准.canvas文件,精准配置节点、连线与层级,一键生成完美排版,彻底告别手写JSON的繁琐与报错。
git:20260826.8fedbe3 · audit A · 8,527 stars
json-canvas SKILL.md skill
davepoon/buildwithclaude · plugins/all-skills/skills/json-canvas/SKILL.md · Create and edit JSON Canvas files (.canvas) with nodes, edges, groups, and connections. Use when working with .canvas…
git:20260109.d473212 · audit A · 3,660 stars
json-canvas SKILL.md skill
sandbaseai/sandbase-skills · marketing/json-canvas/SKILL.md · Create, implement, or review json canvas work with format, accessibility, performance, and visual-verification…
git:20260908.a887321 · audit A · 202 stars
json-canvas SKILL.md skill
jialuohu/codex-toolbox · plugins/obsidian-tools/skills/json-canvas/SKILL.md · Create or edit Obsidian .canvas files with nodes, edges, groups, and connections. Use for JSON Canvas artifacts, not…
git:20260906.9af3950 · audit A · 13 stars
json-canvas SKILL.md skill
pantheon-org/tekhne · skills/documentation/obsidian/json-canvas/SKILL.md · Create and edit JSON Canvas files (.canvas) with nodes, edges, groups, and connections. Use when working with .canvas…
git:20260316.13efaab · audit A · 10 stars
json-canvas SKILL.md skill
the-utopia-studio/skills · plugins/utopia-founder-productivity/skills/json-canvas/SKILL.md · Create and edit JSON Canvas files (.canvas) with nodes, edges, groups, and connections. Use when working with .canvas…
git:20260806.73fec06 · audit A · 7 stars
json-canvas SKILL.md skill
yeaight7/agent-powerups · skills/json-canvas/SKILL.md · Create and edit JSON Canvas files (.canvas) with nodes, edges, groups, and connections. Use when working with .canvas…
git:20260430.38ab2a1 · audit A · 7 stars
json-canvas SKILL.md skill
mancerayder42/jarvis-os · optional-skills/json-canvas/SKILL.md
git:20260905.fd1ce5a · audit C · 5 stars

Browse by kind, by grade A, or by owner.