关于 design-system-inventory-figma
从整个 Figma 文件提取设计 token、组件、变体和样式,并整理为结构化清单,适用于代码生成和组件库审查,且可控制范围与详细程度。
主要功能
- 01提取 token、组件和样式
- 02记录组件属性与变体规格
- 03控制提取范围和输出详细度
- 04按名称筛选组件
- 05通过 Plugin API 读取变量
适用场景
- 01为代码生成整理设计系统
- 02审查 Figma 组件库
- 03检查 token 值与别名
- 04缩减大型设计文件的输出
MCP 相关
该 skill 通过 Figma 的 `use_figma` 工具和 Plugin API 运行脚本。它说明整文件清单能力不同于原生 MCP 工具提供的单选区设计上下文和扁平元数据。
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ southleft/ skills-for-figma --skill design-system-inventory-figma安装后在 Claude Code 中输入/design-system-inventory-figma确认已加载。
附带文件references/visual-spec.mdscripts/inventory.js
详细介绍
design-system-inventory-figma — 统一提取 Token、组件和样式
一次 use_figma 调用即可遍历整个文件并返回结构化套件:
Token(每个本地变量,按集合和模式分组)、组件(独立组件 + 组件集,包含属性定义以及每个变体的精简 visualSpec)和
样式(包含已解析值的填充、文本和效果样式)。这是用于代码生成和库审计的“一次读取全部内容”入口。
技能边界
use_figma规则 — 首先加载官方figma-use技能;它是完整的 Figma Plugin API 参考。这些脚本依赖的要点:使用纯 JS,并在顶层使用await+return(不使用 IIFE,也不使用figma.closePlugin();console.log不会作为返回值);在每个脚本顶部将输入内联为const;颜色范围为 0–1;执行任何文本操作前先加载字体;使用await figma.getNodeByIdAsync(...);以及原子错误(脚本失败时不会应用任何内容——读取错误、修复后重试)。- 每个
visualSpec的确切结构 → references/visual-spec.md。 - 单个组件的无限深度(完整树、交互响应、实例引用)→ 使用
deep-component-figma。将单个变体集作为 CSS 状态机 → 使用analyze-component-set-figma。磁盘上的 Token 文件 → 使用export-tokens-figma。 - 这是原生 MCP 不具备的全局设计系统能力:
get_design_context仅适用于单个选区,get_metadata返回扁平结构,两者在任何套餐下都无法提供统一的 Token + 组件 + 样式套件。
工作流
- 选择范围和详细程度,以控制大型文件的响应大小。编辑
scripts/inventory.js中的常量:INCLUDE— 可选值为"tokens"、"components"、"styles"(默认:全部)。VERBOSITY—"full"(包含每个变体的视觉规格)、"summary"(组件元数据 + 属性,不含每个变体的规格),或"inventory"(仅包含名称/ID/数量,适用于超大型文件)。COMPONENT_NAME_FILTER— 用于筛选组件的子字符串(例如"Button")。
- 运行
use_figma(skillNames: "design-system-inventory-figma")。通过 Plugin API 读取变量,因此适用于所有 Figma 套餐(不需要 Enterprise REST)。 - 使用结果。 使用
tokens获取颜色/间距/排版值,使用components[].properties获取组件 API,使用components[].variants[].visualSpec获取各状态的外观,并使用styles获取任何基于样式(非变量)的值。 - 如果结果仍然很大,请降低
VERBOSITY或缩小INCLUDE/COMPONENT_NAME_FILTER的范围,然后重新运行——不要尝试对大型full转储进行分页。
说明
- 颜色以十六进制形式输出(Figma 内部以 0–1 RGBA 格式存储);间距/尺寸值的单位为 px。
- 变量会尽可能将别名解析为 Token 名称(例如
{Color.Brand.Primary})。 - 每个变体的视觉规格来自各变体组件节点——字段详情(填充、描边、效果、cornerRadius、不透明度、布局/内边距/间距、排版)请参阅 references/visual-spec.md。
- 该脚本是内置
figma_get_design_system_kit工具的手动编码版本,涵盖根节点和第一层;它采用原生use_figma写法,因此无需 Desktop Bridge 即可运行。它会捕获每个组件/变体的根视觉规格以及其直接子节点(childSpecs);不会递归更深层级。
评论
支持 Markdown