CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

canvas

Visualizing code, specs, or context as Mermaid, ASCII, or draw.io diagrams: flowcharts, sequence/state/class/ER, Journey Maps, personas, coverage heatmaps. Use to reverse-document systems visually.

Quality

77%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./canvas/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

67%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.

A well-structured, highly rule-driven skill body with a clear four-phase workflow, explicit verification gates, and strong navigation tables pointing to one-level-deep references. Its weaknesses are token efficiency — substantial duplication (a 33-line hidden comment block, handoff and diagram-type lists repeated three times, opaque 'omen v5' references, scattered Mermaid version numbers) — and the fact that all detailed templates live in reference files that are not present in the evaluated bundle. The result is a solid upper-middle skill that would score notably higher after de-duplication and consolidation.

Suggestions

Delete the HTML comment block (CAPABILITIES_SUMMARY / COLLABORATION_PATTERNS / BIDIRECTIONAL_PARTNERS) — it duplicates the Trigger Guidance, Collaboration, and Routing And Handoffs sections in ~33 lines of dead token cost.

Consolidate the three places handoff information appears (the comment's BIDIRECTIONAL_PARTNERS, '## Collaboration', '## Routing And Handoffs') into a single section, and merge the diagram-type enumerations in Trigger Guidance and Output Routing.

Move per-diagram-type Mermaid version requirements (v11.12.3+, v11.14.0+, beta prefixes) into the mermaid-v11-advanced reference file as one version-compatibility table instead of scattering version numbers inline, and remove the opaque 'omen v5 FM-V-2 / FM-GV-1, RPN 504-576' citations that carry no actionable content.

DimensionReasoningScore

Conciseness

The body is dense rule-and-table content without basic-concept explanations, but it contains several padded sections that should be tightened: a 33-line HTML comment block duplicating the Trigger Guidance, Collaboration, and Routing sections; handoff information stated three times (BIDIRECTIONAL_PARTNERS comment, '## Collaboration', '## Routing And Handoffs'); diagram-type lists repeated across three sections; opaque internal tokens ('omen v5 FM-V-2 / FM-GV-1, RPN 504-576'); and scattered version numbers (v11.12.3+, v11.14.0+) that the rubric flags as time-sensitive. This matches anchor 3 ('mostly efficient but... could be tightened') rather than anchor 2, since the padding is structural redundancy rather than explanation of concepts Claude already knows.

3 / 5

Actionability

The guidance is concrete and checkable: numeric thresholds (≤20 nodes, split at >30, 3:1 contrast ratio, 24×24 CSS pixel targets), explicit decision rules (TD/LR/BT direction choice, 'use `after` for sequential dependencies, `crit` for critical-path tasks'), a 9-field deliverable checklist, and per-recipe VERIFY gates — matching anchor 4's 'mostly executable guidance... with minor gaps'. It is not a 5 because there are no worked examples or copy-paste-ready snippets, and the actual diagram syntax is delegated entirely to reference files that are not present in this bundle.

4 / 5

Workflow Clarity

The UNDERSTAND → ANALYZE → DRAW → REVIEW workflow is laid out in a phase table with required action, key rule, and reference per phase, and REVIEW has explicit validation checkpoints (syntax self-validated against official Mermaid grammar, accessibility checks, real names, source disclosed) plus per-recipe VERIFY gates with corrective actions ('split at >30 unconditionally'), matching anchor 4. It falls short of anchor 5 because validation is descriptive ('re-check every directive') rather than an executable validate-and-retry loop with error-recovery feedback.

4 / 5

Progressive Disclosure

The body is structured as a genuine overview with well-signaled one-level-deep references via the Reference Map, Recipes 'Read First' column, Work Modes, and Output Routing 'Read next' — matching anchor 4's 'good structure; references mostly clear; minor organization gaps'. It is not a 5 because no bundle files exist (references/, scripts/, assets/ are absent, so the ~20 referenced reference/*.md and _common/*.md files cannot be verified), and the organizational redundancy (handoff info in three places, the hidden HTML comment) impedes clean navigation.

4 / 5

Total

15

/

20

Passed

Description

75%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 solid, concrete description that names specific formats and diagram types with an explicit (if narrow) usage clause. Its main weaknesses are the thin 'when' trigger phrasing — 'Use to reverse-document systems visually' covers only one use case — and missing common synonyms a user would naturally say when asking for a diagram. It sits comfortably in the upper-middle band: specific and distinctive, but not comprehensive.

Suggestions

Replace 'Use to reverse-document systems visually' with broader concrete trigger phrases, e.g. 'Use when the user asks for a diagram, flowchart, or visualization of code, architecture, data flows, or system structure.'

Add natural synonyms users would say — 'visualize architecture', 'architecture diagram', 'UML', 'Gantt/roadmap' — to strengthen trigger coverage and reduce missed invocations.

Mention the remaining major capabilities (C4 architecture views, Gantt/roadmap, before/after diff diagrams) so the 'what' coverage is comprehensive rather than partially enumerated.

DimensionReasoningScore

Specificity

The description enumerates concrete formats ("Mermaid, ASCII, or draw.io diagrams") and many specific output types ("flowcharts, sequence/state/class/ER, Journey Maps, personas, coverage heatmaps"), which matches anchor 4's 'several specific actions; minor gaps' — but action verbs are limited to 'Visualizing' and 'reverse-document', and capabilities like C4, gantt, and diff visualization are missing, so anchor 5's comprehensiveness is not met.

4 / 5

Completeness

Both parts are present: the 'what' is concrete ("Visualizing code, specs, or context as Mermaid, ASCII, or draw.io diagrams: ...") and an explicit trigger clause exists ("Use to reverse-document systems visually"), so the missing-'Use when' cap at 3 does not apply. It is not a 5 because the 'when' clause is narrow — it covers only reverse-documenting and omits concrete trigger phrases for the primary case of a user asking for a diagram or flowchart.

4 / 5

Trigger Term Quality

Natural trigger words are well covered ("diagrams", "flowcharts", "sequence", "ER", "Mermaid", "draw.io", "Journey Maps"), matching anchor 4's 'good keyword coverage; a few natural terms missing' — common variants like 'visualize architecture', 'UML', 'Gantt/roadmap', and 'architecture diagram' are absent, so it falls short of anchor 5's comprehensive synonym coverage; it is clearly above anchor 3's 'missing common variations'.

4 / 5

Distinctiveness Conflict Risk

The tool-specific triggers (Mermaid, draw.io, ASCII) and enumerated diagram types establish a clear diagramming niche with mostly distinct triggers (anchor 4), but 'Visualizing code, specs, or context' plus 'coverage heatmaps' and 'personas' create minor overlap risk with general charting/dataviz and UX skills, keeping it below anchor 5's 'minimal conflict risk'.

4 / 5

Total

16

/

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

simota/agent-skills

Path

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.