Reverse engineer anything with agents, from app behavior down to native binaries.
json-canvas
Agent skill fromobsidianmd/obsidian-skills
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.
How to install json-canvas
npx skills add obsidianmd/obsidian-skills# or add only this skill to Claude Code: copy the folder
plugins/obsidian/skills/json-canvas/
# into
~/.claude/skills/json-canvas/ (all projects)
.claude/skills/json-canvas/ (one project)
1# JSON Canvas Skill23## File Structure45A canvas file (`.canvas`) contains two top-level arrays following the [JSON Canvas Spec 1.0](https://jsoncanvas.org/spec/1.0/):67```json8{9 "nodes": [],10 "edges": []11}12```1314- `nodes` (optional): Array of node objects15- `edges` (optional): Array of edge objects connecting nodes1617## Common Workflows1819### 1. Create a New Canvas20211. Create a `.canvas` file with the base structure `{"nodes": [], "edges": []}`222. Generate unique 16-character hex IDs for each node (e.g., `"6f0ad84f44ce9c17"`)233. Add nodes with required fields: `id`, `type`, `x`, `y`, `width`, `height`244. Add edges referencing valid node IDs via `fromNode` and `toNode`255. **Validate**: Parse the JSON to confirm it is valid. Verify all `fromNode`/`toNode` values exist in the nodes array2627### 2. Add a Node to an Existing Canvas28291. Read and parse the existing `.canvas` file302. Generate a unique ID that does not collide with existing node or edge IDs313. Choose position (`x`, `y`) that avoids overlapping existing nodes (leave 50-100px spacing)324. Append the new node object to the `nodes` array335. Optionally add edges connecting the new node to existing nodes346. **Validate**: Confirm all IDs are unique and all edge references resolve to existing nodes3536### 3. Connect Two Nodes37381. Identify the source and target node IDs392. Generate a unique edge ID403. Set `fromNode` and `toNode` to the source and target IDs41…
Excerpt shown under the repository's MIT license.
More skills in obsidian-skills
Similar skill repositories
Skills for Real Engineers. Straight from my .agents directory.
An agentic skills framework & software development methodology that works.
Public repository for Agent Skills
Makes your AI agent think like the laziest senior dev in the room. The best code is the code you never wrote.
Persistent Context Across Sessions for Every Agent – Captures everything your agent does during sessions, compresses it with AI, and injects relevant context back into future sessions. Works with Claude Code, OpenClaw, Codex, Gemini, Hermes, Copilot, OpenCode + More
