agentsclimarketplace

Shadcn detection

Skill fusengine/agents/plugins/shadcn-expert/skills/shadcn-detection

Redefining development through cognitive automation and collaborative agent systems.

Install
npx -y skills add fusengine/agents --skill shadcn-detection

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 22 stars22 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Detect whether a project uses Radix UI or Base UI as shadcn/ui primitives. Analyzes package.json, components.json, imports, and data attributes to determine the primitive library in use. Use when: determining which primitive a project uses before any shadcn component work or migration.

SKILL.md

3.5 KB, as published. Nobody here has run it

shadcn Detection

Agent Workflow (MANDATORY)

Before detection, use TeamCreate to spawn agents:

  1. fuse-ai-pilot:explore-codebase - Scan project structure
  2. fuse-ai-pilot:research-expert - Verify latest primitive patterns

After: Use results to configure component workflow.


Overview

FeatureDescription
Package scanDetect @radix-ui/* or @base-ui/react
Config checkAnalyze components.json style field
Import analysisScan source for import patterns
Attribute scanCheck data-state vs data-[open]
Package managerDetect bun/npm/pnpm/yarn via lockfile

Critical Rules

  1. ALWAYS run detection before any component work
  2. CHECK all 5 signals for maximum accuracy
  3. HANDLE mixed state as migration case, never ignore
  4. CACHE result for session duration, no re-detection needed
  5. DETECT package manager via lockfile priority order

Architecture

project/
├── package.json            # Step 1: deps scan
├── components.json         # Step 2: style field
├── bun.lockb|pnpm-lock.yaml|yarn.lock|package-lock.json  # Step 5: PM
└── src/|components/|app/   # Step 3-4: imports + attrs

→ See detection-script.md for complete example


5-Step Detection Algorithm

StepSignalWeight
1package.json deps (@radix-ui/*, @base-ui/react)40%
2components.json style field20%
3Import patterns in source files25%
4Data attributes (data-state vs data-[open])15%
5Package manager (lockfile → bunx/npx/pnpm dlx/yarn dlx)-

Decision Table

Radix ScoreBase UI ScoreResultAction
>500RadixUse Radix patterns
0>50Base UIUse Base UI patterns
>0>0MixedMigration needed
00NoneFresh setup

Best Practices

DO

  • Run detection BEFORE any component work
  • Check all 5 signals for accuracy
  • Handle "mixed" state as migration case

DON'T

  • Assume Radix without checking
  • Skip components.json analysis
  • Ignore data-attribute signals

Reference Guide

Concepts

TopicReferenceWhen to Consult
Radix Patternsradix-patterns.mdIdentifying Radix UI signals
Base UI Patternsbaseui-patterns.mdIdentifying Base UI signals
Algorithmdetection-algorithm.mdUnderstanding scoring logic

Templates

TemplateWhen to Use
detection-script.mdRunning detection on a project

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.