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/
羽毛球分组比赛记分
小程序二维码

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

小夜