构建、扩展、审计或迁移可复用的 UI 组件与设计系统。当交付核心是跨页面或跨消费者复用的 token、组件 API、交互与无障碍合同、设计—代码映射、组件文档、分发包、版本治理或采用迁移时使用;若核心是完成一个产品工作流、阅读内容或单项视觉资产,则改用相应领域 Skill。
72
88%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Passed
No findings from the security scan
交付可被声明消费者真实导入、组合、验证和升级的界面合同,而不是组件展厅、业务页面换名或一组截图。系统的核心链是:token → component API → behavior/a11y → distribution → consumer → governance。
本 Skill 保持介质中立。先明确最终消费者、目标媒介与 target renderer,并记录组件、字体、图标和
数据的来源与许可;验收发生在真实消费接口、状态与最终像素,不默认落到浏览器展示页。
只有最终消费者或合同交付确为 Web 时,才调用 $build-polished-visual-frontends,由它负责 Web 技术栈、整体视觉语言和浏览器最终像素;非网页媒介不得为了预览方便加载该 Skill,也不能用浏览器证据冒充目标消费者证据。本 Skill 始终拥有组件系统合同与领域 gate;共享 visual-artifact-design 拥有工具证据、authority graph、渲染、review 和 scoped promotion,这里不另造生命周期或晋升状态。
按需读取:
先记录 mode / primary_domain / final_consumer / target_medium / target_renderer / target_profile / consumer_scope / target_claims / source_provenance / risk_triggers / explicit_non_goals。模式为 create / edit / diagnose / audit / migrate;migrate 必须有真实旧实现或明确标注的 synthetic fixture。
greenfield 才从消费者任务建立所需的最小 token、API、行为、分发和治理权威链,不预造企业级全家桶。以下是目标档案与 claim ceiling,不是所有项目必须依次走完的线性流程:
| target_profile | 可声明的最高结果 | 必要边界 |
|---|---|---|
| D10-M0 | 组件契约样张 | 可说明 token、API 与状态;不声称可导入或采用 |
| D10-M1 | 实现支撑的系统试验版 | 有真实源码、public entry、状态证据与文档;可仍限本仓库 |
| D10-M2 | 可采用 Preview | 有版本化可消费边界、显式 exports、独立消费者及行为/a11y 证据 |
| D10-M3 | Stable 系统 | 有生产采用或双消费者验证、升级/弃用、owner 与发布历史 |
| D10-M4 | 治理型多产品系统 | 有多平台或多品牌采用、兼容政策、同步与长期治理证据 |
直接选择与任务相称的档案;更高档案只增加被其 claims 触发的 gate。未满足证据时降低实际 claim ceiling,不用“完成度”掩盖缺口。
先列消费者和 concern,再实现。一个 concern 只能有一个权威 owner;多个原生母版可以并存,但导出、截图、catalog 和 Gallery 都是派生物。
| concern | 常见权威 owner |
|---|---|
| reference / semantic tokens | 版本化 token 源;CSS、TS、平台变量为生成物 |
| component API | public types、exports 与组件源码 |
| behavior / accessibility | 组件实现与可重复交互测试 |
| design intent | 获批准的设计母版或版本化 rendered reference |
| documentation | 生成的 API/token 文档与人工叙事各自拥有明确部分 |
| distribution / release | package manifest、构建配置、tag、changelog 与发布记录 |
Figma 不是默认真源。只有存在真实文件、许可/席位、调用或人工交接证据时,它才可拥有 design intent 或设计变量;它不能接管代码行为、包 exports 或发布事实。设计与代码不一致时,返回对应 concern owner,不在派生预览中补丁。
先写:任务子型 → 必需能力 → Registry 候选 → 选择理由 → 原生设计语言 → authority owner → 自定义边界 → 使用证据 → 失败返回。Registry 只证明工具事实与当前可用性;项目为何选择它由本领域记录负责。
优先延续已有且被真实消费者采用的合格系统;否则选择一套主要成熟系统。选定 styled system 后,继承其 token、组件 anatomy、交互状态、排版、间距、密度、主题与反馈语言。只借一个控件,其余外壳按另一套字体、灰阶、圆角或状态语言手写,直接判定 foundation gate 失败。
Headless library 只拥有行为与语义,必须另有项目视觉 authority;source registry 或 source kit 把检入源码交给项目维护,不能冒充版本化组件包;workspace source 不能冒充可外部安装;Storybook 不能证明消费者采用。具体边界见 tool-profiles.md。
工具只有在 dependency/version/license、真实 import/invocation、editable master、rebuild/export 与当前像素或消费者证据齐全时才记为 used。成熟能力缺失前先运行 capability probe;只有观察到 gap,才记录 minimal_custom_boundary 与 coherence evidence。不可用返回替代候选或 human_handoff,不把环境缺失写成工具能力缺口。
需要写入的专业工具 proof 仅允许 Create/Edit 在授权 workspace 建立一次性验证副本;该副本不能覆盖权威母版,也不能改变 canonical 或 promotion。proof 与最终交付分别记录来源、工具版本、输入/输出及 build hash,二者 hash 不同就不能继承结论;Diagnose/Audit 一律零写入。
每个适用 gate 按共享格式记录 trigger、inputs、actions、evidence refs、claim ceiling 和 failure return。not_applicable 必须由 target claims 证明;未知、未实现或工具不可用不等于不适用。各轨道可并行,只按真实依赖排序。
| 轨道 | 拥有的证明 |
|---|---|
| DESIGN / TOKEN | 设计意图、token 角色、主题与生成映射 |
| CODE / BEHAVIOR | public API、运行状态、交互与实现 |
| DOCS / ACCESS | 使用合同、内容规则、键盘与辅助技术范围 |
| ADOPTION / RELEASE | 分发物、消费者、版本、迁移与维护责任 |
失败只返回首个被证据否定的 owner 或 gate;保留其他轨道仍有效且绑定当前 build 的证据。target profile 只是这些轨道的声明组合,不是第五条状态轴。
Token 采用 reference → semantic → component 三层;主题替换角色映射,不逐组件打补丁。公共组件记录 responsibility、anatomy/slots、variant、运行状态、受控/非受控模型、事件、ref、内容边界与版本。复杂控件优先由成熟行为基础拥有状态机,项目 wrapper 只收窄 API、映射 token 和统一内容策略。
强调色、色条、边线、图标容器或背景层只有在 semantic token 稳定映射组件职责、交互状态、真实分组 或已批准身份语法时,才能成为系统能力;不能为一次页面装饰新增 token。视觉面积和对比按组件职责、 状态风险与使用频率分配,说明邻近受影响状态。CSS 可实现布局、排印、必要边界和状态反馈,但不能用 渐变、伪元素或边框制造脱离组件合同的装饰资产;展示页背景也不能替组件本身证明系统质量。
状态分为 variant、interaction、selection/disclosure、data 与 business outcome;只测试合同允许的组合,不生成笛卡尔积。可见文本、ARIA、样式与事件共享状态 owner;错误、异步竞态、取消、重试和焦点返回都有明确恢复路径。
Catalog 从 public entry 载入真实组件和状态。文档可证明可发现性与局部行为,却不能证明 package 可安装、独立采用或稳定发布。分发形态必须明确为 source-only、workspace、tarball/private package 或 public package,并按其真实边界命名。
证据量服从 target claims,不以固定组件数、story 数或截图数代替覆盖。M2 需要独立 consumer;M3 的跨消费者稳定性需要生产采用加独立验证消费者,或彼此独立的消费者,并覆盖一次真实变更路径。详见 patterns.md。
四类证据必须分别命名,不能互相替代:
| 证据类型 | 能证明什么 | 不能证明什么 |
|---|---|---|
| 浏览器 DOM/SVG | Web 宿主中的结构、语义、边界框和可枚举状态 | Canvas/WebGL/raster 内部事实,或原生、设计工具、印刷与设备消费者 |
| computed-style | 指定浏览器 build 的级联结果、实际字体/颜色/间距与可见状态 | 另一渲染器的排版、色彩管理、事件模型或最终像素 |
| 目标 renderer | 声明平台、宿主或生产导出链对当前 build 的真实渲染与交互 | 未测试平台、未覆盖状态或物理生产结果 |
| 实体样张 | 指定材料、设备、观看距离和生产条件下的物理结果 | 组件 API、包可消费性或其他材料/批次 |
Web 是最终消费者时,浏览器可以同时是目标 renderer,但 DOM/SVG、computed-style 与最终像素仍是不同层次。最终消费者不是 Web 时,浏览器目录、Storybook 或 HTML specimen 只可作为派生索引;必须以目标 renderer 取证,物理交付还要实体样张或明确的人工交接。所有证据绑定同一来源、权威母版、build hash、消费者和验收条件。
最终报告 target profile、实际 claim ceiling、通过/失败/不适用的 D10 gates、authority owners、来源与许可、工具使用状态、分发形态、最终消费者、目标 renderer、版本、证据 hash 与限制。渲染/review assurance、promotion、release 和 canonical 继续由共享治理记录表达;任何一项都不能从 D10 gate 自动推导。
e6c0344
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.