figma-design
[IMPORTANT] Use
TaskCreateto break ALL work into small tasks BEFORE starting.
Quick Summary
Goal: Extract structured design context from Figma designs for downstream use by design-spec and planning skills.
Workflow:
- Detect Input — Parse Figma URL, extract file key + node ID
- Select Extraction Method — 4-level fallback chain
- Extract Context — Design tokens, components, layout, typography
- Output Artifact — Structured markdown for design-spec consumption
Key Rules:
Frontend/UI Context (if applicable)
When this task involves frontend or UI changes, MUST READ .claude/skills/shared/ui-system-context.md and the following docs:
-
Component patterns:
docs/project-reference/frontend-patterns-reference.md -
Styling/BEM guide:
docs/project-reference/scss-styling-guide.md -
Design system tokens:
docs/project-reference/design-system/README.md -
Always try highest-fidelity method first, fallback gracefully
-
Output must be consumable by
design-specandui-wireframe-protocol -
Keep extraction under 5K tokens per design
Extraction Fallback Chain
Level 1: Official Figma MCP (Best Fidelity)
Check if MCP tools available: look for get_design_context in tool list.
If available:
get_design_context— structured layout, components, tokens, constraintsget_screenshot— visual reference imageget_code_connect_map— map Figma components to code components
Level 2: GLips Figma-Context-MCP (Good Fidelity)
Check if GLips MCP tools available (look for figma-context tools).
If available:
- Extract file metadata, frame structure, component list
- Limited to read-only operations
Level 3: Figma REST API (Manual)
If FIGMA_ACCESS_TOKEN environment variable exists:
- Call
GET /v1/files/{file_key}/nodes?ids={node_id}via bash script - Parse response for: component names, styles, layout properties
- Limited — no screenshot, no Code Connect
Level 4: Screenshot + ai-multimodal (Always Available)
If no MCP and no API token:
- Ask user via
AskUserQuestion: "Please screenshot the Figma frame and paste here" - Analyze via
ai-multimodalskill with design extraction prompts - Extract: approximate colors, fonts, spacing, layout, components
Output Format
Save to team-artifacts/design-specs/{YYMMDD}-figma-extract-{slug}.md:
# Figma Design Extract: {Name}
**Source:** {Figma URL}
**Method:** {MCP Level 1 | MCP Level 2 | REST API | Screenshot}
**Date:** {YYMMDD}
## Design Tokens
| Category | Token | Value |
| ---------- | --------- | -------------------- |
| Color | Primary | {hex} |
| Color | Secondary | {hex} |
| Typography | Heading | {font, size, weight} |
| Spacing | Base | {px} |
## Component Inventory
- **{ComponentName}** — {description}, variants: {list}
## Layout
{ASCII wireframe per ui-wireframe-protocol}
## Responsive
{Breakpoint behavior if detectable}
When to Use
- Figma URL detected in PBI, design-spec, or user prompt
- Called by
design-specwhen Figma URL is present - Called by
planningskill during Design Context Extraction step
When NOT to Use
- No Figma URL present — skip, proceed to
design-specdirectly - Hand-drawn wireframe — use
wireframe-to-specinstead - Screenshot of existing app — use
design-screenshotinstead
See Also
references/figma-mcp-setup.md— MCP server setup guide (created in Phase 09).claude/skills/planning/references/figma-integration.md— integration protocol.claude/hooks/figma-context-extractor.cjs— URL detection hook