CommunityCodierung & Entwicklunggithub.com

shadcn-first

Erzwingt die Nutzung von shadcn/ui-Komponenten anstelle von handgeschriebenem CSS oder Stilobjekten.

Was ist shadcn-first?

Dieses Skill setzt eine strikte Hierarchie durch, um UI-Komponenten aus der shadcn/ui-Bibliothek zu verwenden, anstatt sie von Hand zu schreiben. Es ist für KI-Agenten wie Claude Code, Cursor oder Codex konzipiert und zielt darauf ab, die Wartbarkeit, Zugänglichkeit und Konsistenz in React-Projekten zu verbessern. Der Skill definiert eine feste Reihenfolge: Zuerst Blöcke von ui.shadcn.com/blocks installieren, dann Komponenten aus der Registry, dann zwei bis drei Komponenten komponieren und nur als letzten Ausweg selbst schreiben. Er stellt zwei MCP-Server bereit: `shadcn-official` für projektspezifische Arbeit (mit Befehlen wie `get_add_command_for_items` und `get_audit_checklist`) und `shadcn` für registrierungsweite Suche, Blöcke und Themes. Der Skill betont, dass Design und visuelle Sprache ausschließlich über Themavariablen angepasst werden dürfen, nicht über pro-Screen-CSS. Er listet häufig neu erfundene Komponenten auf (z. B. Sidebar, Command, Table) und verlangt vor Abschluss die Ausführung der Audit-Checkliste, um die Anzahl handgeschriebener UI-Zeilen zu messen. Abschluss erfordert sowohl einen Screenshot als auch die Metriken.

Funktioniert mit~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/getedgehq/skills/tree/main/shadcn-first

Installed? Explore more Codierung & Entwicklung skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

Was macht shadcn-first?

Jemand pflegt diesen Code nach dir. Jedes handgeschriebene div mit maßgeschneiderten Klassen und jedes style={{}} ist ein Teil, das am Leben erhalten werden muss und das mit der Zeit abweicht. Handgebaute UI verliert auch stillschweigend die Handwerkskunst, die kostenlos mit der Bibliothek geliefert wird: Fokusringe, Hover- und Aktivzustände, Tastaturnavigation, Skelette, Leerzustände, ARIA.

Die Reihenfolge. Überspringe niemals einen Schritt.

  1. Block. ui.shadcn.com/blocks hat ganze Seitenleisten, Dashboards, Logins, Datentabellen. Installiere den Block.
  2. Komponente. Wenn kein Block passt, verwende eine Komponente aus der Registry.
  3. Komponiere zwei oder drei Komponenten.
  4. Schreibe es selbst. Nur hier, und die Commit-Nachricht muss benennen, welchen Block oder welche Komponente du evaluiert hast und warum er nicht gepasst hat.

Passe das Design an die Komponente an, nicht die Komponente an das Design. Marke und visuelle Sprache werden durch Themavariablen in einem Theme erreicht, niemals pro Bildschirm CSS neben der Komponente.

Werkzeuge und welche zu verwenden sind

Es sind zwei MCP-Server konfiguriert. Sie haben unterschiedliche Aufgaben.

shadcn-official (npx shadcn@latest mcp) ist projektbewusst: es liest die components.json des Repos. Verwende es für die eigentliche Arbeit.

WerkzeugNutze es, um
get_project_registrieszu bestätigen, dass das Projekt überhaupt initialisiert ist
search_items_in_registriesdie richtige Komponente zu finden, unscharf
list_items_in_registriesalles Verfügbare zu sehen
view_items_in_registriesden tatsächlichen Quelltext und die Abhängigkeiten einer Komponente zu lesen, bevor du sie verwendest
get_item_examples_from_registriesein echtes Nutzungsbeispiel zu kopieren, anstatt die API zu erraten
get_add_command_for_itemsdie exakte npx shadcn add …-Zeile zu erhalten und sie dann auszuführen
get_audit_checklistnach dem Schreiben von Code auszuführen. Dies ist das Tor.

shadcn (@jpisnice/shadcn-ui-mcp-server) ist registrierungsweit und kennt Blöcke und Themes: list_blocks, get_block, list_themes, get_theme, get_component_demo. Verwende es für Schritt 1 und für das Theming.

Wenn ein Projekt keine components.json hat, schlagen die offiziellen Werkzeuge fehl. Führe zuerst npx shadcn@latest init aus, dann fahre fort.

Verwende für KI-Chat-Oberflächen prompt-kit (prompt-kit.com, shadcn-kompatibel): chat-container, message, prompt-input, scroll-button, markdown, code-block, loader. Gleiche Regel: installieren statt neu bauen.

Komponenten, die Leute immer wieder neu erfinden, anstatt sie zu installieren

sidebar (einklappbar, mit Benutzermenü in der Fußzeile), command (Cmd+K-Palette), table + TanStack Data-Table-Block, tabs, sheet, dialog, alert-dialog, popover, tooltip, skeleton, sonner (Toasts), form (react-hook-form + zod), breadcrumb, resizable, scroll-area, avatar, badge, separator, dropdown-menu, select, collapsible, chart.

Wenn du dich dabei ertappst, eine dieser Komponenten von Hand zu bauen, höre auf und installiere sie.

Tastaturkürzel

Verwende Cmd+K für die Befehlspalette; das ist die cmdk-Konvention, die die command-Komponente mitbringt. Cmd+L ist vom Browser für die Adressleiste reserviert und kann in Chrome nicht zuverlässig abgefangen werden. Wenn jemand nach Cmd+L fragt, binde Cmd+K, füge Cmd+L opportunistisch hinzu und erkläre warum.

Fertig bedeutet gemessen, nicht behauptet

Bevor du „fertig“ meldest, führe get_audit_checklist aus und berichte die Zahlen:

  • Entfernte benutzerdefinierte UI-Zeilen
  • Installierte Blöcke und Komponenten
  • Verbleibende style={{}}-Vorkommen (grep -rc 'style={{' src/)
  • Pro Bildschirm: Elemente aus components/ui/ vs. handgeschriebene

Alles, was noch handgeschrieben ist, muss dort mit einem genannten Grund stehen, nicht übersehen werden. Ein Screenshot ist der Beweis, dass der Bildschirm rendert; die Zählungen sind der Beweis, dass die Regel befolgt wurde. Beides, sonst ist es nicht fertig.

Nicht tun

  • Keine Emojis in der UI. Echte SVG-Icons (Lucide wird mit shadcn ausgeliefert).
  • Keine Texte-in-Kreisen für Markenlogos. Echte SVG-Pfade beschaffen: SimpleIcons > svgl.app > gilbarbara/logos > Favicon.
  • Maximal ein oder zwei Akzentfarben. Keine farbigen linken Rahmen auf Karten. Kein Farbverlauf auf jedem Element.
  • Forke keine Komponente, um eine Farbe zu ändern. Ändere die Theme-Variable.

Individual skills in this repo

This repo contains 18 individual skills — each has its own dedicated page.

getedgehq/agent-evals

Build evals for an AI agent that already does real work. Use when someone asks "how do I know my agent is right", wants to test an agent before trusting it, compare models on cost versus quality, or turn production failures into tests. Walks from first tasks and yes/no verifiers, to isolated environments, to a trace-driven improvement loop.

getedgehq/cli-ux-review

Audit a command-line tool for user-friendliness — clear situation / next-step / options in every output, colour-highlighted runnable commands, no raw jargon, no silent hangs. Invoke for "CLI UX audit", "review my CLI", "is this CLI intuitive", or before any CLI release.

getedgehq/generate-image

Generate images with OpenAI GPT Image 2 via the Codex CLI, billed through the user's ChatGPT Plus subscription (no OpenAI API key, no per-image API cost). Use when the user asks to create, generate, or make an image, picture, illustration, icon, hero graphic, or concept art from a text prompt.

getedgehq/harness-first

Diagnose and fix an unreliable, expensive, or unsafe LLM agent by auditing its harness (golden set, judge, cost caps, data layer, action approvals, tracing) before blaming or swapping the model. Use when someone says an agent is "burning tokens", "hallucinating", "brittle", gives inconsistent answers, asks whether to switch to a cheaper/better model, or wants to ship an agent or prompt change to customers.

getedgehq/http-error-triage

Run before concluding anything from an HTTP error on a third-party API. Separates a real credential/entitlement problem from a CDN or WAF block, a wrong endpoint, or a client-signature ban. Use whenever an API returns 401/403/402/429 and you are about to say "the key is dead", "credits are exhausted", "the plan lacks access", or "we are rate limited".

getedgehq/linkedin-media-prep

Convert, crop, resize, and compress images and videos for optimal LinkedIn upload quality and file size. Use when the user wants to prepare a photo, image, or video for LinkedIn (profile picture, cover photo, post image, article featured image, post video, or video ad), optimize file size for LinkedIn, crop and resize for LinkedIn dimensions, convert HEIC/RAW/PNG/MOV to LinkedIn-ready JPEG or MP4, or mentions LinkedIn media requirements, specs, or limits.

getedgehq/monid

>-

getedgehq/opendraft

An 18-agent pipeline that turns one topic line into a drafted

getedgehq/people-search

Find and rank professional people for recruiting, partnerships, sales, or research from user-provided data, public web sources, an authenticated search session, or a connected provider. Use for people discovery, LinkedIn or Sales Navigator search design, profile-list ranking, or provider filter translation.

getedgehq/rocketlist

Turn a CV into a shortlist of live startup roles from Rocketlist's public job board, including adjacent job titles the person would never have searched for, each with its published salary, the evidence for the fit, and a direct apply link. Use for "find roles I would be a strong fit for", career pivots, remote or VC-backed job hunts, and salary-visible role discovery.

getedgehq/security-audit-checklist

Run a comprehensive security audit across application code, cloud infrastructure, containers, CI/CD pipelines, and infrastructure-as-code. Covers privacy compliance, OWASP basics, secret leakage, API security, IAM misconfigurations, storage exposure, Kubernetes hardening, and network security. Use when the user asks to audit, review, or harden app or cloud security, check for secrets, scan for XSS/SQLi, verify security headers, review Terraform/CloudFormation, audit AWS/GCP/Azure configs, or perform any security-focused review.

getedgehq/skills

Develop or review a branded long-form YouTube channel using Simon Kaiser's public creator-led approach: audience fit, recurring formats, natural brand integration, Time with Brand, and an organic, paid, and Shorts strategy. Use for channel strategy, format briefs, and pilots.

getedgehq/skills

Build a YouTube strategy, evidence-backed idea slate, and title plus thumbnail package using Paddy Galloway's public method. Use when planning a channel, choosing concepts, or preparing a video before filming.

getedgehq/skills

Build or review a buyer-centered strategic narrative using Andy Raskin's public method. Use for sales or investor deck stories, homepage positioning, keynotes, launch narratives, and why-now messaging.

getedgehq/skills

Turn a product URL, launch brief, or approved script into a production-ready launch video. Use for product reveals, feature announcements, SaaS launches, and narrated product films; not for generic explainers or editing existing footage.

getedgehq/strip-image-ai-metadata

Strip C2PA and AI-generation metadata from images (PNG, JPEG, WebP) to remove "Generated by AI" / "ChatGPT" / "DALL-E" labels that platforms like LinkedIn, Instagram, and X display. Use when the user wants to clean AI-generated images before posting, remove AI attribution from photos, strip C2PA manifests, sanitize image metadata for professional use, or verify whether an image contains C2PA data.

getedgehq/top-down-comms

>-

getedgehq/workplan

Create, update, or close work plans for multi-step tasks. Use when starting refactors, bug lists, feature work, migrations, or any task with 2+ steps. Also use after auto-compaction to re-orient. Triggers: "workplan", "work plan", "create a plan", "what's the plan", "where was I", or when Claude detects

Verwandte Skills