用途:Baseline UI 用于防止 AI 生成的界面出现“UI slop”,对现有 UI 代码做一次快速的清理与润色,聚焦间距、层级、排版和小布局问题。
主要能力与约束:技能内置一套有主张的 UI 基线规则,覆盖技术栈、组件、交互、动画、排版、布局、性能和设计。技术栈方面要求优先使用 Tailwind CSS 默认值(除非已有自定义值或明确要求)、JS 动画使用 motion/react(原 framer-motion)、类逻辑使用 cn 工具(clsx + tailwind-merge)。组件方面要求带键盘或焦点行为的部分使用可访问的原语(Base UI、React Aria、Radix),优先项目已有原语,禁止在同一交互面混用原语系统,图标按钮必须有 aria-label,不得手写键盘或焦点行为。交互方面要求破坏性操作使用 AlertDialog,加载使用结构骨架,用 h-dvh 而非 h-screen,固定元素尊重 safe-area-inset,错误就近显示,不得阻止输入框粘贴。动画方面要求无明确要求不加动画,只动画 transform 和 opacity,不动画布局属性,交互反馈不超过 200ms,离屏暂停循环动画,尊重 prefers-reduced-motion。排版要求标题用 text-balance、正文用 text-pretty、数据用 tabular-nums,密集 UI 用 truncate 或 line-clamp,不修改字间距。设计方面要求不用渐变(尤其是紫色或多色渐变),不用发光作为主要可供性,空状态给出明确的下一步动作。
使用方式:在对话中使用 /baseline-ui 可将约束应用到本次对话中的所有 UI 工作;使用 /baseline-ui <file> 可按全部约束检查指定文件,并输出违规片段(引用确切行或代码)、为何重要(一句话)以及具体修复建议(代码级)。
适用场景与限制:适合已有 UI 代码的快速清理与润色,或对 AI 生成界面做一致性检查。限制方面,该技能为有主张的规则集,会与项目既有约定或非 Tailwind/motion 技术栈产生冲突;资料未提供安装命令、平台限制、价格或效果保证等信息。