CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

prototype

Build multiple genuinely different versions of a UI piece you describe, rendered behind a visual picker so you can flip through them live and promote the one that feels right. Only runs when explicitly invoked; it does not trigger on its own.

Quality

72%

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 ./.codex/skills/prototype/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

63%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-organized, token-efficient instruction skill with a clearly sequenced six-phase workflow and unusually concrete guidance (paths, counts, invocation syntax, motion standards). Its critical flaw is that the twice-referenced PICKER.md — the verbatim spec for the skill's central artifact — is missing from the bundle, which undercuts both actionability and the progressive-disclosure structure.

Suggestions

Ship the referenced PICKER.md (the verbatim picker markup, styles, and keyboard wiring) or inline its spec into the body — as written, the skill's core deliverable cannot be built from the provided files.

Add an error-recovery loop to Phase 5: what to do when a variant fails to render, an interaction breaks, or the console errors (fix → re-verify), closing the workflow's feedback gap.

Trim the duplicated guidance between the Tone section and Phase 5's table contract ("one line on when it wins, one on what it costs" appears in both places).

DimensionReasoningScore

Conciseness

The body is dense with non-obvious, skill-specific guidance (divergence rules, the isolated prototype surface path, 100+/session flip frequency justifying no swap animation) and explains nothing Claude already knows. Minor trimmable redundancy remains — e.g. the Tone section re-states Phase 5's table contract ("one line on when it wins, one on what it costs"), and the Operating Posture explains the divergence rationale twice — so it fits anchor 4 rather than anchor 5's 'every token earns its place'.

4 / 5

Actionability

Much is concrete and executable: exact paths (".playwright-tmp/prototypes/<slug>/"), default variant counts (3, cap 5), concrete invocation syntax ("<description> x5", "riff <variant>", "keep <variant>, leave the picker"), and specific motion standards. But the core deliverable — the picker — is specified only as "Its exact markup, styles, and behavior are specified in [PICKER.md](PICKER.md) — copy them verbatim", and PICKER.md is absent from the bundle, leaving the central artifact unbuildable. That is a missing key detail, matching anchor 3 rather than 4.

3 / 5

Workflow Clarity

Six phases are clearly sequenced with explicit checkpoints: completion criteria in Phase 3 ("every variant has a name and a stated axis") and Phase 5 ("no console errors; the table names each variant's tradeoff"), plus a Phase 5 verification pass ("flip through all of them yourself"). The destructive operation (deleting the prototype surface, Hard Rule 5) is gated behind explicit user selection. It falls short of anchor 5 because there is no error-recovery loop when Phase 5 verification fails, and execution depends on the missing PICKER.md.

4 / 5

Progressive Disclosure

Structure is good: a sectioned overview (posture, hard rules, phases, invocation table) with a well-signaled, one-level-deep reference to PICKER.md ("load it now and build exactly that"). However, the referenced file does not exist in the bundle — the only external reference is dangling, so the disclosure structure does not actually hold, matching anchor 3's 'could be better organized' rather than anchor 4's 'references mostly clear'.

3 / 5

Total

14

/

20

Passed

Description

70%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 strong, concrete description that clearly communicates a distinct capability (divergent UI variants behind a live picker) with mostly natural trigger language. Its main weaknesses are second-person phrasing, missing common synonyms like "prototype"/"mockup", and a purely negative invocation clause instead of positive use-case triggers.

Suggestions

Add natural trigger synonyms users would actually say — "prototype", "mockup", "design variations", "directions" — to broaden discoverability.

Rewrite "a UI piece you describe" in third person (e.g., "a described UI piece") and add a positive when-clause such as "Use when exploring divergent directions for a UI component before committing to one."

DimensionReasoningScore

Specificity

The description lists several concrete actions — "Build multiple genuinely different versions of a UI piece", "rendered behind a visual picker", "flip through them live", "promote the one that feels right" — which fits anchor 4 with minor coverage gaps (no mention of variant counts, riff/keep rounds, or cleanup). However, it uses second person ("a UI piece you describe"), which the rubric penalizes by one point, bringing it to anchor 3.

3 / 5

Completeness

The 'what' is fully explicit (build divergent variants of a described UI piece behind a live picker; promote the winner). The 'when' is explicitly stated — "Only runs when explicitly invoked; it does not trigger on its own" — which is real trigger guidance (consistent with disable-model-invocation), but it is purely an exclusion with no positive use-case trigger phrases, so it falls between anchor 3 (when weakly implied) and anchor 4 (when present but could be more specific).

4 / 5

Trigger Term Quality

Natural phrases a user would say are present: "different versions", "visual picker", "flip through", "promote", "UI piece". It misses common synonyms like "prototype", "mockup", "design variations", or "directions", so it does not reach anchor 5's comprehensive synonym coverage, but it is noticeably above the midpoint.

4 / 5

Distinctiveness Conflict Risk

A clear niche — divergent variant generation behind a live visual picker — that is distinguishable from generic UI-building skills, and the "does not trigger on its own" note eliminates auto-trigger conflict entirely. It stops short of anchor 5 because the description itself doesn't positively disambiguate against closely related UI-design skills (that boundary work lives in the body, not the description).

4 / 5

Total

15

/

20

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.

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

relative_links

Relative link issues: 2 missing

Warning

Total

15

/

16

Passed

Repository

jscraik/websites

Path

.codex/skills/prototype/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.