该技能用于在项目中安装、定制和组合 shadcn/ui 组件,并保持设计系统一致性。shadcn 是代码分发系统,组件是你拥有的源文件而非包,因此工作流分为四步:了解现状、安装、精修、验证。
了解现状:执行任何 CLI 操作前先读取项目状态,运行 npx shadcn@latest info 获取框架、已装组件、别名、图标库与基础库,并直接读取 components.json 获取主题配置,不要猜测配置。
安装:通过 CLI 添加组件,不要手动从文档复制。npx shadcn@latest add button card dialog 可一次添加多个;npx shadcn@latest add @namespace/component 从自定义注册表添加;npx shadcn@latest add --dry-run button 可预览。重新添加已有组件前用 npx shadcn@latest diff <name> 查看上游变更,并先提交本地定制,因为 add 会覆盖文件。
精修:每次 add 后对照项目设计系统审查组件,包括字体变量与字号、颜色令牌、间距节奏、--radius 圆角、tw-animate-css 动画类,以及用包装组件组合 shadcn 原语,仅在结构性修改时编辑基础组件。
验证:构建项目以发现类型错误,在上下文中目视检查,并检查深色模式与移动端。
Tailwind v4 约定:使用 OKLCH 色彩空间与 @theme inline,不使用 HSL,也不使用 tailwind.config.ts;在 v4 项目的 components.json 中将 tailwind.config 留空;使用 data-slot 属性做定向样式;使用 React.ComponentProps<>,不再使用 forwardRef。颜色采用 background 与 foreground 成对,主角色省略 background 后缀。扩展自定义语义令牌需同时添加 CSS 变量与 @theme inline 映射。类名组合统一使用 cn()(clsx + tailwind-merge)。
参考文件按需查阅,包括 CLI v4 参考、components.json 模式、OKLCH 主题、注册表编写、Tailwind v4 迁移、组件清单与定制模式。