TRENDSHIFT #4 딥다이브 · 2026-03-30 분석

ai-website-cloner-template 딥다이브
— URL 하나로 AI 에이전트가 웹사이트를 Next.js 프로젝트로 재구성

웹사이트 클론 작업은 보통 CSS 값을 일일이 복사하고, 컴포넌트를 수작업으로 재현하는 고된 과정입니다. ai-website-cloner-template/clone-website https://example.com 한 줄이면 AI 에이전트가 정찰 → 스펙 작성 → 병렬 빌드 → QA까지 5단계를 자동 수행해 Next.js 16 프로젝트로 변환해줍니다. (저장소: JCodesMore/ai-website-cloner-template · ⭐16.2k · MIT)
목차
  1. 프로젝트 한줄 요약
  2. 왜 주목받는가
  3. 기술 스택 전체 지도
  4. 아키텍처 심화 분석
  5. 디렉토리 구조 해부
  6. 학습 포인트 (기술별)
  7. 하드웨어 / 시스템 요구사항
  8. 직접 해볼 수 있는 실습 과제
  9. 관련 기술 심화 학습 로드맵
  10. 핵심 키워드 사전
  11. 참고 링크

1프로젝트 한줄 요약

이 템플릿이 정확히 무엇을 하는 물건인가

URL 하나만 주면, AI 코딩 에이전트가 알아서 웹사이트를 픽셀 퍼펙트하게 클론해주는 재사용 가능한 템플릿 프레임워크. /clone-website https://example.com 한 줄이면, 에이전트가 사이트를 분석하고 → 디자인 토큰과 에셋을 추출하고 → 컴포넌트 스펙을 작성하고 → 병렬 빌더를 띄워서 Next.js 16 프로젝트로 재구성합니다.

한 컷 비유

"건물을 보고 설계도를 역으로 추출해, 새 자재로 똑같이 짓는 것"

전통적 클론은 HTML 소스코드를 복사하는 것에 불과합니다. 이 도구는 Browser MCP로 렌더링된 최종 CSS 값을 추출하고, 인터랙션 패턴을 파악한 뒤, 컴포넌트 스펙 문서를 먼저 작성해 여러 빌더 에이전트에 동시에 배정합니다.

핵심은 "AI에게 알아서 해라"가 아니라 상세한 스펙 파일을 먼저 만들어 위임하는 것입니다. 스펙이 정확할수록 결과가 정확해집니다.

2왜 주목받는가

트렌딩 이유와 경쟁 도구 대비 강점
기존 방식의 한계
수동 클론의 고통

view-source로 HTML을 복사해도 getComputedStyle()로 계산된 실제 CSS 값은 가져오지 못합니다. 반응형 레이아웃, 호버 상태, 스크롤 애니메이션 같은 인터랙션은 보이지 않죠. 결국 수백 번의 수동 확인과 재작업이 필요합니다.

이 도구의 해법
5단계 자동화 파이프라인

Browser MCP가 라이브 사이트에서 30개 이상의 CSS 속성을 정확히 추출하고, 인터랙션 모델(스크롤/클릭/시간 기반)을 판별합니다. 상세한 스펙 파일을 git worktree 기반 병렬 빌더들에 배정해, 하나의 기반 코드베이스에서 여러 섹션을 동시에 빌드합니다.

경쟁 도구 대비 위치

비교 대상ai-website-cloner-template의 차별점
same.new (Same)SaaS 서비스 vs. 로컬 오픈소스 — AI 에이전트를 내 입맛대로 제어 가능
수동 클론CSS를 getComputedStyle()로 정확히 추출, 반응형·인터랙션까지 캡처
Figma → 코드 변환Figma 파일 없이 라이브 사이트에서 직접 추출 — 원본 사이트가 곧 디자인 시스템
단순 HTML 스크래퍼단순 복사 아닌 Next.js 16 + shadcn/ui + TypeScript strict 모던 프로젝트로 재구성

출시 직후 ⭐16.2k (분석 시점 5.2k에서 급증)를 기록한 이 레포는 바이브코딩의 실전 템플릿으로 주목받고 있습니다. 다수의(10개 이상) AI 에이전트 플랫폼(Claude Code, Cursor, Windsurf, Gemini CLI 등)을 단일 AGENTS.md로 동기화하는 구조가 특히 화제입니다.

3기술 스택 전체 지도

프론트엔드 · 유틸리티 · 인프라 · AI 에이전트 지원

① 프론트엔드

기술버전역할
Next.js16.2.1App Router 기반 프레임워크. React 19와 함께 사용
React19.2.4UI 라이브러리. Server Components, use() 훅 등 최신 기능
TypeScript5.x (strict)타입 안전성. 추출한 데이터의 인터페이스도 자동 생성
Tailwind CSSv4oklch 컬러 시스템 기반 디자인 토큰. 유틸리티 퍼스트 스타일링
shadcn/ui최신Radix Primitives 기반 접근성 보장 컴포넌트
Lucide React기본 아이콘 (클론 시 추출된 SVG로 교체됨)

② 유틸리티

기술역할
clsx조건부 클래스명 결합
tailwind-mergeTailwind 클래스 충돌 해결
class-variance-authority (CVA)컴포넌트 변형(variant) 관리

③ 인프라 / 도구

기술역할
Node.js 24+런타임 필수 요구사항 (.nvmrc: 24, engines: >=24)
ESLint 9.xNext.js 설정 포함 코드 품질 관리
Vercel권장 호스팅 플랫폼
Browser MCPChrome/Playwright/Puppeteer로 사이트 분석
git worktree멀티 에이전트 병렬 빌드에 사용
용어 설명
oklch 색상 공간
CSS Color Level 4의 색상 표현법. L(밝기)/C(채도)/H(색조)로 구성. 기존 RGB나 HSL보다 인간 시각에 균일하게 대응해, 밝기를 바꿔도 채도와 색상이 일정하게 유지됩니다. 디자인 토큰 관리에 이상적입니다.

4아키텍처 심화 분석

5단계 파이프라인 구조도 + 핵심 설계 패턴
┌──────────────────────────────────────────────────────────────┐ │ /clone-website <URL> (SKILL.md 기반) │ └──────────────┬───────────────────────────────────────────────┘ │ ▼ ┌──────────────────────────────────────────────────────────────┐ │ Phase 1: 정찰 (Reconnaissance) │ │ ┌──────────┐ ┌──────────────┐ ┌───────────────────────┐ │ │ │스크린샷 │ │디자인토큰추출 │ │인터랙션 스윕 │ │ │ │(3 VP) │ │(폰트/색상) │ │(스크롤/클릭/호버 분석) │ │ │ └──────────┘ └──────────────┘ └───────────────────────┘ │ │ ↓ Browser MCP (Chrome/Playwright/Puppeteer) │ └──────────────┬───────────────────────────────────────────────┘ ▼ ┌──────────────────────────────────────────────────────────────┐ │ Phase 2: 기반 구축 (Foundation) — 순차 실행, 위임 불가 │ │ layout.tsx · globals.css · TS 인터페이스 · 에셋 다운로드 │ └──────────────┬───────────────────────────────────────────────┘ ▼ ┌──────────────────────────────────────────────────────────────┐ │ Phase 3: 컴포넌트 스펙 작성 + 빌더 디스패치 │ │ Browser MCP → docs/research/components/hero-spec.md 등 │ └──────────────┬───────────────────────────────────────────────┘ ▼ ┌──────────────────────────────────────────────────────────────┐ │ Phase 4: 병렬 빌드 (git worktree) │ │ Builder A(Hero) · Builder B(Nav) · Builder C(Footer) ... │ │ └──────────────── merge ──────────────────┘ │ └──────────────┬───────────────────────────────────────────────┘ ▼ ┌──────────────────────────────────────────────────────────────┐ │ Phase 5: 조립 & QA — page.tsx + 비주얼 diff (1440/768/390px)│ └──────────────────────────────────────────────────────────────┘

핵심 설계 패턴

1. Single Source of Truth — AGENTS.md 동기화 패턴

AGENTS.md 하나에 모든 에이전트 규칙을 작성하고, sync-agent-rules.sh가 다수의(10개 이상) 플랫폼 설정 파일을 자동 생성합니다. 규칙을 바꿀 때 파일 하나만 편집하면 모든 플랫폼에 자동 반영됩니다.

AGENTS.md (유일한 편집 대상)
    ├──▶ .github/copilot-instructions.md  (GitHub Copilot)
    ├──▶ .clinerules                      (Cline/Roo Code)
    ├──▶ .continue/rules/project.md       (Continue)
    ├──▶ CLAUDE.md → @AGENTS.md           (Claude Code는 참조만)
    └──▶ .windsurfrules                   (Windsurf)

2. Spec-Driven Builder Pattern

빌더 에이전트에게 "알아서 해"가 아니라, getComputedStyle() 값·인터랙션 모델·반응형 브레이크포인트를 담은 스펙 파일을 먼저 작성하고 인라인으로 전달합니다. 빌더는 추론할 필요 없이 스펙 그대로 구현합니다.

용어 설명
Interaction Model First (인터랙션 모델 우선 원칙)
SKILL.md에서 "가장 비싼 실수 #1"로 지목된 패턴입니다. "클릭 기반으로 빌드했는데 원본은 스크롤 기반이었다"면 전체 재작성이 필요합니다. 그래서 정찰 단계에서 스크롤·클릭·호버를 먼저 테스트해 각 섹션이 정적인지/동적인지 판별합니다.

5디렉토리 구조 해부

핵심 파일과 폴더 역할 분석
ai-website-cloner-template/ ├── .claude/ │ └── skills/clone-website/ │ └── SKILL.md ← 핵심! 5단계 파이프라인 전체 정의 ├── src/ │ ├── app/ │ │ ├── layout.tsx ← 루트 레이아웃 (폰트 설정) │ │ ├── page.tsx ← 메인 페이지 (섹션 조립) │ │ └── globals.css ← 디자인 토큰 (oklch 변수) │ ├── components/ │ │ ├── ui/ ← shadcn/ui 프리미티브 │ │ └── icons.tsx ← 추출된 SVG 아이콘 (클론 실행 후 생성됨) │ ├── types/ ← TypeScript 인터페이스 정의 │ └── lib/utils.ts ← cn() 유틸리티 (clsx + twMerge) ├── docs/ │ ├── design-references/ ← 스크린샷·비교 이미지 │ └── research/ │ ├── INSPECTION_GUIDE.md │ └── components/ ← 컴포넌트별 스펙 파일(.md) (클론 실행 후 생성됨) ├── scripts/ │ ├── sync-agent-rules.sh ← AGENTS.md → 각 플랫폼 설정 동기화 │ └── sync-skills.mjs ← SKILL.md → 각 플랫폼 스킬 동기화 ├── AGENTS.md ← 단일 소스: 모든 에이전트 규칙 └── package.json ← Next.js 16 + React 19 + TypeScript 5
파일한줄 설명
.claude/skills/clone-website/SKILL.md5단계 파이프라인의 모든 세부 사항. 이 파일이 프로젝트의 두뇌
AGENTS.md다수의(10개 이상) AI 에이전트를 위한 프로젝트 규칙. 편집은 여기서만
scripts/sync-agent-rules.sh@file 임포트를 인라인으로 풀어서 각 플랫폼 설정 파일 생성
docs/research/components/빌더에게 전달할 컴포넌트 스펙 파일 저장소

6학습 포인트 (기술별)

이 레포에서 무엇을 배울 수 있는가

6-1. AI 에이전트 오케스트레이션

여러 AI 에이전트를 동시에 관리하는 패턴을 배웁니다. 메인 에이전트가 정찰+스펙 작성을 담당하고, 서브 에이전트들이 worktree에서 병렬 빌드하는 구조입니다. "에이전트에게 좋은 지시를 내리는 방법"이 곧 이 프로젝트의 핵심입니다.

6-2. Browser MCP 활용

Chrome MCP를 사용해 라이브 웹사이트의 CSS 값, DOM 구조, 에셋을 프로그래밍 방식으로 추출하는 기법을 배웁니다. getComputedStyle()로 실제 렌더링된 CSS 30개 이상의 속성을 가져오고, 멀티 스테이트 추출(초기 → 트리거 → 변경 후)을 수행합니다.

6-3. Next.js 16 + React 19

최신 Next.js의 App Router 구조와 React 19의 Server Components를 배웁니다. AGENTS.md에서 경고하듯, Next.js 16은 API와 파일 구조에 breaking changes가 많으므로 과거 지식을 그대로 적용하면 안 됩니다.

6-4. Tailwind CSS v4 + oklch

Tailwind v4의 새로운 디자인 토큰 시스템과 oklch 색상 공간을 배웁니다. oklch는 밝기(L)를 바꿔도 채도와 색상이 일정하게 유지되어 디자인 시스템에 이상적입니다.

6-5. 멀티 플랫폼 에이전트 설정 동기화

하나의 설정 파일로 다수의(10개 이상) AI 에이전트 플랫폼을 관리하는 패턴을 배웁니다. shell 스크립트가 AGENTS.md@file 참조를 인라인으로 풀어, 각 플랫폼이 요구하는 포맷으로 변환합니다.

용어 설명
150줄 규칙
스펙 파일이 150줄을 넘으면 섹션을 분할해야 한다는 이 프로젝트의 복잡도 관리 원칙. "작은 작업이 완벽한 결과를 만든다"는 철학에서 나왔습니다. 에이전트에게 너무 큰 작업을 한 번에 시키면 품질이 떨어집니다.

7하드웨어 / 시스템 요구사항

실행 환경 체크리스트
항목최소권장
Node.js24+24 LTS (현재 .nvmrc 기준)
AI 에이전트지원 목록 중 1개Claude Code + Opus 4.6
브라우저 MCPChrome/Playwright/Puppeteer 중 1개Chrome MCP (Claude Code 연동)
RAM8GB16GB+ (병렬 빌드 시)
저장 공간1GB (에셋 다운로드 포함)여유 있게
네트워크필수 (라이브 사이트 접근)안정적인 브로드밴드

8직접 해볼 수 있는 실습 과제

난이도별 실습 아이디어
CASE 01 · 입문

간단한 랜딩페이지 클론 ★☆☆☆☆

개인 포트폴리오나 간단한 랜딩페이지를 클론해보세요. 5단계 파이프라인이 실제로 어떻게 동작하는지 직접 관찰하고, docs/research/components/에 스펙 파일이 어떻게 생성되는지 확인합니다.

git clone https://github.com/JCodesMore/ai-website-cloner-template.git
cd ai-website-cloner-template && npm install
# Claude Code에서:
/clone-website https://example.com
CASE 02 · 초급

스펙 파일 직접 작성 ★★☆☆☆

Browser MCP 없이, 좋아하는 웹사이트의 네비게이션 바 하나를 수동으로 분석해서 스펙 파일을 작성해보세요. getComputedStyle() 접근법을 이해하고, 왜 정확한 CSS 값이 중요한지 체감합니다.

CASE 03 · 중급

sync-agent-rules.sh 분석 및 커스텀 ★★★☆☆

동기화 스크립트를 분석하고, 새로운 에이전트 플랫폼을 위한 출력을 추가해보세요. shell 스크립트에서 @file 임포트를 인라인으로 해결하는 패턴과 멀티 플랫폼 설정 관리를 배울 수 있습니다.

CASE 04 · 고급

복잡한 인터랙션 사이트 클론 ★★★★☆

스크롤 애니메이션, 탭 전환, 모달이 있는 SaaS 랜딩페이지를 클론해보세요. 멀티 스테이트 추출의 중요성과 인터랙션 모델 판별(스크롤 vs 클릭 vs 시간 기반)을 실전에서 익힙니다.

CASE 05 · 전문가

나만의 SKILL.md 만들기 ★★★★★

이 프로젝트의 구조를 참고해서, 완전히 다른 목적의 Claude Code 스킬을 만들어보세요. 예: /audit-accessibility(웹사이트 접근성 검사) 또는 /extract-api(사이트에서 API 엔드포인트를 역공학). SKILL.md 작성법과 멀티 에이전트 디스패치 패턴 설계를 마스터합니다.

9관련 기술 심화 학습 로드맵

주차별 학습 계획
주차학습 내용
1주차Next.js 16 App Router 공식 문서 읽기 · React 19 Server Components 개념 잡기 · TypeScript strict 모드 설정 연습 · npm run dev로 빈 템플릿 띄워보기
2주차Tailwind CSS v4 마이그레이션 가이드 읽기 · oklch 색상 공간 이해 · shadcn/ui 커스터마이징 · CVA로 컴포넌트 변형 만들기
3주차Claude Code CLAUDE.md / AGENTS.md 작성법 학습 · .claude/skills/에 커스텀 스킬 만들기 · Browser MCP로 웹페이지 분석 실습 · getComputedStyle() API 깊이 이해
4주차git worktree 개념과 실전 활용 · Claude Code의 Task 도구로 서브 에이전트 띄우기 · 스펙 기반 빌더 패턴 직접 설계 · 병렬 빌드 후 merge conflict 해결 전략
5주차실제 웹사이트 클론 (간단 → 복잡) · 클론 결과 QA 프로세스 · 나만의 스킬 파이프라인 설계 · 멀티 플랫폼 에이전트 설정 동기화 시스템 구축

10핵심 키워드 사전

자주 나오는 전문 용어 정리
키워드설명
Browser MCPModel Context Protocol을 통해 AI 에이전트가 브라우저를 직접 제어하는 도구. Chrome, Playwright, Puppeteer 연결 가능
getComputedStyle()브라우저 API. 엘리먼트에 실제 적용된 CSS 값을 반환. 클래스명이 아닌 계산된 최종 값을 가져오므로 정확한 클론에 필수
Design Token색상, 폰트, 간격 등 디자인 시스템의 기본 단위. CSS 변수로 관리. 이 프로젝트에서는 oklch 형식 사용
git worktree하나의 Git 저장소에서 여러 작업 디렉토리를 만드는 기능. 브랜치 전환 없이 여러 브랜치를 동시에 체크아웃 가능
AGENTS.mdAI 코딩 에이전트에게 프로젝트 규칙을 알려주는 파일. 이 프로젝트에서는 모든 에이전트 설정의 단일 소스
SKILL.mdClaude Code 스킬 정의 파일. 슬래시 명령어의 동작을 상세하게 기술
Spec File컴포넌트 빌드를 위한 상세 명세서. 정확한 CSS 값, 인터랙션 모델, 반응형 동작 포함
Interaction Sweep정찰 단계에서 수행하는 인터랙션 분석. 스크롤/클릭/호버를 모두 테스트하여 각 섹션의 동작 모델 파악
Visual QA Diff원본 사이트와 클론을 나란히 놓고 비교하는 품질 검증 단계. 1440px, 768px, 390px 뷰포트에서 수행
CVAClass Variance Authority. 컴포넌트의 변형(variant)과 크기(size)를 타입 안전하게 관리하는 라이브러리
App RouterNext.js 13+의 새 라우팅 시스템. src/app/ 디렉토리 기반, React Server Components 기본 사용
150줄 규칙스펙 파일이 150줄을 넘으면 섹션을 분할해야 한다는 복잡도 관리 원칙. 작은 작업이 완벽한 결과를 만든다
Radix Primitives접근성(a11y)이 내장된 헤드리스 UI 컴포넌트 라이브러리. shadcn/ui의 기반
바이브코딩AI 에이전트에게 자연어로 지시하면서 코드를 생성하는 개발 방식. 이 레포는 바이브코딩의 실전 템플릿

11참고 링크

더 깊이 공부하고 싶다면