extracting-design-syst…
Use when the user says "setup", "setup bridge", "extract", "extract DS", "onboard", "build…
Use when the user requests to design, create, build, generate, or make a new Figma component or screen — including phrases like "make a button", "design a settings page", "build a new card", "generate X". Produces a CSpec, compiles it to a scene graph, executes it in Figma via
$ npx -y skills add noemuch/bridge --skill generating-figma-design --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/generating-figma-designContext preview
The summary Claude sees to decide when to auto-load this skill.
Use when the user requests to design, create, build, generate, or make a new Figma component or screen — including phrases like "make a button", "design a settings page", "build a new card", "generate X". Produces a CSpec, compiles it to a scene graph, executes it in Figma via
name: generating-figma-design description: Use when the user requests to design, create, build, generate, or make a new Figma component or screen — including phrases like "make a button", "design a settings page", "build a new card", "generate X". Produces a CSpec, compiles it to a scene graph, executes it in Figma via MCP, and verifies the output.
{{ACTIVE_RULES}}
Unified `make` flow: CSpec → scene graph → compiler → Figma execute → screenshot → verify. Replaces the legacy `spec → design → review` cycle with a single compiler-driven action. All tokens resolve against the knowledge base; all Figma API rules are enforced by the compiler.
Invoke when the user:
Do NOT use if:
**Before starting, load:**
---
Read `references/transport-adapter.md` (repo-root) Section A. Determine console vs official transport.
Console: figma_get_status() -> setup.valid: true Official: whoami() + test use_figma call
Report:
Transport: {console | official}Load the **summary** of available DS components — names and types only, not full registry data:
**Do NOT load guides, patterns, or figma-api-rules.md.** The compiler handles all Figma API rules.
The compiler guarantees every `$token` resolves against the KB — but NOT that the KB still matches the live Figma library. A token removed/renamed in Figma but still present in a stale KB will **compile fine and then fail at execute time**. This check is a runtime guard; it deliberately lives here (not in the compiler), because a time-based check would break the compiler's determinism law.
Read `generatedAt` from each loaded registry and compare to today's date:
running; tokens/components may have drifted from live Figma."
`setup` (or the KB cron) before generating: resolved tokens that were removed or renamed in Figma will pass compile but fail on execute.
Carry the KB age into the C4 plan ("KB age: {N}d"). This does not block generation — it informs the user before they commit to a `make`.
Load `knowledge-base/learnings.json` (skip if file doesn't exist).
Filter by context matching the user's description:
Load `knowledge-base/recipes/_index.json` (skip if file doesn't exist — no recipes yet).
---
From the user's description, identify:
For each recipe in `_index.json`, compute a match score:
| Dimension | Weight | Method | |-----------|--------|--------| | Archetype match | 0.40 | Exact match on `meta.archetype` vs extracted archetype | | Tag overlap | 0.25 | Jaccard similarity between recipe `tags` and extracted keywords | | Structural match | 0.20 | Zone count, component types, parameter compatibility | | Confidence | 0.15 | Recipe's current confidence score |
| Score | Action | |-------|--------| | **>= 0.85** | **Exact match.** Load recipe file, pre-fill CSpec from recipe parameters. Report: "Recipe match: {name} (score: {score}). Using as template." | | **0.60 -- 0.84** | **Partial match.** Load recipe as scaffold. Report: "Partial recipe match: {name} (score: {score}). Using as starting point, will supplement missing zones." | | **< 0.60** | **No match.** Proceed from scratch. Report: "No recipe match. Generating from scratch." |
---
Before writing any node, break the request into its major sections, then decide HOW each section is built. This is where DS fidelity and composition are won.
**1. Decompose** the request into major sections, top to bottom:
**2. Classify each section into exactly one bucket**
Design in Figma with Claude Code. Bridge connects your terminal to the Figma Plugin API via WebSocket.
Repo: noemuch/bridge
Use when the user says "setup", "setup bridge", "extract", "extract DS", "onboard", "build…
Use when the user says they adjusted the design in Figma, mentions "fix", "correct", "learn…
Use when the user says "done", "ship it", "finish", "complete", "archive", or otherwise…
Use when any Bridge command is invoked (make, fix, done, setup, drop, status) or any Figma /…