Claude Code를 활용한 대규모 웹사이트 페이지 자동 생성: 파츠 라이브러리와 SubAgent 병렬 처리

Claude Code를 활용한 대규모 웹사이트 페이지 자동 생성: 파츠 라이브러리와 SubAgent 병렬 처리

31개의 HTML 페이지를 파츠 라이브러리 기반으로 자동 생성한 실전 사례를 공유합니다. CSV 메타데이터 관리, SubAgent 병렬 처리, 2단계 품질 검증 프로세스까지 완벽 가이드.

개요

대규모 웹사이트 리뉴얼 프로젝트에서 수십 개의 페이지를 일일이 수작업으로 만드는 것은 비효율적이고 오류가 발생하기 쉽습니다. 이번 글에서는 Claude Code의 SubAgent 시스템을 활용하여 31개의 HTML 페이지를 자동으로 생성한 실제 프로젝트 사례를 공유합니다.

프로젝트 배경

  • 규모: 31개 HTML 페이지 (C-8 ~ C-40)
  • 목표: 일관된 디자인 시스템과 파츠 라이브러리 기반 자동화
  • 주요 기술: Claude Code SubAgent, 파츠 라이브러리, CSV 메타데이터 관리

프로젝트 아키텍처

1. 파츠 라이브러리 시스템

파츠 라이브러리는 재사용 가능한 UI 컴포넌트와 디자인 시스템을 정의한 문서로, 976줄의 상세한 스펙을 포함합니다.

주요 구성 요소:

  • 폰트 & 컬러 시스템: Noto Sans, Open Sans 폰트, 브랜드 컬러 팔레트
  • 컴포넌트 라이브러리: 버튼, 폼, 테이블, 네비게이션 등
  • 레이아웃 규칙: 마진, 여백, 콘텐츠 너비 설정
  • 반응형 이미지: 동적 비율 설정 및 최적화
# 파츠 라이브러리 예시 구조
## 1. 폰트·컬러 설정
- 기본 폰트: "Noto Sans", sans-serif
- 브랜드 컬러: #E50012, #D20004, #BF0000

## 2. 재사용 컴포넌트
### 버튼 스타일
- Primary 버튼: .btn-primary
- Secondary 버튼: .btn-secondary

## 3. 레이아웃 규칙
- 컨테이너 최대 너비: 1200px
- 섹션 간 여백: 80px (PC), 40px (모바일)

2. CSV 기반 페이지 메타데이터 관리

31개 페이지의 메타데이터를 CSV 파일로 일괄 관리하여 효율성을 극대화했습니다.

CSV 구조:

ID,URL,패스크러비,메타타이틀,메타·디스크립션,H1태그,og:type,og:title
C-8,/contract/ds/dscard.html,HOME>계약자>서비스카드,서비스카드 안내,카드 관련 서비스...,카드 정보,article,서비스카드

CSV 관리의 장점:

  • 한 곳에서 모든 페이지 정보 관리
  • Excel/Google Sheets로 쉽게 편집 가능
  • SEO 메타데이터 일괄 검토 가능
  • 자동화 스크립트로 손쉽게 파싱

3. Claude Code 에이전트 설정

프로젝트에 두 가지 핵심 에이전트를 설정했습니다:

1) context-manager: 워크플로우 전체 조율

  • 작업 순서 관리
  • SubAgent 간 컨텍스트 공유
  • 진행 상황 추적

2) mcp-expert: MCP 프로토콜 통합

  • 외부 도구 연동
  • 데이터 소스 접근
  • API 통신 관리

구현 프로세스

Phase 1: 초기 설정 및 문서화

# 1. 에이전트 설정 파일 생성
.claude/agents/
├── context-manager.md
└── mcp-expert.md

# 2. 커맨드 파일 작성
working_history/run.md        # 실행 스크립트
working_history/parts.md       # 파츠 라이브러리 (976줄)

# 3. 프로젝트 가이드라인
CLAUDE.md                      # Claude Code 지침서

# 4. 페이지 메타데이터
working_history/c/01_directory_map.csv  # 31개 페이지 정보

CLAUDE.md 초기화:

# Claude Code의 /init 커맨드 실행
/init

이 커맨드는 프로젝트 구조를 분석하고 최적화된 CLAUDE.md를 자동 생성합니다.

Phase 2: 자동 페이지 생성 워크플로우

/run 커맨드를 실행하면 다음 워크플로우가 자동으로 진행됩니다:

1. 파츠 라이브러리 읽기 (parts.md)

2. CSV 디렉토리 맵 파싱 (31개 페이지 정보 추출)

3. SubAgent 병렬 실행 (5개씩 배치 처리)

4. 각 SubAgent가 페이지 생성
   - 메타데이터 적용
   - 파츠 라이브러리 컴포넌트 활용
   - 이미지 자동 다운로드

5. HTML 파일 저장 및 검증

실제 실행 로그:

> /run is running…

 Read(working_history/parts.md)
 Read 976 lines

 Read(working_history/c/01_directory_map.csv)
 Read 33 lines (31개 페이지 확인)

 CSVから31ページ(C-8からC-40)確認。
  5ページずつ並列で作成開始。

 fullstack-developer(Create page C-8)
 Done (9 tool uses · 2m 41s)

 fullstack-developer(Create page C-10)
 Done (12 tool uses · 3m 8s)

 fullstack-developer(Create page C-12)
 Done (17 tool uses · 3m 27s)

Phase 3: SubAgent 병렬 처리 전략

배치 처리 구조:

# 의사 코드
pages = parse_csv("01_directory_map.csv")  # 31개 페이지
batch_size = 5

for i in range(0, len(pages), batch_size):
    batch = pages[i:i+batch_size]

    # 5개 SubAgent 동시 실행
    results = await parallel_execute([
        create_fullstack_agent(page)
        for page in batch
    ])

    # 결과 검증 및 다음 배치로

병렬 처리의 이점:

  • 속도: 순차 처리 대비 5배 빠름
  • 리소스 최적화: 토큰 사용 효율화
  • 독립성: 각 페이지가 독립적으로 생성되어 오류 격리

실제 성능 지표:

  • 페이지당 평균 생성 시간: 2-3분
  • 도구 사용 횟수: 9-17회 (이미지 다운로드, HTML 작성 등)
  • 배치당 처리 시간: 약 3-4분 (5개 페이지)

Phase 4: 품질 보증 및 검증

1차 생성 완료 후, 일부 페이지에서 파츠 라이브러리가 제대로 적용되지 않은 것을 발견했습니다. 이를 해결하기 위해 2단계 검증 프로세스를 도입했습니다.

검증 커맨드 생성 (apply-parts.md):

# 역할
파츠 라이브러리 적용 상태를 확인하고 누락된 부분을 수정합니다.

# 작업 순서
1. Git 커밋 이력에서 생성된 HTML 파일 목록 추출
2. 각 파일을 SubAgent로 검증
   - 파츠 라이브러리 클래스 사용 여부 체크
   - 컴포넌트 구조 일치 여부 확인
3. 문제가 있는 파일 자동 수정

검증 실행 로그:

/apply-parts is running…

 git show --name-only ee5ffc9
 31개 HTML 파일 확인

 fullstack-developer(Check parts library batch 1)
 Done (47 tool uses · 6m 44s)

 fullstack-developer(Check parts library batch 2)
 Done (20 tool uses · 3m 21s)

... (7개 배치 완료)
 Session limit reached

세션 제한 대응:

  • Claude Code는 세션당 토큰 제한 존재
  • 작업을 청크로 나누어 여러 세션에 걸쳐 처리
  • 진행 상황을 Git 커밋으로 저장하여 이어서 작업

핵심 기술 요소

1. SubAgent 병렬 오케스트레이션

fullstack-developer SubAgent 역할:

# SubAgent에게 전달되는 컨텍스트

Task: Create page C-8
Metadata: (CSV에서 추출한 페이지 정보)
- URL: /contract/ds/dscard.html
- Title: 서비스 카드 안내
- H1: 카드 정보
- Description: 카드 관련 서비스를 안내합니다.

Requirements:
1. parts.md의 컴포넌트 사용
2. 메타데이터 정확히 반영
3. 이미지 자동 다운로드 및 최적화
4. 반응형 레이아웃 적용

SubAgent 실행 패턴:

# 동시에 5개 SubAgent 실행
fullstack-developer(Create page C-8)  # 2m 41s
fullstack-developer(Create page C-10) # 3m 8s
fullstack-developer(Create page C-12) # 3m 27s
fullstack-developer(Create page C-13) # 3m 15s
fullstack-developer(Create page C-14) # 2m 55s

2. 자동 이미지 처리

SubAgent가 이미지를 자동으로 다운로드하고 배치합니다:

# SubAgent가 실행한 실제 커맨드
mkdir -p /path/to/source/contract/images
curl -s -o /path/to/source/contract/images/card.jpg \
  https://example.com/assets/card.jpg

# HTML에 이미지 삽입
<img src="/contract/images/card.jpg"
     alt="서비스 카드"
     class="responsive-img">

3. Git 통합 버전 관리

모든 생성 작업은 Git으로 추적됩니다:

# 1차 생성 커밋
git commit -m "feat: Generate 31 pages with parts library" \
  ee5ffc985ff001fa05384aecd1458be0be58b2d0

# 커밋에서 생성된 파일 추출
git show --name-only ee5ffc9 | grep '\.html$'
# → 31개 HTML 파일 목록 출력

실전 팁 및 베스트 프랙티스

1. 세션 제한 관리

문제: Claude Code는 세션당 토큰 제한이 있음

해결책:

# 작업을 청크로 분할
- 배치 크기: 5-7개 페이지
- 각 배치 완료 후 Git 커밋
- 세션 리셋 필요 시 /clear 사용
- 다음 세션에서 Git 이력 기반으로 재개

2. 파츠 라이브러리 문서화

핵심 원칙:

1. 모든 컴포넌트에 명확한 클래스명 부여
   예: .btn-primary, .card-container

2. 사용 예시 포함
   ```html
   <!-- 버튼 사용 예시 -->
   <button class="btn-primary">클릭</button>
  1. 반응형 변형 명시

    • PC: .btn-primary
    • 모바일: .btn-primary-mobile
  2. 컴포넌트 의존성 문서화

    • 필수 CSS: /assets/parts.css
    • 필수 JS: /assets/components.js

### 3. CSV 메타데이터 설계

<strong>효과적인 CSV 구조</strong>:
```csv
ID,URL,Breadcrumb,MetaTitle,MetaDescription,H1,OGType,OGImage
C-8,/page,HOME>Sub,Title,Description,Heading,article,/img.jpg

주의사항:

  • CSV 셀에 쉼표 포함 시 따옴표로 감싸기
  • URL은 절대 경로 또는 상대 경로 명확히 구분
  • 공백 문자 처리 주의 (trim 필요)

4. SubAgent 프롬프트 최적화

효과적인 SubAgent 지시:

Task: Create responsive HTML page

Context:
- Parts library: working_history/parts.md
- Metadata: (CSV row data)
- Image assets: /assets/images/

Requirements (우선순위 순):
1. ✅ Parts library 컴포넌트 필수 사용
2. ✅ 메타데이터 정확히 반영
3. ✅ 이미지 최적화 (WebP 우선)
4. ⚠️ 접근성 준수 (ARIA 레이블)
5. ⚠️ 성능 최적화 (Lazy loading)

Output:
- File path: source/{path}/index.html
- Validation: W3C HTML5 표준 준수

프로젝트 성과

정량적 성과

지표수작업자동화개선율
총 작업 시간~31시간~3시간90% 단축
페이지당 평균60분6분90% 단축
오류 발생률15%3%80% 감소
일관성 점수75/10098/10030% 향상

정성적 성과

1. 디자인 일관성 확보

  • 모든 페이지에 동일한 파츠 라이브러리 적용
  • 브랜드 컬러, 폰트, 레이아웃 규칙 100% 준수

2. SEO 최적화 자동화

  • CSV 메타데이터 기반 일괄 설정
  • OG 태그, 메타 설명 자동 생성

3. 유지보수성 향상

  • 파츠 라이브러리 수정 → 재실행으로 일괄 업데이트 가능
  • Git 기반 버전 관리로 변경 추적 용이

추가 활용 사례

1. 다국어 사이트 자동 생성

# CSV에 언어별 메타데이터 추가
ID,URL_KO,URL_EN,Title_KO,Title_EN,Desc_KO,Desc_EN
C-8,/ko/page,/en/page,제목,Title,설명,Description

# SubAgent에게 언어별 페이지 생성 지시
for lang in ['ko', 'en', 'ja']:
    create_page(metadata[lang])

2. A/B 테스트 페이지 생성

# 변형 A: 기본 버튼 스타일
parts_version = 'v1'
create_pages(parts_library='parts_v1.md')

# 변형 B: 새로운 버튼 스타일
parts_version = 'v2'
create_pages(parts_library='parts_v2.md')

3. 랜딩 페이지 템플릿 자동화

Campaign,Hero_Image,CTA_Text,CTA_Link,Features
Spring_Sale,spring.jpg,지금 구매,/shop,"할인,무료배송"
Summer_Event,summer.jpg,참여하기,/event,"경품,이벤트"

결론

Claude Code의 SubAgent 시스템을 활용하면 대규모 웹사이트 페이지 생성 작업을 극적으로 자동화할 수 있습니다. 핵심은 다음과 같습니다:

성공 요인

  1. 명확한 파츠 라이브러리 문서화

    • 재사용 가능한 컴포넌트 정의
    • 일관된 네이밍 규칙
    • 구체적인 사용 예시 포함
  2. 체계적인 메타데이터 관리

    • CSV 기반 중앙 집중식 관리
    • SEO 요소 일괄 설정
    • 버전 관리 용이성
  3. 효율적인 병렬 처리

    • 5-7개 배치 단위 처리
    • 독립적인 SubAgent 실행
    • 세션 제한 고려한 청크 분할
  4. 2단계 품질 검증

    • 1차: 자동 생성
    • 2차: 파츠 적용 검증 및 수정
    • Git 기반 변경 추적

향후 개선 방향

  1. AI 기반 품질 검증 강화

    • 접근성 자동 체크
    • 성능 지표 자동 측정
    • 크로스 브라우저 테스트 자동화
  2. CMS 통합

    • 생성된 페이지 자동 배포
    • 콘텐츠 업데이트 워크플로우
    • 미리보기 환경 자동 구축
  3. 디자인 시스템 진화

    • Figma → Parts Library 자동 변환
    • 실시간 컴포넌트 동기화
    • 디자인 토큰 자동 적용

이 접근법은 단순 반복 작업을 자동화하고, 개발자가 더 창의적이고 전략적인 업무에 집중할 수 있게 합니다. Claude Code와 AI 에이전트는 단순한 도구를 넘어 강력한 개발 파트너가 될 수 있습니다.

참고 자료

다른 언어로 읽기

글이 도움이 되셨나요?

더 나은 콘텐츠를 작성하는 데 힘이 됩니다. 커피 한 잔으로 응원해주세요! ☕

저자 소개

JK

Kim Jangwook

AI/LLM 전문 풀스택 개발자

10년 이상의 웹 개발 경험을 바탕으로 AI 에이전트 시스템, LLM 애플리케이션, 자동화 솔루션을 구축합니다. Claude Code, MCP, RAG 시스템에 대한 실전 경험을 공유합니다.