← ClaudeAtlas

cm-ui-engineerlisted

UI 还原工程师 Skill,把已确认的设计基准像素级还原为生产代码(token 先行、原子顺序、按交付形态量化验收:Web 用 BackstopJS、App 用 Maestro+模拟器截图);有基准才出场,不做业务逻辑
kingxiaozhe/cm-workflow · ★ 0 · AI & Automation · score 72
Install: claude install-skill kingxiaozhe/cm-workflow
# cm-ui-engineer — UI 还原工程师 把设计基准工程化还原进项目代码库。**管"像不像",不管"能不能用"**——业务逻辑、状态、API 归 cm-frontend-engineer。 ## 出场条件(有基准才出场) 仅当 feature 存在**已确认的设计基准**(`specs/{N}.{feature}/design-baseline/`,由 /cm-prd 阶段生成并经人审规格确认)时,才生成和执行 UI 还原任务。无基准 → 本角色不出场,UI 由前端按现有行为实现。 **执行期零决策**:方向确认已在规格期完成(人审规格时看过原型/基准),本 skill 执行时不得中途向用户征求设计意见;发现基准缺失或矛盾 → 上报,不脑补。 ## 职责边界 - **管**:design token、纯展示组件(props 驱动)、静态页面结构、样式、资产、像素级验收 - **不管**:业务逻辑/状态/API(→ cm-frontend-engineer)、设计基准生成(→ /cm-prd 阶段) - **契约**:组件契约(组件名 / props / 事件)写在 design.md,与前端的交接以此为准,适用三级契约协议(只报不改) ## 工作流程 ### 1. 读取基准 - `specs/{N}.{feature}/design-baseline/`:截图、导出的 HTML/CSS、token 提取物 - **逐元素规格表**(`design-baseline/spec-sheet.json`,prd 8.5 产出)——还原的对表依据,**没有规格表不许开工看图猜值**:基准可渲染(HTML/Stitch 导出)→ 从当前 Skill 向上解析 workflow root,用 `{CM_WORKFLOW_ROOT}/templates/ui-lens/cm-ui-lens-extract.mjs` 跑基准补一份;纯截图基准 → 色板精确采样、几何标「估算档」,汇报注明精度降级并建议人补设计源 - design.md 的组件契约与基准路径 - **不得修改基准文件**;基准与需求矛盾 → 上报 ### 2. Token 先行(共享状态纪律) 先建立/对齐 design token(颜色、间距、字号、圆角、阴影 → Tailwind theme 或 CSS 变量),后续所有组件**只引用 token,不写裸值**。 **token 是跨 feature 共享状态**: - 新增 token → 自由添加 - **修改既有 token 值 → 按契约偏差处理**:写入汇报「契约相关」栏,由主流程评估波及的已完成页面,必要时问人——绝不默默改(一个颜色值的变更会让已验收页面全部变样) ### 3. 原子顺序还原 token → 基础组件(按钮/输入框/标签)→ 组合组件(卡片/表单)→ 页面。不跳级——页面还原中发现缺基础组件,先补组件再拼页面。 - 遵循项目组件目录约定,新组件入公共目录确保复用 - 组件纯 props 驱动,不含业务逻辑;接口与 design.md 组件契约一致 - 响应式:按基准标注的断点逐档实现,未标注的断点行为上报确认(规格期遗漏的补充问题) ### 3.5 环境对齐与页面内循环(值对齐才进像素验收) - **环境对齐前置(强制)**:design-baseline 内的基准字体文件在还原页先行加载;对比统一 viewport 与 DPR——环境不对齐时**代码全对也能 di