关于 figma-check-design-parity
figma-check-design-parity 是用于检查设计与实现偏差的技能,面向构建界面组件的开发者。它读取 Figma 节点规格,与提供的 codeSpec 比较并生成带严重级别和修复建议的差异报告。
主要功能
- 01比较 Figma 规格与 codeSpec
- 02计算加权一致性分数
- 03按属性列出差异与严重级别
- 04提供差异修复建议
- 05支持选择要比较的区块
适用场景
- 01检查组件实现是否偏离 Figma 设计
- 02定位颜色、间距和排版差异
- 03验证有意修改后的设计或代码
MCP 相关
通过 use_figma 读取 Figma 设计节点;运行前需加载 figma-use 技能。
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ southleft/ figma-console-mcp-skills --skill figma-check-design-parity安装后在 Claude Code 中输入/figma-check-design-parity确认已加载。
附带文件references/parity-scoring.mdscripts/check-parity.js
详细介绍
figma-check-design-parity — 设计与代码偏差检查器
获取 Figma 节点的实际规格,并与 codeSpec(实现实际渲染的内容)进行差异比较。返回加权一致性评分、按严重程度分类的属性差异,以及建议的修复方法。这与代码生成的方向相反:get_design_context 将设计转换为代码;此技能则确认代码没有偏离设计。
所有设计数据都通过 use_figma 读取,因此适用于任何 Figma 套餐。
技能边界
use_figma规则——先加载官方figma-use技能;它是完整的 Figma Plugin API 参考。这些脚本依赖的要点:使用带顶层await和return的普通 JS(不使用 IIFE 或figma.closePlugin();console.log不会作为返回值),在每个脚本顶部用const内联输入,颜色值范围为 0–1,在任何文本操作前加载字体,使用await figma.getNodeByIdAsync(...),以及原子错误处理(脚本失败时不会应用任何内容——读取错误、修复后重试)。- 根据设计生成代码 → 使用原生的
get_design_context;此技能用于验证,而非生成。 - 为
codeSpec.accessibility提供代码侧无障碍数据 → 使用figma-scan-code-accessibility(--map-to-codespec会输出完全符合要求的对象)。 - 设计侧 WCAG 检查 → 使用
figma-lint-design。
工作流
- 组装 codeSpec。 收集组件实际渲染的值,并填入
codeSpec对象 (完整结构见 references/parity-scoring.md)。你只需填写想要比较的部分——visual、spacing、typography、accessibility。提示:figma-scan-code-accessibility --map-to-codespec可自动生成codeSpec.accessibility。 - 读取设计规格。 设置
NODE_ID,并将codeSpec粘贴到scripts/check-parity.js中。通过use_figma运行(skillNames: "figma-check-design-parity")。脚本会提取节点的填充、描边、圆角半径、不透明度、内边距/间距和文本属性,再与 codeSpec 进行差异比较。 - 读取评分卡。
summary.parityScore的计算方式为max(0, 100 − (critical×15 + major×8 + minor×3 + info×1))。discrepancies[]会列出每项不匹配及其category、property、severity、designValue、codeValue和suggestion。 - 决定修复哪一侧。 每项差异都会说明设计和代码各自的值。可以更新代码以匹配设计,也可以将设计调整为匹配有意修改的代码(通过
figma-manage-variables/figma-use),然后重新运行以确认评分有所提高。
关键规则
- Figma 中的颜色值范围为 0–1;脚本会将颜色转换为十六进制,并对两侧的数据进行标准化后再比较。
- 只比较已填写的 codeSpec 部分。 省略某个部分即可跳过该部分——不会因未提供的数据产生误报。
- 数值容差:尺寸比较会使用较小的误差范围(宽度/高度约为 2px,不透明度为 0.01),避免将亚像素舍入误判为偏差。
- 严重程度决定评分:颜色/间距不匹配属于
major(−8),圆角半径/边框宽度/不透明度不匹配属于minor(−3)。完整权重请参见 parity-scoring.md。
评论
支持 Markdown