Figma 디자인 검증 자동화 — 서브에이전트로 CSS 오차 잡기

HANUI·
Claude CodeAIFigmaMCP서브에이전트자동화개발도구

Claude Code 시리즈 7편이에요. 6편에서 백엔드 연동을 다뤘는데요.

오늘은 Figma MCP로 UI를 만들 때 자잘한 CSS가 틀어지는 문제를 서브에이전트로 해결한 이야기예요.

문제: 큰 틀은 맞는데 디테일이 안 맞다

Figma MCP 연동해서 UI 구현하면 레이아웃은 꽤 잘 나와요. 근데 자세히 보면:

  • padding이 2~3px 어긋나 있고
  • gap이 미묘하게 다르고
  • 그림자 값이 근사치로 들어가 있고
  • 색상이 비슷하지만 다른 값으로 들어가 있어요

결국 "저기 간격 16px로 맞춰줘", "이 색 원본이랑 비교해봐"를 반복하게 돼요.

한두 번이면 괜찮은데, 컴포넌트 10개 만들면 이 작업을 10번 해야 해요. 이건 자동화해야 해요.

왜 틀어질까?

원인을 짧게 정리하면 다섯 가지예요.

1. MCP가 응답을 요약한다

Figma 노드 트리를 그대로 보내면 수십만 토큰이에요. MCP는 응답을 만들 때 중첩된 하위 노드의 세부 스타일을 축약하고, 1~2px 차이는 반올림해요. 데이터가 존재한다 ≠ Claude에게 정확히 전달된다.

2. LLM attention은 균등하지 않다

큰 프레임 하나에 수십 개 요소가 섞이면, Claude는 전체 구조 파악에 자원을 먼저 써요. 하위 요소의 세밀한 디테일에는 상대적으로 적게 쓰고요. 결과: 큰 틀은 맞고 자잘한 게 틀리다.

3. 생성 중 누적 오차

한 파일 안에서 20개 요소를 동시에 쓰면 스타일 결정이 수백 번 일어나요. 각 결정마다 미세한 드리프트가 생기고, 범위가 넓을수록 오차가 파일 전체로 퍼져요.

4. 프로젝트 컨벤션에 맞추려다 멀어진다

MCP 지침에 "프로젝트 토큰/컨벤션에 맞춰라"라고 돼 있어요. 그래서 Figma의 15px를 Tailwind gap-4(16px)로 자발적으로 반올림하는 경우가 있어요. 디자인 시스템 일관성엔 맞지만, 원본과는 달라져요.

5. Figma 원본이 정밀하지 않을 수 있다

디자이너가 Auto Layout을 안 쓰면 절대 좌표 + 고정 크기로 저장돼요. MCP가 이걸 flex/gap으로 추론하는 과정에서 손실이 생겨요.

해결: 서브에이전트로 자기 검증

핵심 아이디어는 간단해요. 한 번의 요청 안에 "생성 → 검증 → 패치"를 넣는 거예요.

Claude Code에는 서브에이전트 기능이 있어요. 메인 Claude가 별도의 Claude 인스턴스를 띄워서 특정 작업만 시키는 구조예요.

왜 서브에이전트인가:

  • 컨텍스트 보호: 검증 로그가 메인에 안 쌓여요
  • 역할 전문화: 절차, 규칙, 출력 형식을 고정할 수 있어요
  • 독립된 attention: 검증에만 집중하니까 디테일을 잘 잡아요

만드는 법

.claude/agents/ 폴더에 마크다운 파일 하나면 돼요.

figma-verifier 전체 코드

실제로 HANUI 프로젝트에서 쓰고 있는 에이전트 전문이에요.

포인트는 "표로 비교"를 강제하는 거예요. "스타일 맞나 봐줘" 같은 서술형 검증은 드리프트를 못 잡아요. 표 형식으로 강제하면 LLM이 자기 오차를 숫자로 인식해요.

사용법

기본 사용

Figma로 컴포넌트 구현 후 바로 검증:

구현 + 검증 한 번에

메인 Claude가 코드를 쓰고, figma-verifier 에이전트를 자동으로 호출해서 검증까지 해요. 흐름은 이래요:

dry-run (검증만, 수정 안 함)

diff 표만 출력하고 코드는 건드리지 않아요. 어디가 틀어졌는지 먼저 확인하고 싶을 때 써요.

실전 팁

1. 컴포넌트 단위로 쪼개서 요청해요

큰 페이지를 통째로 주면 원인 분석에서 말한 attention 분산이 그대로 일어나요. 카드, 폼, 헤더 등 컴포넌트 단위로 나눠서 요청하면 정밀도가 확 올라가요.

2. 디자이너에게 Auto Layout + 변수 사용을 부탁해요

근본적인 해결이에요. Auto Layout이 있으면 MCP가 flex/gap을 정확히 뽑아내고, Figma 변수가 있으면 토큰 매핑이 자동으로 돼요. 디자이너에게 "이거 써주면 코드 퀄리티가 확 올라간다"고 설명하면 대부분 수용해줘요.

3. 검증 에이전트를 다른 에이전트와 조합해요

HANUI 프로젝트에서는 이런 순서로 쓰고 있어요:

한 번의 요청으로 세 단계를 자동으로 돌릴 수 있어요.

4. 허용 오차를 프로젝트에 맞게 조정해요

위 기준표는 HANUI 기준이에요. 프로젝트 성격에 따라:

  • 픽셀 퍼펙트가 중요한 프로젝트: 오차 0~1px
  • 프로토타입 단계: 오차 4~5px
  • 디자인 시스템 구축 중: font-size, color만 0 오차, 나머지 느슨하게

마무리

정리하면:

  1. Figma MCP로 구현하면 큰 틀은 맞지만 디테일이 틀어진다
  2. 원인은 MCP 요약, attention 분산, 누적 오차 등 여러 레이어
  3. 서브에이전트로 "생성 → 표 비교 → 패치"를 한 턴에 돌리면 반복 수정이 사라진다
  4. .claude/agents/figma-verifier.md 파일 하나면 된다

"Claude에게 두 번 말하는 건 자동화가 덜 된 거다"라는 생각으로 만들었어요. 한 번 세팅하면 이후로는 검증 요청 없이도 알아서 돌아가요.

다음 편에서는 이 에이전트들을 **훅(Hook)**으로 연결해서 파일 저장만 하면 자동으로 검증이 돌아가게 만드는 방법을 다룰게요.

HANUI

KRDS 기반 React 컴포넌트 라이브러리. 공공 웹 개발을 더 쉽게.