LogoSkills

figma-analyzer-agent

Figma design analysis specialist. Used for requirements extraction and UI structure analysis

ํ•ญ๋ชฉ๋‚ด์šฉ
Invoke/figma:analyze
Aliases/figma:design, /design:analyze
ToolsRead, Edit, Write, Glob, Grep
Modelsonnet
Skillsfigma
MCP Serversfigma

/figma:analyze โ€” ํ”ผ๊ทธ๋งˆ ๋””์ž์ธ์„ ์ฝ”๋“œ๋กœ ์˜ฎ๊ฒจ์ฃผ๋Š” ๋ถ„์„๊ฐ€#

๋””์ž์ด๋„ˆ๊ฐ€ ๊ทธ๋ฆฐ ํ”ผ๊ทธ๋งˆ ํ™”๋ฉด์„ ์ฝ์–ด์„œ, ๋ฌด์—‡์„ ๋งŒ๋“ค์–ด์•ผ ํ•˜๋Š”์ง€ ์ •๋ฆฌํ•˜๊ณ  ์‹ค์ œ ๊ธฐ๋Šฅ ๊ฐœ๋ฐœ๋กœ ์ด์–ด์ฃผ๋Š” ์ „๋ฌธ ์—์ด์ „ํŠธ์ž…๋‹ˆ๋‹ค.

ํ•œ๋งˆ๋””๋กœ#

๋””์ž์ด๋„ˆ๊ฐ€ ๊ทธ๋ฆฐ ํ”ผ๊ทธ๋งˆ ํ™”๋ฉด์„ ๋ณด๊ณ  "์ด๊ฑธ ์•ฑ์œผ๋กœ ๋งŒ๋“ค๋ ค๋ฉด ๋ฌด์—‡์ด ํ•„์š”ํ•œ์ง€"๋ฅผ ๋Œ€์‹  ์ •๋ฆฌํ•ด ์ฃผ๋Š” ๋ถ„์„๊ฐ€์ž…๋‹ˆ๋‹ค. ์„ค๊ณ„ ๋„๋ฉด์„ ๋ณด๊ณ  ํ•„์š”ํ•œ ์ž์žฌ์™€ ์ž‘์—… ๋ชฉ๋ก์„ ๋ฝ‘์•„์ฃผ๋Š” ํ˜„์žฅ ๋ฐ˜์žฅ๊ณผ ๋น„์Šทํ•ด์š”.

๋ˆ„๊ฐ€ยท์–ธ์ œ ์“ฐ๋‚˜์š”#

  • ํ”ผ๊ทธ๋งˆ ๋””์ž์ธ์€ ๋‚˜์™”๋Š”๋ฐ, ์ด๊ฑธ ์‹ค์ œ ํ™”๋ฉด(์•ฑ)์œผ๋กœ ์˜ฎ๊ธฐ๋Š” ์ž‘์—…์„ ์‹œ์ž‘ํ•˜๋ ค๋Š” ๊ฒฝ์šฐ
  • ๋””์ž์ธ์„ ๋ณด๊ณ  "์–ด๋–ค ๋ฐ์ดํ„ฐ๊ฐ€ ํ•„์š”ํ•˜๊ณ , ์–ด๋–ค ํ™”๋ฉด ์š”์†Œ๊ฐ€ ์žˆ๋Š”์ง€" ์š”๊ตฌ์‚ฌํ•ญ์„ ์ •๋ฆฌํ•˜๊ณ  ์‹ถ์„ ๋•Œ

๐Ÿ‘‰ ์‚ฌ์šฉํ•˜๋ ค๋ฉด ํ”ผ๊ทธ๋งˆ์™€ ์—ฐ๊ฒฐ๋œ ๋„๊ตฌ(figma MCP)๊ฐ€ ์ผœ์ ธ ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๋ฌด์—‡์„ ํ•ด์ฃผ๋‚˜์š”#

๋ถ„์„์ด ๋๋‚˜๋ฉด .claude/docs/{๊ธฐ๋Šฅ์ด๋ฆ„}/ ํด๋” ์•„๋ž˜์— ๋‹ค์Œ ๊ฒฐ๊ณผ๋ฌผ์ด ๋งŒ๋“ค์–ด์ง‘๋‹ˆ๋‹ค.

  • figma_analysis.md โ€” ํ”ผ๊ทธ๋งˆ ํ™”๋ฉด์„ ๋ถ„์„ํ•œ ๊ฒฐ๊ณผ
  • requirements.md โ€” "๋ฌด์—‡์„ ๋งŒ๋“ค์–ด์•ผ ํ•˜๋Š”์ง€" ์ •๋ฆฌํ•œ ์š”๊ตฌ์‚ฌํ•ญ ๋ฌธ์„œ
  • screenshots/ โ€” ๋ถ„์„์— ์‚ฌ์šฉํ•œ ํ™”๋ฉด ์บก์ฒ˜ ์ด๋ฏธ์ง€

์—ฌ๊ธฐ์— ๋”ํ•ด, ๋ถ„์„ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ์‹ค์ œ ๊ธฐ๋Šฅ ๊ฐœ๋ฐœ(/feature:create)๊ณผ ZenHub ์ž‘์—… ์ด์Šˆ(Epic/Story) ์ƒ์„ฑ๊นŒ์ง€ ์ด์–ด์ค„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์–ด๋–ป๊ฒŒ ์“ฐ๋‚˜์š”#

# ํ”ผ๊ทธ๋งˆ์—์„œ ์ง์ ‘ ์„ ํƒํ•œ ํ™”๋ฉด์„ ๋ถ„์„ (๊ธฐ๋ณธ)
/figma:analyze --use-selection

# ํŠน์ • ๋…ธ๋“œ(ํ™”๋ฉด ์š”์†Œ) ID๋ฅผ ์ง€์ •ํ•ด์„œ ๋ถ„์„
/figma:analyze --node-ids  " 1:23,4:56 " 

 # ์ด๋ฆ„์œผ๋กœ ํ™”๋ฉด ์š”์†Œ๋ฅผ ๊ฒ€์ƒ‰ํ•ด์„œ ๋ถ„์„
/figma:analyze --search-query  " ๋กœ๊ทธ์ธ ์นด๋“œ " 

 # ๋ถ„์„ ํ›„ ๊ณง๋ฐ”๋กœ ๊ธฐ๋Šฅ ๊ฐœ๋ฐœ๊นŒ์ง€ ์ž๋™์œผ๋กœ ์ด์–ด๊ฐ€๊ธฐ
/figma:analyze --use-selection --auto-create
  • --page-name: ํŠน์ • ํ”ผ๊ทธ๋งˆ ํŽ˜์ด์ง€๋ฅผ ์ง€์ •ํ•˜๊ณ  ์‹ถ์„ ๋•Œ ๋ง๋ถ™์ž…๋‹ˆ๋‹ค.
  • ๊ธฐ๋Šฅ ์ด๋ฆ„์€ ์ง์ ‘ ์ ์–ด์ค„ ์ˆ˜๋„ ์žˆ๊ณ , ๋น„์›Œ๋‘๋ฉด ์ž๋™์œผ๋กœ ์ถ”๋ก ํ•ฉ๋‹ˆ๋‹ค.

์•ˆ์—์„œ ๋ฌด์Šจ ์ผ์ด ๋ฒŒ์–ด์ง€๋‚˜์š”#

ํฌ๊ฒŒ ๋‹ค์„ฏ ๋‹จ๊ณ„๋ฅผ ์ฐจ๋ก€๋กœ ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

  1. ํ™”๋ฉด ๊ฐ€์ ธ์˜ค๊ธฐ โ€” ํ”ผ๊ทธ๋งˆ์—์„œ ์„ ํƒํ•œ ํ™”๋ฉด๊ณผ ์š”์†Œ๋ฅผ ์ฝ๊ณ , ์Šคํฌ๋ฆฐ์ƒท์„ ์ฐ์Šต๋‹ˆ๋‹ค.
  2. ํ™”๋ฉด ๋œฏ์–ด๋ณด๊ธฐ โ€” ์–ด๋–ค ๊ตฌ์„ฑ ์š”์†Œ(์นด๋“œ, ์ž…๋ ฅ์นธ ๋“ฑ)๊ฐ€ ์žˆ๋Š”์ง€ ์‹๋ณ„ํ•˜๊ณ , ๊ธ€์žยท์ƒ‰์ƒยท๊ฐ„๊ฒฉ ๊ฐ™์€ ๋””์ž์ธ ์ •๋ณด๋ฅผ ์ถ”์ถœํ•ฉ๋‹ˆ๋‹ค.
  3. ์š”๊ตฌ์‚ฌํ•ญ ์ •๋ฆฌ โ€” ๋””์ž์ธ์„ ๋ณด๊ณ  ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ ํ•ญ๋ชฉ๊ณผ ํ™”๋ฉด ์œ„์ ฏ, ๊ทธ๋ฆฌ๊ณ  ๋™์ž‘(์ถ”๊ฐ€ยท์กฐํšŒยท์ˆ˜์ •ยท์‚ญ์ œ)์„ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค.
  4. ๊ธฐ๋Šฅ ์ƒ์„ฑ โ€” ์š”๊ตฌ์‚ฌํ•ญ ๋ฌธ์„œ๋ฅผ ๋งŒ๋“ค๊ณ , ์‹ค์ œ ๊ธฐ๋Šฅ ๊ฐœ๋ฐœ(/feature:create)์„ ํ˜ธ์ถœํ•ฉ๋‹ˆ๋‹ค.
  5. ์ž‘์—… ์ด์Šˆ ์ƒ์„ฑ โ€” ZenHub์— Epic/Story๋ฅผ ๋งŒ๋“ค๊ณ  ํ”ผ๊ทธ๋งˆ ๋งํฌ๋ฅผ ์ฒจ๋ถ€ํ•ฉ๋‹ˆ๋‹ค.

โš™๏ธ ์ƒ์„ธ ์˜ต์…˜ยท์‹คํ–‰ ๋ช…์„ธ (๊ฐœ๋ฐœ์ž / AI ์—์ด์ „ํŠธ์šฉ)

Role#

Figma frame analysis -> UI requirements extraction -> Clean Architecture Feature creation automation


Activation Conditions#

  • /figma:analyze Activated when command is invoked
  • figma MCP server activation required

Parameters#

ParameterRequiredDescription
--node-idsOption1Figma Node ID List (Comma separated)
--search-queryOption2Node Name search query
--use-selectionOption3Use Figma Selected Nodes (default)
--page-nameโŒFigma Page name
feature_nameโŒFeature name (can be Auto-inferred)
--auto-createโŒAuto feature:create after Analysis

Execution Flow#

Phase 1: ํ”ผ๊ทธ๋งˆ ๋…ธ๋“œ ์ˆ˜์ง‘
  - get_selection / get_node_info
  - export_node_as_image (์Šคํฌ๋ฆฐ์ƒท)
    โ†“
Phase 2: UI ๋ถ„์„
  - ์ปดํฌ๋„ŒํŠธ ์‹๋ณ„ (FRAME/TEXT/COMPONENT)
  - CoUI ๋งคํ•‘ (get_by_coui)
  - ํ…์ŠคํŠธ ๋…ธ๋“œ ์Šค์บ” (scan_text_nodes)
  - Design tokens ์ถ”์ถœ (extract_design_tokens)
    โ†“
Phase 3: ์š”๊ตฌ์‚ฌํ•ญ ์ •์˜
  - Figma โ†’ Entity ํ•„๋“œ ๋งคํ•‘
  - UI โ†’ Flutter ์œ„์ ฏ ๋ณ€ํ™˜
  - CRUD ๋ฉ”์„œ๋“œ ์‹๋ณ„
    โ†“
Phase 4: Feature ์ƒ์„ฑ
  - Requirements document ์ƒ์„ฑ
  - /feature:create ํ˜ธ์ถœ
    โ†“
Phase 5: ZenHub Story ์ƒ์„ฑ
  - Epic/Story ์ƒ์„ฑ
  - Figma ๋งํฌ ์ฒจ๋ถ€

figma MCP Key Features#

FunctionMCP Tool
Get selected nodesget_selection
Node detail infoget_node_info
Export imageexport_node_as_image
Search nodessearch
CoUI ๋งคํ•‘get_by_coui
Text scanscan_text_nodes
Design tokensextract_design_tokens

Component Mapping#

Figma to Flutter Conversion#

Figma NodeFlutter Widget
FRAME (vertical auto-layout)Column / ListView
FRAME (horizontal auto-layout)Row / Wrap
COMPONENT "card-*"Card
COMPONENT "input-*"TextField
COMPONENT "dropdown"DropdownButton
TEXT (large font)Heading
RECTANGLE (image fill)Image.network

Output Files#

.claude/docs/{feature_name}/
โ”œโ”€โ”€ figma_analysis.md       # Figma analysis result
โ”œโ”€โ”€ requirements.md         # Requirements document
โ””โ”€โ”€ screenshots/            # Captured screenshots

Checklist#

Phase 1: Node Collection

  • Verify figma MCP activation
  • Node info retrieval success
  • Screenshot capture complete

Phase 2: UI Analysis

  • Component identification complete
  • CoUI mapping complete
  • Text/field extraction complete

Phase 3: Requirements

  • Entity field definition complete
  • Flutter widget conversion complete
  • API method identification complete