figma-create-design-system-rules:给 Agent 写一套项目专属设计系统规则

前言

用 AI 编程工具把 Figma 稿落地成前端代码时,常见问题往往不是「写不出来」,而是「写得不像你们项目」。间距随手敲、颜色写死十六进制、组件丢进随便一个目录、明明仓库里已有 Button 却又新建一份——这些都是设计系统只存在于团队口头约定、没有进入 Agent 可读上下文时的典型表现。

figma-create-design-system-rules 就是为这件事准备的 Agent Skill:它不直接画界面,而是帮你分析代码库,生成一套绑定本项目约定的设计系统规则,并落到 Cursor / Codex CLI / Claude Code 各自会加载的规则文件里。之后再做 Figma 到代码的实现时,Agent 会按这些规则走,而不是每次靠你口头重复「别硬编码颜色」。

这是什么

一句话定位:为当前项目生成自定义设计系统规则,约束 Agent 在 Figma-to-code 工作流中的组件选用、样式写法与目录结构。

该 Skill 收录在 OpenAI 的 openai/skills 仓库 skills/.curated/figma-create-design-system-rules 目录下;目录内 LICENSE.TXT 写明材料受 Figma Developer Terms 约束,属于 Figma 面向 Agent / MCP 场景提供的能力封装。Figma 官方 MCP 文档也单独说明了同名能力:create_design_system_rules,用于产出可指导设计稿转代码的规则文件。

前置条件很明确:需要已连接并可用的 Figma MCP Server,同时 Agent 要能读到你的项目代码,才能把规则写「贴地」。

触发场景包括(与 Skill 描述一致):

  • 说「create design system rules」「generate rules for my project」「set up design rules」「customize design system guidelines」
  • 新项目准备长期用 Figma 驱动开发
  • 给已有代码库里的 Agent「入职培训」,把团队惯例固化下来
  • 统一团队的 Figma-to-code 流程,或迭代已有设计约定

核心功能与亮点

把「潜规则」写成 Agent 可读规则

官方说明里把 Design System Rules 定义为项目级指令,用来编码代码库里那些资深同学才会口口相传的知识,例如:

  • 该用哪些布局原语与现成组件
  • 新组件应放在哪个目录
  • 命名与导出方式
  • 什么内容绝不能硬编码
  • Design Token / 样式体系怎么接
  • 项目特有的架构习惯

规则一旦落盘,后续每次 Figma 实现任务都会自动带上这些约束,减少重复提示。

按 Agent 写入对应规则文件

Skill 明确支持三类目标文件:

Agent 规则文件
Claude Code 项目根目录 CLAUDE.md(也可用 .claude/rules/figma-design-system.md 做模块化)
Codex CLI 项目根目录 AGENTS.md(已有文件则追加新章节;合并体积有 32 KiB 上限)
Cursor .cursor/rules/figma-design-system.mdc(带 YAML frontmatter:descriptionglobsalwaysApply

不确定当前环境时,Skill 要求先检查仓库里已有规则文件,或直接询问使用者。

规定完整的 Figma MCP 落地流程

生成出的规则不只谈「组件放哪」,还会固化一套实现顺序(Skill 要求不得跳步),核心包括:

  1. 先用 get_design_context 拉取目标节点的结构化表示
  2. 输出过大或被截断时,先用 get_metadata 看节点地图,再按需回取
  3. get_screenshot 拿到视觉参照
  4. 同时具备上下文与截图后,再下载资源并开始写代码
  5. 把 MCP 常见的 React + Tailwind 输出,翻译成本项目的约定、样式与框架
  6. 对照 Figma 做 1:1 观感与行为校验,再宣告完成

同时强调:MCP 输出是设计与行为的表征,不是最终代码风格;颜色、间距、字体要落到项目 Token;资源优先使用 MCP 返回的 localhost 源,不要另装图标包或自制占位图。

安装与启用

该 Skill 采用通用 SKILL.md 格式,可在支持 Agent Skills 标准的工具中使用。不同工具的发现目录不同,按官方资料分别说明如下。

Codex CLI(openai/skills 策展目录)

openai/skills README 说明:.curated 下的 Skill 可用内置的 $skill-installer 按名称安装,例如:

$skill-installer figma-create-design-system-rules

也可以直接给出 GitHub 目录 URL。安装后需重启 Codex 才能加载新 Skill。

说明:该仓库 README 已标注 deprecated,并指向 openai/plugins 作为后续插件/Skill 示例入口;本文仍以当前可访问的 curated 路径与 SKILL.md 原文为准。

Cursor

Cursor 会自动发现项目级或用户级 Skill 目录,常见包括:

  • 项目:.cursor/skills/.agents/skills/
  • 用户全局:~/.cursor/skills/~/.agents/skills/
  • 兼容加载:.claude/skills/.codex/skills/

实操上可以把该 Skill 目录(至少包含 SKILL.md)放到上述某一路径下;也可以在 Cursor 的 Customize → Rules 中通过 Remote Rule(GitHub)导入仓库链接。启用后,在 Agent 对话里用自然语言说出「为我的项目生成设计系统规则」,或通过 / 手动点选 Skill 名称即可。

Claude Code

将 Skill 放到 Claude Code 会扫描的 skills 目录(例如项目内 .claude/skills/figma-create-design-system-rules/SKILL.md),由 Agent 按 description 自动匹配,或在对话中明确要求创建设计系统规则。

共用前置:接好 Figma MCP

无论用哪家 Agent,本 Skill 都要求 Figma MCP Server 已连接。规则生成阶段会调用其中的 create_design_system_rules(Skill 文中称为 tool;Figma 官方「Tools and prompts」文档将其归在 MCP Prompt 一类,并说明并非所有客户端都支持 Prompt)。若客户端不支持该 Prompt/工具,可退回 Figma 文档中的示例提示词,让 Agent 手动分析代码库并起草规则,再按下面路径保存。

典型用法

官方给出的工作流共五步,按顺序执行。

1. 调用 create_design_system_rules 拿模板

向 Figma MCP 传入项目语言与框架,例如:

  • clientLanguages"typescript,javascript"
  • clientFrameworks"react" / "vue" / "svelte" / "angular" / "unknown"

返回内容是写规则用的基础提示与模板,后续结构应跟着模板走。

2. 分析代码库

落笔前先摸清现状,至少覆盖:

  • 组件目录在哪、是否有独立 design system 包、按功能还是按类型组织
  • 样式方案(Tailwind、CSS Modules、styled-components 等)与 Token 定义位置
  • 命名、props、组合模式
  • 状态管理、路由、路径别名等架构选择

3. 生成项目专属规则

按分析结果填入具体路径与约定。Skill 建议至少包含这些块:

组件规则示例:

- IMPORTANT: Always use components from `[YOUR_PATH]` when possible
- Place new UI components in `[COMPONENT_DIRECTORY]`
- Follow `[NAMING_CONVENTION]` for component names
- Components must export as `[EXPORT_PATTERN]`

样式规则示例:

- Use `[CSS_FRAMEWORK/APPROACH]` for styling
- Design tokens are defined in `[TOKEN_LOCATION]`
- IMPORTANT: Never hardcode colors - always use tokens from `[TOKEN_FILE]`
- Spacing values must use the `[SPACING_SYSTEM]` scale

Cursor 规则文件 frontmatter 示例:

---
description: Rules for implementing Figma designs using the Figma MCP server. Covers component organization, styling conventions, design tokens, asset handling, and the required Figma-to-code workflow.
globs: "src/components/**"
alwaysApply: false
---

[这里放入生成的规则正文]

globs 应改成你们真正会落 Figma 代码的目录,例如 "src/**/*.tsx",或 ["src/components/**", "src/pages/**"]

4. 保存到对应 Agent 规则文件

按上一节表格写入 CLAUDE.mdAGENTS.md.cursor/rules/figma-design-system.mdc。保存后,Agent 在后续 Figma 实现任务中会自动加载。

5. 用小组件验收并迭代

官方建议:先拿一个简单组件(例如 Button)跑通一遍实现 → 检查 Agent 是否遵守规则 → 对失效条目改写得更具体 → 与同事对齐 → 随项目演进定期更新。

对话触发示例(来自 Skill 示例):

  • 「Create design system rules for my React project」
  • 「Set up Figma rules for my Vue app」
  • 「Generate rules for our design system library」

适用场景与注意事项

适合:

  • 已有或正在建立组件库 / Design Token,希望 Figma 落地不再「各写各的」
  • 前端团队多人共用同一 Agent,需要统一路径、命名与样式来源
  • 设计系统包在 monorepo 中,需要把包路径、Storybook、测试约定一并写进规则

注意:

  1. 没有 Figma MCP 就跑不起来官方主流程。 先完成 MCP 连接,再谈生成规则。
  2. 规则要具体、可执行。 Skill 明确反对空泛表述:与其写「使用设计系统」,不如写「按钮一律用 src/components/ui/Button.tsxvariant 只能是 'primary' | 'secondary' | 'ghost'」。关键约束可用 IMPORTANT: 前缀提高优先级。
  3. 规则不是越多越好。 过多规则会撑大上下文、增加延迟;官方建议先抓能解决 80% 一致性问题的那 20%,再渐进补充。
  4. 规则会过时。 架构或 Token 位置变更后要同步改规则,并用版本管理跟踪;Codex 的 AGENTS.md 还有 32 KiB 合并上限,追加时注意体积。
  5. 材料处于 Beta。 许可证说明 Figma 可能随时修改、暂停或下线相关材料,生产流程里应保留人工 Review。
  6. MCP 输出默认偏 React + Tailwind。 规则里必须写清如何映射到 Vue、CSS Modules、自有 Token 等,否则容易「照抄 Tailwind 工具类」。

小结

figma-create-design-system-rules 解决的是前端协作里最磨人的一层:把设计系统与仓库惯例,从人口口相传,变成 Agent 每次实现 Figma 时都会加载的规则文件。它依赖 Figma MCP,产出落到 CLAUDE.md / AGENTS.md / .cursor/rules/figma-design-system.mdc,再用小范围实现验证效果。

官方入口:

  • Skill 目录:https://github.com/openai/skills/tree/main/skills/.curated/figma-create-design-system-rules
  • Figma MCP 工具与 Prompt 说明:https://developers.figma.com/docs/figma-mcp-server/tools-and-prompts/
  • 自定义规则指引:https://developers.figma.com/docs/figma-mcp-server/add-custom-rules/
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜