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.
86
82%
Does it follow best practices?
Impact
96%
1.12xAverage score across 3 eval scenarios
Passed
No known issues
Quality
Discovery
100%Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.
This is a well-crafted skill description that clearly communicates what the skill does and when to use it. It includes specific concrete actions, a comprehensive set of natural trigger terms covering multiple user phrasings, and an explicit 'Use when...' clause. The description is concise, uses third person voice, and is highly distinctive with its focus on the JSON Canvas format and Obsidian ecosystem.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Lists multiple specific concrete actions: 'Create and edit JSON Canvas files (.canvas) with nodes, edges, groups, and connections.' This names the domain (JSON Canvas), the file format (.canvas), and specific structural elements (nodes, edges, groups, connections). | 3 / 3 |
Completeness | Clearly answers both 'what' (create and edit JSON Canvas files with nodes, edges, groups, and connections) and 'when' (explicit 'Use when...' clause covering .canvas files, visual canvases, mind maps, flowcharts, and Obsidian context). | 3 / 3 |
Trigger Term Quality | Includes strong natural keywords users would say: '.canvas files', 'visual canvases', 'mind maps', 'flowcharts', 'Canvas files', 'Obsidian'. These cover multiple natural variations of how a user might refer to this functionality. | 3 / 3 |
Distinctiveness Conflict Risk | Highly distinctive with clear niche triggers: JSON Canvas, .canvas file extension, Obsidian context. Unlikely to conflict with other skills since it targets a very specific file format and ecosystem. | 3 / 3 |
Total | 12 / 12 Passed |
Implementation
64%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
This skill provides excellent actionability with complete, valid JSON examples covering all node types and common use cases. However, it's overly verbose for a format specification — much of the content is reference material that could be split into separate files, and it lacks an explicit creation/editing workflow with validation checkpoints. The 'When to Use' section and some introductory text waste tokens on things Claude can infer.
Suggestions
Add an explicit step-by-step workflow section (e.g., 1. Generate unique IDs, 2. Define nodes, 3. Define edges referencing valid node IDs, 4. Validate all IDs are unique and references resolve) with a validation checkpoint before writing the file.
Move the complete examples and detailed attribute tables to a separate REFERENCE.md or EXAMPLES.md, keeping only one concise example in the main skill file.
Remove the 'When to Use This Skill' section and the introductory paragraph explaining what JSON Canvas is — this is already covered by the YAML frontmatter description and Claude can infer it.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The skill is quite long (~300+ lines) with extensive tables and multiple complete examples. While the reference-style tables are useful, the four complete canvas examples are verbose — two would suffice. The 'When to Use This Skill' section and some descriptive text (e.g., explaining what JSON Canvas is) add tokens without much value for Claude. | 2 / 3 |
Actionability | Every node type, edge configuration, and attribute is demonstrated with complete, valid JSON examples that are copy-paste ready. The complete examples cover multiple real use cases (mind map, project board, research canvas, flowchart) with fully executable JSON structures. | 3 / 3 |
Workflow Clarity | The skill provides validation rules at the end but lacks an explicit workflow for creating or editing canvas files (e.g., step-by-step: generate IDs, create nodes, create edges, validate). For a format where invalid references or duplicate IDs cause failures, there's no verification step or feedback loop described. | 2 / 3 |
Progressive Disclosure | The content is a monolithic document with everything inline. The four complete examples and extensive attribute tables could be split into a separate EXAMPLES.md or REFERENCE.md. The external spec links at the bottom are good, but the main document tries to be both a quick reference and a comprehensive guide simultaneously. | 2 / 3 |
Total | 9 / 12 Passed |
Validation
81%Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.
Validation — 9 / 11 Passed
Validation for skill structure
| Criteria | Description | Result |
|---|---|---|
skill_md_line_count | SKILL.md is long (570 lines); consider splitting into references/ and linking | Warning |
frontmatter_unknown_keys | Unknown frontmatter key(s) found; consider removing or moving to metadata | Warning |
Total | 9 / 11 Passed | |
7cc63f3
Table of Contents
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.