Skills shadcn
๐Ÿ“ฆ

shadcn

Content revision r2 Safe ๐ŸŒ Network access๐Ÿ“ Filesystem accessโš™๏ธ External commands

Build and Manage shadcn Interfaces

Building consistent shadcn interfaces requires current project context and correct component APIs. This skill guides discovery, installation, updates, styling, composition, and registry workflows.

Supports: Claude Codex Code(CC)
๐Ÿ“Š 73 Adequate

Install with my Agent

Copy this request to your Agent. It includes the canonical Skill page and manifest.

Agent request
Review the Skillstore skill "shadcn" from https://skillstore.io/skills/shadcn-shadcn.md and its manifest at https://skillstore.io/api/skills/shadcn-shadcn/manifest. Verify the artifact. You may proceed after verification, subject to the environment's own policy.

Your Agent should still show its plan and request any confirmation required by the security policy.

Agent-readable resources

Use these links when an AI agent, crawler, or script needs clean context instead of reading the full page.

Test it

Using "shadcn". Create a profile settings form with email validation and notification toggles.

Expected outcome:

  • A project-aware component plan using FieldGroup and Field.
  • Accessible validation states using data-invalid and aria-invalid.
  • Independent notification controls selected from existing shadcn components.

Using "shadcn". Update the button component without losing local styling changes.

Expected outcome:

A dry-run summary, per-file difference review, and a proposed merge that preserves local modifications before approval.

Using "shadcn". Switch this project to a new preset code.

Expected outcome:

A comparison of overwrite, partial, merge, and skip outcomes, followed by the approved migration workflow.

Security Audit

Safe
v6 โ€ข 7/23/2026 Open versioned report

Most detections are false positives from Markdown, TSX templates, accessibility attributes, documentation links, and relative references. The skill legitimately runs an unpinned shadcn CLI, retrieves remote registry content, and can modify project files. No prompt injection, credential theft, covert persistence, or data-exfiltration intent was found.

13
Files scanned
2,460
Lines analyzed
30
Review items
0
False positives ignored
Capability review items (30)

These are real local capabilities that may be expected for this skill, so they require review but are not counted as confirmed malicious behavior.

High
Ruby/shell backtick execution
!`npx shadcn@latest info --json`
The injection directive automatically executes npx shadcn@latest info --json, downloading mutable code and reading project metadata without a separate prompt.
Medium
Ruby/shell backtick execution
> **IMPORTANT:** Run all CLI commands using the project's package runner: `npx shadcn@latest`, `pnpm
The skill directs agents to execute the mutable shadcn@latest package, creating expected package supply-chain and command-execution exposure.
Medium
Ruby/shell backtick execution
The JSON above contains the project config and installed components. Use `npx shadcn@latest docs <co
Following this instruction executes the mutable shadcn@latest package. The operation is legitimate but carries package supply-chain and subprocess risk.
Medium
Ruby/shell backtick execution
1. **Use existing components first.** Use `npx shadcn@latest search` to check registries before writ
Following this instruction executes the mutable shadcn@latest package. The operation is legitimate but carries package supply-chain and subprocess risk.
Medium
Ruby/shell backtick execution
- **Use `asChild` (radix) or `render` (base) for custom triggers.** Check `base` field from `npx sha
Following this instruction executes the mutable shadcn@latest package. The operation is legitimate but carries package supply-chain and subprocess risk.
Medium
Ruby/shell backtick execution
- **Never decode preset codes or build preset URLs manually.** Use `npx shadcn@latest preset decode
Following this instruction executes the mutable shadcn@latest package. The operation is legitimate but carries package supply-chain and subprocess risk.
Medium
Ruby/shell backtick execution
- **Apply preset codes directly with the CLI.** Use `npx shadcn@latest apply <code>` for existing pr
The apply and init commands execute a remote CLI and modify project configuration or source files.
Medium
Ruby/shell backtick execution
- **`packageManager`** โ†’ use this for any non-shadcn dependency installs (e.g. `pnpm add date-fns` v
This instruction can install dependencies with the project package manager, causing network access and project changes.
Medium
Ruby/shell backtick execution
- **`preset`** โ†’ resolved preset code and values for the current project. Use `npx shadcn@latest pre
Following this instruction executes the mutable shadcn@latest package. The operation is legitimate but carries package supply-chain and subprocess risk.
Medium
Ruby/shell backtick execution
Run `npx shadcn@latest docs <component>` to get the URLs for a component's documentation, examples,
This instruction executes the mutable CLI and fetches returned URLs, creating legitimate network and remote-content exposure.
Medium
Ruby/shell backtick execution
**When creating, fixing, debugging, or using a component, always run `npx shadcn@latest docs` and fe
This instruction executes the mutable CLI and fetches returned URLs, creating legitimate network and remote-content exposure.
Medium
Ruby/shell backtick execution
1. **Get project context** โ€” already injected above. Run `npx shadcn@latest info` again if you need
Following this instruction executes the mutable shadcn@latest package. The operation is legitimate but carries package supply-chain and subprocess risk.
Medium
Ruby/shell backtick execution
3. **Find components** โ€” `npx shadcn@latest search`.
Following this instruction executes the mutable shadcn@latest package. The operation is legitimate but carries package supply-chain and subprocess risk.
Medium
Ruby/shell backtick execution
4. **Get docs and examples** โ€” run `npx shadcn@latest docs <component>` to get URLs, then fetch them
This instruction executes the mutable CLI and fetches returned URLs, creating legitimate network and remote-content exposure.
Medium
Ruby/shell backtick execution
5. **Install or update** โ€” `npx shadcn@latest add`. When updating existing components, use `--dry-ru
The add command downloads registry content and writes project files. Dry-run and diff guidance reduces this expected risk.
Medium
Ruby/shell backtick execution
6. **Fix imports in third-party components** โ€” After adding components from community registries (e.
The workflow modifies imports in downloaded third-party files and reruns the CLI, creating project-write and dependency trust risk.
Medium
Ruby/shell backtick execution
- **Inspect current preset**: `npx shadcn@latest preset resolve`. Use `--json` when you need structu
Following this instruction executes the mutable shadcn@latest package. The operation is legitimate but carries package supply-chain and subprocess risk.
Medium
Ruby/shell backtick execution
- **Inspect incoming preset**: `npx shadcn@latest preset decode <code>`. Use `preset url <code>` or
Following this instruction executes the mutable shadcn@latest package. The operation is legitimate but carries package supply-chain and subprocess risk.
Medium
Ruby/shell backtick execution
- **Overwrite**: `npx shadcn@latest apply <code>`. Overwrites detected components, fonts, and CSS va
The apply command intentionally overwrites components, fonts, and CSS variables after user selection, creating substantial project modification risk.
Medium
Ruby/shell backtick execution
- **Partial**: `npx shadcn@latest apply <code> --only theme,font`. Updates only the selected preset
The partial apply command intentionally rewrites selected theme or font files, creating controlled project modification risk.
Medium
Ruby/shell backtick execution
- **Merge**: `npx shadcn@latest init --preset <code> --force --no-reinstall`, then run `npx shadcn@l
The merge workflow runs forced initialization and repeated CLI operations that can alter configuration and component files.
Medium
Ruby/shell backtick execution
- **Skip**: `npx shadcn@latest init --preset <code> --force --no-reinstall`. Only updates config and
The forced initialization command intentionally updates project configuration and CSS while preserving components.
Medium
Ruby/shell backtick execution
- **Important**: Always run preset commands inside the user's project directory. `apply` only works
Following this instruction executes the mutable shadcn@latest package. The operation is legitimate but carries package supply-chain and subprocess risk.
Medium
Ruby/shell backtick execution
1. Run `npx shadcn@latest add <component> --dry-run` to see all files that would be affected.
Following this instruction executes the mutable shadcn@latest package. The operation is legitimate but carries package supply-chain and subprocess risk.
Medium
Ruby/shell backtick execution
2. For each file, run `npx shadcn@latest add <component> --diff <file>` to see what changed upstream
Following this instruction executes the mutable shadcn@latest package. The operation is legitimate but carries package supply-chain and subprocess risk.
Medium
Ruby/shell backtick execution
- User says "just update everything" โ†’ use `--overwrite`, but confirm first.
This permits destructive overwrite after explicit user approval. It is expected behavior but remains a project-write risk.
Medium
Ruby/shell backtick execution
```bash
The fenced reference contains executable init, apply, add, search, and view commands that can download content and modify projects.
Low
Hardcoded URL
npx shadcn@latest add https://api.npoint.io/abc123 --dry-run
The documented command retrieves content from a third-party registry URL. Dry-run limits writes, but remote content is still retrieved.
Low
Hardcoded URL
npx shadcn@latest apply --preset "https://ui.shadcn.com/init?base=radix&style=nova&theme=blue&..."
The command passes an official remote preset URL to apply, causing expected network retrieval before project changes.
Low
Hardcoded URL
-> read https://raw.githubusercontent.com/{owner}/{repo}/{sha}/registry.json
The registry workflow retrieves GitHub files at a pinned commit. Network access is intentional, and SHA pinning improves integrity.
Audited by: codex View Audit History โ†’
Share & cite this report

Share the versioned assessment report, neutral badge, embed card, and citations. Skillstore reports evidence without deciding whether this Skill is safe.

Open versioned report
Security Assessment

Copy report link

https://skillstore.io/skills/shadcn-shadcn/audits/6?utm_source=security_passport&utm_medium=share&utm_campaign=versioned_report

Markdown badge

[![Skillstore security assessment](https://skillstore.io/badges/skills/shadcn-shadcn/security.svg)](https://skillstore.io/skills/shadcn-shadcn?utm_source=security_passport_badge)

HTML badge

<a href="https://skillstore.io/skills/shadcn-shadcn?utm_source=security_passport_badge"><img src="https://skillstore.io/badges/skills/shadcn-shadcn/security.svg" alt="Skillstore security assessment" loading="lazy"></a>

Embed card

<iframe src="https://skillstore.io/embed/skills/shadcn-shadcn.html" title="Skillstore Security Assessment" sandbox="allow-popups allow-popups-to-escape-sandbox" loading="lazy" referrerpolicy="no-referrer" width="420" height="180"></iframe>
Academic citations (APA ยท BibTeX ยท CFF)

APA citation

shadcn. (2026). shadcn security audit report (audit version 6) [Author version unspecified]. Skillstore. https://skillstore.io/skills/shadcn-shadcn/audits/6

BibTeX citation

@techreport{shadcn-shadcn-shadcn-2026, author = {shadcn}, title = {shadcn security audit report (audit version 6)}, institution = {Skillstore}, year = {2026}, number = {6}, url = {https://skillstore.io/skills/shadcn-shadcn/audits/6}, note = {Author version unspecified} }

CITATION.cff

cff-version: 1.2.0 message: "If you use this Skill, cite its author and this versioned security audit report." title: "shadcn security audit report (audit version 6)" version: "unspecified" type: report authors: - name: "shadcn" date-released: "2026-07-23" url: "https://skillstore.io/skills/shadcn-shadcn/audits/6" identifiers: - type: other value: "skillstore:shadcn-shadcn:audit:6" description: "Skillstore immutable audit report identifier"

Compare variants

2 installable variants

Each author remains a separate installable skill. The recommended variant is ranked by Skillstore evidence.

Why this variant is first

Highest Skillstore Score
shadcn Recommended Current

shadcn-shadcn

Skillstore Score 73
Evidence Confidence High
Skillstore usage 11
Updated

2026-08-22

shadcn-ui-shadcn

Skillstore Score 72
Evidence Confidence Medium
Skillstore usage 1
Updated

2026-08-22

Skillstore Score

Why this score Evidence Confidence: High
36
Architecture
85
Maintainability
87
Content
75
Community
83
Spec Compliance

What You Can Build

Implement application screens

Compose forms, dashboards, dialogs, and chat interfaces from compatible shadcn components.

Maintain a design system

Enforce semantic tokens, component composition, icon rules, and accessible interaction patterns.

Review component updates

Inspect upstream differences and preserve local changes before approving updates.

Try These Prompts

Add a component
Add a shadcn button. Inspect project context, confirm installation status, fetch current documentation, and use the existing icon library.
Build a validated form
Create a profile form with accessible validation and notification controls. Use installed components, semantic tokens, and project aliases.
Update customized components
Update the dialog component while preserving local changes. Preview every affected file, compare differences, and request approval before overwriting.
Migrate a preset safely
Compare the current preset with this preset code. Explain overwrite, partial, merge, and skip effects before changing any files.

Best Practices

  • Run project inspection before choosing imports, package commands, or component APIs.
  • Use dry-run and diff before updating files with local modifications.
  • Confirm the registry and review downloaded files before accepting community components.

Avoid

  • Do not guess component APIs without reading current documentation.
  • Do not overwrite customized components or apply presets without explicit approval.
  • Do not hardcode aliases, icon libraries, raw colors, or primitive-specific properties.

Frequently Asked Questions

Does this skill modify project files?
Yes. Add, apply, init, and dependency commands can change files. Review previews and approve destructive operations.
Does this skill require internet access?
Usually. The CLI may download packages, registry content, documentation, examples, and preset data.
Can it preserve customized components?
Yes. It supports dry-run and difference workflows for reviewing upstream changes before merging.
Does it support Base UI and Radix?
Yes. It reads the project base and applies matching APIs and trigger patterns.
Can it use community registries?
Yes. Specify the registry, inspect downloaded files, and verify imports, dependencies, and composition.
Does it replace product design decisions?
No. It enforces implementation rules, but visual direction, requirements, and acceptance decisions remain with the user.

Developer Details

Author

shadcn

License

MIT

Skillstore revision

r2

Version notice

The author did not declare a version.

Ref

ebdfe608f5de2b66ff37ab4af12af8ac4f5e8006

Maintenance freshness

7/26/2026

Usage

9 downloads ยท 562 views

File structure

๐Ÿ“ agents/

๐Ÿ“„ openai.yml

๐Ÿ“ assets/

๐Ÿ“„ shadcn-small.png

๐Ÿ“„ shadcn.png

๐Ÿ“„ cli.md

๐Ÿ“„ customization.md

๐Ÿ“ evals/

๐Ÿ“„ evals.json

๐Ÿ“„ mcp.md

๐Ÿ“„ registry.md

๐Ÿ“ rules/

๐Ÿ“„ base-vs-radix.md

๐Ÿ“„ chat.md

๐Ÿ“„ composition.md

๐Ÿ“„ forms.md

๐Ÿ“„ icons.md

๐Ÿ“„ styling.md

๐Ÿ“„ SKILL.md