CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

shadcn

Manages shadcn components and projects — adding, searching, fixing, debugging, styling, and composing UI, including chat interfaces. Provides project context, component docs, and usage examples. Applies when working with shadcn/ui, component registries, presets, --preset codes, or any project with a components.json file. Also triggers for "shadcn init", "create an app with --preset", "switch to --preset", and for building a design system or applying a DESIGN.md or brand spec to shadcn/ui.

72

Quality

91%

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

SKILL.md
Quality
Evals
Security

Quality

Content

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

The body is an exceptionally actionable, well-sequenced skill document: copy-paste CLI commands, correct/wrong code pairs, and workflows with explicit validation and confirmation gates for destructive operations. Its two weaknesses are redundant rule statements repeated across sections, and a progressive-disclosure structure whose referenced bundle files are almost entirely missing from the delivered bundle.

Suggestions

Ship the referenced bundle files — rules/styling.md, rules/forms.md, rules/composition.md, rules/chat.md, rules/icons.md, rules/base-vs-radix.md, cli.md, registry.md, customization.md, design-system.md, design-system-page.md — alongside SKILL.md; 11 of 12 referenced paths are absent from the bundle, so the progressive-disclosure navigation is broken in practice.

Deduplicate the "Critical Rules" and "Key Patterns" sections: the gap-* vs space-y-*, size-*, and semantic-color rules each appear twice; keep one canonical statement and link to the rule file from the other location.

Merge "Component Structure" and "Use Components, Not Custom Markup" (both resolve to composition.md) into a single section to remove repeated section overhead and duplicate pointer.

DimensionReasoningScore

Conciseness

The body is dense with Claude-unknown specifics (CLI flags, project conventions, component rules) and explains no basic concepts, but redundancy exists: "Key Patterns" restates Critical Rules ("Spacing: gap-*, not space-y-*" vs "No space-x-* or space-y-*"; "Equal dimensions: size-*" vs "Use size-* when width and height are equal"; "Status colors... not raw colors" vs "Use semantic colors"), and two separate sections ("Component Structure" and "Use Components, Not Custom Markup") both point to composition.md. Not 5: these duplicated rule statements are tokens that could be trimmed; not 3: nearly every line is skill-specific directive with no padding.

4 / 5

Actionability

Fully executable throughout: complete CLI commands with flags ("npx shadcn@latest add button --diff button.tsx", "npx shadcn@latest apply a2r6bw --only theme,font"), correct/wrong code pairs, a component-selection table, and an injected context command. Not 4: commands and examples are copy-paste ready and cover the common cases (init, add, search, docs, presets, updating, design systems) comprehensively.

5 / 5

Workflow Clarity

The 9-step Workflow is clearly sequenced with explicit validation checkpoints and feedback loops: "always read the added files and verify they are correct... Fix all issues before moving on", "use --dry-run and --diff to preview changes first", "Never use --overwrite without the user's explicit approval", and the design-system flow ends with "Verify in a browser: typecheck, no console errors, loads at the top, no horizontal overflow, dark mode". Destructive operations (overwrite, preset apply) are gated on user confirmation. Not 4: validation steps and error-recovery loops are explicit, matching the top anchor.

5 / 5

Progressive Disclosure

The in-text structure is exemplary — a concise overview with clearly signaled one-level-deep references ("### Styling & Tailwind → [styling.md](./rules/styling.md)") and a "Detailed References" index — but scored against the actual bundle, 11 of the 12 referenced files (rules/*.md, cli.md, registry.md, customization.md, design-system.md, design-system-page.md) do not exist; only scripts/showcase-coverage.mjs is present, so navigation breaks in practice. Not 4: missing 11 referenced paths is far beyond 'minor organization gaps'; not 2: the SKILL.md itself is well organized with nothing inlined that belongs in separate files.

3 / 5

Total

17

/

20

Passed

Description

96%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 description that explicitly answers both what the skill does and when to use it, with an unusually rich set of literal trigger phrases including CLI commands and the components.json filename. The only weakness is the unscoped 'building a design system' trigger, which introduces minor overlap risk with generic design-system skills.

DimensionReasoningScore

Specificity

The description lists multiple concrete actions — "adding, searching, fixing, debugging, styling, and composing UI, including chat interfaces" plus "Provides project context, component docs, and usage examples" — with comprehensive coverage across component management, docs, presets, and design systems. Not 4: coverage goes beyond 'minor gaps'; actions span the full range of what the skill body actually does.

5 / 5

Completeness

Both questions are explicitly answered: 'what' via "Manages shadcn components and projects — adding, searching, fixing, debugging, styling, and composing UI" and 'when' via "Applies when working with shadcn/ui, component registries, presets, --preset codes, or any project with a components.json file. Also triggers for..." with concrete trigger phrases. Not 4: the 'when' clause is fully explicit with enumerated triggers, not merely present.

5 / 5

Trigger Term Quality

Natural trigger coverage is comprehensive: "shadcn/ui", "component registries", "presets", "--preset codes", "components.json", "shadcn init", "create an app with --preset", "switch to --preset", "DESIGN.md", "brand spec" — including literal user phrasings, synonyms, and a config filename. Not 4: it includes exact command strings and synonym pairs (brand spec / DESIGN.md), matching the 'comprehensive including synonyms and file extensions' anchor.

5 / 5

Distinctiveness Conflict Risk

The dominant triggers ("shadcn", "components.json", "--preset") carve out a clear niche, but the trailing trigger "for building a design system" is not shadcn-scoped and could overlap with general design-system or theming skills. Not 5: that broad phrase invites minor conflict; not 3: the primary triggers are unmistakable and unlikely to fire the wrong skill.

4 / 5

Total

19

/

20

Passed

Validation

87%

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

Validation — 14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

allowed_tools_field

'allowed-tools' contains unusual tool name(s)

Warning

relative_links

Relative link issues: 21 missing

Warning

Total

14

/

16

Passed

Repository

shadcn-ui/ui

Path

skills/shadcn/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.