CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

json-canvas

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.

1.08x
Quality

95%

Does it follow best practices?

Impact

100%

1.08x

Average score across 3 eval scenarios

SecuritybySnyk

Passed

No findings from the security scan

The canonical home for this skill is json-canvas in kepano/obsidian-skills

SKILL.md
Quality
Evals
Security

Quality

Content

96%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

An exemplary skill body: concise spec tables, executable JSON examples for every node type, workflows with explicit validation checkpoints and error-recovery guidance, and a clearly signaled external examples file. The only structural improvement would be splitting the full attribute reference into a separate file to keep SKILL.md as a leaner overview.

DimensionReasoningScore

Conciseness

The body is almost entirely dense attribute tables, JSON snippets, and non-obvious pitfalls ("Use \n for line breaks in JSON strings. Do not use the literal \\n", "Preset color values are intentionally undefined -- applications use their own brand colors") with virtually no padded prose or explanation of concepts Claude already knows. This is niche spec knowledge Claude does not have, so every token earns its place.

5 / 5

Actionability

Every node and edge type has a complete, copy-paste-ready JSON example, and the attribute tables give exact types, defaults, and allowed values (e.g., "fromEnd | No | string | none | none or arrow"). ID generation is specified with concrete samples ("6f0ad84f44ce9c17"), covering the common cases fully.

5 / 5

Workflow Clarity

Four workflows are clearly sequenced, each ending with an explicit bolded **Validate** step, plus an 8-item Validation Checklist and error-recovery guidance ("If validation fails, check for duplicate IDs, dangling edge references, or malformed JSON strings"). This matches the anchor-5 feedback-loop pattern.

5 / 5

Progressive Disclosure

The body is well-sectioned and points to a real, one-level-deep reference ("See [references/EXAMPLES.md](references/EXAMPLES.md) for full canvas examples including mind maps, project boards, research canvases, and flowcharts") that exists and contains no nested references. However, nearly the entire attribute/spec reference is inlined in SKILL.md with only one external file, so bulk reference content could arguably be split out; this sits between anchors 4 and 5.

4 / 5

Total

19

/

20

Passed

Description

91%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A well-crafted description in third-person voice: it states concrete capabilities with domain-specific vocabulary and provides an explicit, natural-language trigger clause covering the file extension, use cases, synonyms, and the host application. The only weaknesses are the slightly limited action-verb coverage and mild trigger overlap with generic diagramming requests.

DimensionReasoningScore

Specificity

"Create and edit JSON Canvas files (.canvas) with nodes, edges, groups, and connections" names the domain plus several concrete actions and the objects they apply to. It falls short of a 5 because only two verbs (create, edit) are given rather than comprehensive action coverage.

4 / 5

Completeness

It explicitly answers both questions: what ("Create and edit JSON Canvas files (.canvas) with nodes, edges, groups, and connections") and when ("Use when working with .canvas files... or when the user mentions Canvas files in Obsidian"). This matches the anchor-5 example structure almost exactly.

5 / 5

Trigger Term Quality

"Use when working with .canvas files, creating visual canvases, mind maps, flowcharts, or when the user mentions Canvas files in Obsidian" covers the file extension, synonyms (mind maps, flowcharts), the product name, and natural phrasings users would say.

5 / 5

Distinctiveness Conflict Risk

JSON Canvas/.canvas is a clear niche anchored by the Obsidian mention, giving minimal conflict risk. However, generic triggers like "mind maps" and "flowcharts" create minor overlap with general diagramming skills, so it sits between anchors 4 and 5, closer to 4.

4 / 5

Total

18

/

20

Passed

Validation

100%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository

valeriibeck-star/claude-skills

Path

skills/json-canvas/SKILL.md

Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.