CtrlK
BlogDocsLog inGet started
Tessl Logo

deck-open-slide-canvas

Locked 1920x1080 canvas deck with React component-level free composition, not bound to a fixed template.

54

Quality

61%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Low

Low-risk findings worth noting

Fix and improve this skill with Tessl

tessl review fix ./skills/deck-open-slide-canvas/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

72%

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

The body is a token-efficient, highly concrete design spec well-suited to a simple single-file skill. Its main gaps are the absence of a complete executable skeleton and an explicit post-build validation checkpoint for the hard no-overflow constraint.

Suggestions

Add a minimal complete single-file HTML skeleton (canvas wrapper with transform: scale, one <section class="slide">, Tailwind CDN, keyboard/hash nav, corner badges) so the spec is copy-paste ready rather than fragmentary.

Insert an explicit validation checkpoint in the build flow, e.g. 'After composing each slide, verify content fits 1920×1080 with no scrollbars; if it overflows, reduce type scale or padding tier before proceeding.'

Show one short worked example page (e.g., a cover or question layout) applying the type scale, one palette, and the single-visual-center rule so the layout-freedom guidance is concrete rather than abstract.

DimensionReasoningScore

Conciseness

The body is a dense spec with exact values (type scale in px, padding tiers, palette hex codes, font names) and explains no concepts Claude already knows, so every token earns its place — matching 'Lean and efficient; assumes Claude's competence' rather than the padded score 2.

3 / 3

Actionability

Guidance is highly concrete (exact CSS 'width: 1920px; height: 1080px; transform: scale(...)', exact section markup '<section class="slide" data-slide-id="<n>">', exact fonts and hex codes), but there is no complete executable HTML/React skeleton integrating these specs, so it is not fully copy-paste ready — matching 'Some concrete guidance but incomplete' rather than the score-3 complete-example anchor.

2 / 3

Workflow Clarity

Sections are clearly organized (硬性技术规格, 调色板, 布局自由度, 字体, 设计细节) and the single task is largely unambiguous, but there is no explicit build sequence or validation checkpoint; the '绝对禁止 overflow' rule is a constraint rather than a verify step, matching 'Steps listed but validation gaps' / implicit checkpoints rather than the score-3 explicit-validation anchor.

2 / 3

Progressive Disclosure

This is a single-file skill under 50 lines with no external references (no references/, scripts/, or assets/ bundle exists) and the body is organized into clearly labeled sections, so per the rubric's simple-skills note progressive disclosure scores 3 with just well-organized sections.

3 / 3

Total

10

/

12

Passed

Description

50%

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

The description is specific about the artifact's domain and constraints but reads as a product characterization rather than a capability/trigger statement. It lacks concrete actions and any 'Use when...' guidance, leaving all dimensions at the mid-level.

Suggestions

Add an explicit 'Use when...' clause naming trigger scenarios (e.g., 'Use when building a free-form 16:9 slide deck, design portfolio, or art/design class presentation').

Replace the noun-phrase characterization with concrete actions (e.g., 'Generates single-file HTML slide decks on a locked 1920x1080 canvas using React-style free composition').

Include natural user keywords beyond 'deck' — add 'slides', 'presentation', '16:9 slides', 'free-form deck' — so it triggers on how users actually ask.

DimensionReasoningScore

Specificity

The phrase 'Locked 1920x1080 canvas deck with React component-level free composition' names the domain concretely but states no concrete actions (no verbs like 'generate', 'extract', 'fill'), so it matches 'Names domain and some actions, but not comprehensive' rather than the multi-action score 3 or the vague score 1.

2 / 3

Completeness

It answers 'what' (a locked 1920x1080 canvas deck with free React composition) but provides no 'Use when...' clause or equivalent trigger guidance, so per the rubric guideline a missing trigger clause caps completeness at 2 ('Has what, but when is missing or only implied').

2 / 3

Trigger Term Quality

It includes some natural terms a user might say ('deck', '1920x1080', 'canvas') but misses common variations like 'slides', 'presentation', or 'PPT', and 'React component-level free composition' reads as internal jargon, matching 'Some relevant keywords but missing common variations' rather than full score-3 coverage.

2 / 3

Distinctiveness Conflict Risk

The niche is fairly specific (locked 1920x1080 React free-composition deck), but with no explicit triggers a generic 'make me a slide deck / presentation' request could fire this over a more appropriate skill, matching 'Somewhat specific but could still overlap with similar skills' rather than the trigger-distinguished score 3.

2 / 3

Total

8

/

12

Passed

Validation

93%

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

Validation15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

15

/

16

Passed

Repository
nexu-io/open-design
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.