CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

shadcn-ui

Give the assistant project-aware shadcn/ui context: components.json, composition patterns, CLI, registries, theming, and MCP. Use when working on web UI, shadcn components, or presets. Overview aligns with https://ui.shadcn.com/docs/skills.md; full upstream skill text is vendored under vendor/shadcn/.

Quality

79%

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 ./.agents/skills/shadcn-ui/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 overview skill that defers bulk detail to vendored reference files with clear one-level-deep navigation and concrete executable commands. Its main weakness is token redundancy — the same links and purpose statements are repeated across multiple sections — and the absence of any inline example (e.g., `shadcn info --json` output) before handing off to the vendored docs.

Suggestions

Consolidate navigation into a single map: keep the Doc→Path table (or the "What's included" section) and drop the duplicate links in "Learn more (web)" and repeated inline mentions of vendor/shadcn/cli.md (currently linked 4 times).

Cut the opening paragraph that restates the description and explains what skills are; the description already carries that, and Claude does not need skills explained.

Trim the "Install (ecosystem vs this repo)" meta-commentary to the two commands and one line noting the repo-local path difference.

Inline a short sample of `shadcn info --json` output (or 2-3 lines of a composition rule) so the most common use case does not require opening a vendored file.

DimensionReasoningScore

Conciseness

Mostly efficient pointer-style body, but noticeably redundant: "[vendor/shadcn/cli.md](./vendor/shadcn/cli.md)" is linked four times (lines 55, 63, 82, 96), customization.md/mcp.md each twice, and the "Learn more (web)" section repeats the Theming/Registry/CLI links already given. The opening paragraph ("Skills give AI assistants project-aware context about shadcn/ui...") restates the description and explains what skills are. Fits 'mostly efficient but could be tightened' rather than the minor-trim bar of 4; not 2 since there is no padded concept exposition.

3 / 5

Actionability

Concrete, executable commands are given ("cd web && bunx shadcn@latest info --json", "npx skills add shadcn/ui") plus an explicit ground-truth rule ("Use `shadcn info --json` as ground truth for imports and APIs") and detection condition ("Applies when `components.json` exists (here: `web/components.json`"). Not 5: no inline snippet or example `info --json` output — common-case execution details are delegated entirely to vendored files. Not 3: the commands are real and copy-pasteable, not pseudocode.

4 / 5

Workflow Clarity

"How it works" gives a numbered 1–4 sequence (project detection → context injection → pattern enforcement → component discovery) and the closing "Workflow:" paragraph adds explicit routing ("Prefer this root SKILL.md for repo paths... Read vendor/shadcn/official-shadcn-ui-workflow.md only when you need the complete official... workflow"). Not 5: no explicit validation checkpoints or error-recovery loops, though the context-injection nature of the skill (non-destructive) makes the missing-validation cap inapplicable. Not 3: the sequence and when-to-read-what routing are explicit, not implicit.

4 / 5

Progressive Disclosure

Good structure: an overview body with clearly signaled, one-level-deep references, organized both by topic ("What's included") and as a Doc→Path table ("Vendored upstream bundle"), plus a when-to-read-which workflow note. Not 5: navigation is diffused — the same vendored files are linked from three different sections, and the referenced paths (vendor/shadcn/*) are not present in this bundle (no references/scripts/assets directories exist alongside), so the split cannot be verified. Not 3: references are clearly signaled and appropriately separated rather than buried or inlined.

4 / 5

Total

15

/

20

Passed

Description

83%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 (six concrete context areas) and when (an explicit "Use when..." clause with natural trigger terms) in third person, with a distinctive shadcn/ui niche. Minor room to improve: the single generic verb "give context" undersells the concrete actions, the broad "web UI" trigger slightly widens conflict risk, and the trailing vendoring/URL meta-sentence adds tokens without capability information.

DimensionReasoningScore

Specificity

"Give the assistant project-aware shadcn/ui context: components.json, composition patterns, CLI, registries, theming, and MCP" enumerates six concrete capability areas with a named config file. Not 5: a single generic verb ("give... context") rather than multiple distinct concrete actions (cf. "Extract text... fill forms, merge documents"). Not 3: the enumerated scope is specific and comprehensive for the domain, well beyond "1-2 concrete actions". Third-person voice is used correctly.

4 / 5

Completeness

Both halves are explicit: what = "Give the assistant project-aware shadcn/ui context: components.json, composition patterns, CLI, registries, theming, and MCP"; when = "Use when working on web UI, shadcn components, or presets". This mirrors the anchor-5 exemplar pattern of a concrete capability list followed by an explicit "Use when..." trigger clause. Not 4: the "when" is explicit and trigger-phrase-based, not merely present-but-vague.

5 / 5

Trigger Term Quality

"Use when working on web UI, shadcn components, or presets" supplies natural phrases a user would actually say. Not 5: common synonyms and variations are missing — "shadcn/ui", "Tailwind", "Radix", or concrete component requests ("add a dialog/button") that users typically phrase naturally. Not 3: multiple relevant natural terms are present, not just one or two generic keywords.

4 / 5

Distinctiveness Conflict Risk

The core identity is a clear niche (shadcn/ui, components.json, registries) with distinct triggers ("shadcn components", "presets"), unlikely to fire for unrelated skills. Not 5: the trigger "web UI" is broad and would match nearly any frontend/UI task, creating minor overlap with general web-development skills. Not 3: far more specific than the "Works with document files" level of overlap.

4 / 5

Total

17

/

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: 17 missing, 16 deeper-than-1-level

Warning

Total

15

/

16

Passed

Repository

langbot-app/langbot-new-api

Path

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