Manages shadcn components and projects — adding, searching, fixing, debugging, styling, and composing UI. 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", or "switch to --preset".
Collected from public GitHub. Every version is saved exactly as it was and never changes. Install it at an exact version with the mdr tool, and every file is checked before it reaches your agent. The main file is checked against the SHA-256 fingerprint recorded here, and the others against the fingerprints GitHub keeps for its source commit. The automatic checks below grade the latest version, and the same checks always give the same file the same grade.
What the file says
# shadcn/ui
A framework for building ui, components and design systems. Components are added as source code to the user's project via the CLI.
> **IMPORTANT:** Run all CLI commands using the project's package runner: `npx shadcn@latest`, `pnpm dlx shadcn@latest`, or `bunx --bun shadcn@latest` — based on the project's `packageManager`. Examples below use `npx shadcn@latest` but substitute the correct runner for the project.
## Current Project Context
```json
!`npx shadcn@latest info --json`
```
The JSON above contains the project config and installed components. Use `npx shadcn@latest docs <component>` to get documentation and example URLs for any component.
## Principles
1. **Use existing components first.** Use `npx shadcn@latest search` to check registries before writing custom UI. Check community registries too.
2. **Compose, don't reinvent.** Settings page = Tabs + Card + form controls. Dashboard = Sidebar + Card + Chart + Table.
3. **Use built-in variants before custom styles.** `variant="outline"`, `size="sm"`, etc.
4. **Use semantic colors.** `bg-primary`, `text-muted-foreground` — never raw values like `bg-blue-500`.
## Critical Rules
…
The line at the top of this page pins the label git:20260422.301f3f1, which is what most people want. This one pins the sha256 fingerprint of the contents instead, so it survives a label being moved. Either way the exact version is written to mdr.lock, and mdr install downloads and checks those contents again, so it installs them exactly or stops with an error.
GET https://markdownregistry.com/api/v1/artifacts/art_eycsc5chk2o7t3v4
GET https://markdownregistry.com/api/v1/resolve?ref=invergent-ai/surogates/shadcn
GET https://markdownregistry.com/api/v1/blob/de1c1ad6a44d5a963370d172ea8c770cb3b87e733dd09fa5681e86eac473ae2e
Your AI assistant does the legwork. You hear about the deals worth your word. Hand yours the standing instructions at modelranch.com and it joins the network that reads files like this one.
invergent-ai/surogates · skills/kanban/subagent-task-orchestrator/SKILL.md · Decomposition playbook and anti-temptation rules for an orchestrator agent that routes work through the Surogates…
invergent-ai/surogates · skills/kanban/subagent-task-worker/SKILL.md · Pitfalls, examples, and edge cases for workers executing a Surogates subagent task. Loaded automatically when the…
invergent-ai/surogates · skills/process/dispatching-parallel-agents/SKILL.md · Split 2+ independent investigations or tasks across sub-agents (delegate_task) and merge the results.
invergent-ai/surogates · skills/process/writing-plans/SKILL.md · Turn an agreed spec for a large multi-step build into a step-by-step implementation plan.
invergent-ai/surogates · skills/productivity/consolidate-memory/SKILL.md · Clean up memory (merge duplicates, fix or remove stale entries) when the user asks.
invergent-ai/surogates · skills/productivity/doc-coauthoring/SKILL.md · Co-write a long structured document (proposal, spec, decision doc) with the user over several rounds, when they want to…
invergent-ai/surogates · skills/productivity/docx/SKILL.md · Create, edit or convert Word documents (.docx/.dotx), including tracked changes, comments, images and formatting.
invergent-ai/surogates · skills/productivity/import-memory/SKILL.md · Import a memory export from another assistant (ChatGPT, Gemini, Claude, ...) into memory.