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.
81
Does it follow best practices?
If you maintain this skill, you can automatically optimize it using the tessl CLI to improve its score:
npx tessl skill review --optimize ./path/to/skillValidation for skill structure
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 follows best practices. It uses third person voice, lists specific capabilities, includes a clear 'Use when...' clause with natural trigger terms, and targets a distinct niche (JSON Canvas/Obsidian). The description provides sufficient detail for Claude to accurately select this skill when appropriate.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Lists multiple specific concrete actions: 'Create and edit JSON Canvas files (.canvas) with nodes, edges, groups, and connections.' This clearly describes what operations can be performed and what elements are involved. | 3 / 3 |
Completeness | Clearly answers both what ('Create and edit JSON Canvas files with nodes, edges, groups, and connections') AND when ('Use when working with .canvas files, creating visual canvases, mind maps, flowcharts, or when the user mentions Canvas files in Obsidian'). | 3 / 3 |
Trigger Term Quality | Includes natural keywords users would say: '.canvas files', 'visual canvases', 'mind maps', 'flowcharts', 'Canvas files', 'Obsidian'. Good coverage of both technical terms and common use-case language. | 3 / 3 |
Distinctiveness Conflict Risk | Clear niche targeting JSON Canvas format specifically, with distinct triggers like '.canvas files' and 'Obsidian'. The file extension and application context make it unlikely to conflict with general diagramming or document skills. | 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 is a solid reference document with excellent actionability through comprehensive, executable JSON examples covering all node types and common canvas patterns. However, it's overly long for a SKILL.md file, lacking workflow guidance for actual editing tasks and missing validation checkpoints. The content would benefit from being split into a concise overview with detailed examples in a separate file.
Suggestions
Add a workflow section at the top with explicit steps: 1) Read existing canvas, 2) Parse JSON, 3) Make modifications, 4) Validate JSON structure, 5) Write file - with validation checkpoints
Move the 4 complete examples to a separate EXAMPLES.md file and reference it from the main skill
Add a brief 'Common operations' section with quick patterns for: adding a node, connecting two nodes, grouping nodes - rather than only showing complete canvas structures
Remove or condense the Overview section - Claude doesn't need to be told what JSON Canvas is if the description already covers this
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The skill is comprehensive but includes some redundancy - the overview section explains what JSON Canvas is (which Claude likely knows), and there are 4 complete examples that could be condensed or moved to a separate file. The tables and attribute documentation are efficient, but the overall length (~400 lines) could be tightened. | 2 / 3 |
Actionability | Excellent actionability with fully executable JSON examples for every node type, edge configuration, and complete canvas structures. The examples are copy-paste ready and cover common use cases (project boards, flowcharts, research canvases). The newline escaping pitfall section is particularly helpful. | 3 / 3 |
Workflow Clarity | While the skill provides clear reference documentation, it lacks explicit workflow guidance for creating/editing canvas files. There are no validation steps mentioned (e.g., 'validate JSON before saving'), no error recovery guidance, and no step-by-step process for common tasks like 'adding a node to an existing canvas' or 'connecting nodes'. | 2 / 3 |
Progressive Disclosure | The content is well-organized with clear sections and tables, but it's monolithic - all content is in one file. The complete examples section (4 large JSON blocks) could be moved to a separate EXAMPLES.md file. References to external spec are good, but internal content organization could benefit from splitting detailed examples from core reference. | 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 — 13 / 16 Passed
Validation for skill structure
| Criteria | Description | Result |
|---|---|---|
skill_md_line_count | SKILL.md is long (657 lines); consider splitting into references/ and linking | Warning |
metadata_version | 'metadata' field is not a dictionary | Warning |
license_field | 'license' field is missing | Warning |
Total | 13 / 16 Passed | |
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.