| name | jikime-migration-smart-rebuild |
| description | AI-powered legacy site rebuilding workflow. Captures screenshots, analyzes source code, and generates modern frontend/backend code. Claude Code reads screenshots and writes actual code. Use when rebuilding legacy PHP, WordPress, or similar sites to Next.js, React, or other modern frameworks. |
| version | 2.0.0 |
| tags | ["migration","rebuild","legacy","screenshot","nextjs","react","spring-boot","page-by-page"] |
| triggers | {"keywords":["smart-rebuild","site-rebuild","legacy-rebuild","screenshot migration","rebuild site","PHP migration"],"phases":["plan","run"],"agents":["frontend","backend","manager-strategy"],"languages":["php","typescript","java"]} |
| progressive_disclosure | {"enabled":true,"level1_tokens":"~100","level2_tokens":"~3000"} |
| user-invocable | true |
| allowed-tools | ["Read","Write","Edit","Bash","Glob","Grep","Task","WebFetch"] |
Smart Rebuild
AI-powered legacy site rebuilding workflow
Overview
Smart Rebuild๋ ๋ ๊ฑฐ์ ์ฌ์ดํธ๋ฅผ ์๋ก ๊ตฌ์ถํ๋ AI ๊ธฐ๋ฐ ์ํฌํ๋ก์ฐ์
๋๋ค.
์ฒ ํ: "Rebuild, not Migrate" โ ์ฝ๋๋ฅผ ๋ณํํ์ง ์๊ณ , ์๋ก ๋ง๋ ๋ค.
| ๊ณ์ธต | ์ ๋ต |
|---|
| UI | ์คํฌ๋ฆฐ์ท ๊ธฐ๋ฐ ์๋ก ์์ฑ |
| API | ์์ค ์ฐธ๊ณ ํ์ฌ ํด๋ฆฐ ์ฝ๋๋ก |
| DB | ์ ์ง + ์ ์ง์ ๊ฐ์ |
Quick Reference
| Phase | ์ค๋ช
| ์ํ ์ฃผ์ฒด |
|---|
| Capture | ์ฌ์ดํธ ํฌ๋กค๋ง & ์คํฌ๋ฆฐ์ท | CLI (Playwright) |
| Analyze (Source) | ์์ค ๋ถ์ & ๋งคํ | CLI (AST Parser) |
| Analyze (UI) | ์คํฌ๋ฆฐ์ท/HTML ๋ถ์ | Claude Code (๋น์ ) |
| Generate | ์ฝ๋ ์์ฑ | Claude Code (์ง์ ์์ฑ) |
ํต์ฌ: CLI๋ ์บก์ฒ์ ์์ค ๋ถ์๋ง ๋ด๋นํ๊ณ , Claude Code๊ฐ ์คํฌ๋ฆฐ์ท์ ๋ณด๊ณ ์ง์ ํ๋ก ํธ์๋ ์ฝ๋๋ฅผ ์์ฑํฉ๋๋ค.
Page-by-Page Processing (CRITICAL)
Smart Rebuild๋ ํ์ด์ง๋ณ ๋จ๊ณ ์ฒ๋ฆฌ ๋ฐฉ์์ ์ฌ์ฉํฉ๋๋ค:
๋ชจ๋ ํ์ด์ง๋ฅผ ํ ๋ฒ์ ์ฒ๋ฆฌ โ
ํ ํ์ด์ง์ฉ ์์ ํ ์๋ฃ ํ ๋ค์ ํ์ด์ง โ
์ฅ์
| ํญ๋ชฉ | ์ค๋ช
|
|---|
| ํ์ง ํฅ์ | ํ ํ์ด์ง์ฉ ์ง์คํด์ ์์ฑ๋ ๋์ |
| ํผ๋๋ฐฑ ๋ฃจํ | ํ์ด์ง๋ณ๋ก ๋ฆฌ๋ทฐ โ ์์ โ ํ์ |
| ํ์ต ํจ๊ณผ | Page 1์์ ๋ฐฐ์ด ํจํด์ Page 2์ ์ ์ฉ |
| ์ปจํ
์คํธ ๊ด๋ฆฌ | Claude Code ์ปจํ
์คํธ ํจ์จ์ ์ฌ์ฉ |
| ์ค๋จ/์ฌ๊ฐ | ์ธ์ ๋ ๋ฉ์ถ๊ณ ๋ค์์ ์ด์ด์ ๊ฐ๋ฅ |
ํ์ด์ง ์ํ ์ถ์
sitemap.json์์ ๊ฐ ํ์ด์ง์ ์ํ๋ฅผ ์ถ์ ํฉ๋๋ค:
| Status | Description |
|---|
pending | ์์ง ์ฒ๋ฆฌ๋์ง ์์ |
in_progress | ํ์ฌ ์ฒ๋ฆฌ ์ค |
completed | ์ฒ๋ฆฌ ์๋ฃ |
skipped | ๊ฑด๋๋ (์ค๋ณต, ์ ์ธ ๋ฑ) |
์ฌ์ฉ ์์
/jikime:smart-rebuild generate frontend --page 1
/jikime:smart-rebuild generate frontend --next
/jikime:smart-rebuild generate frontend --page 1-5
/jikime:smart-rebuild generate frontend --status
Target Framework Skills
์ฝ๋ ์์ฑ ์ ํ๊ฒ ํ๋ ์์ํฌ์ ๋ง๋ Skill์ ๋ฐ๋์ ๋ก๋ํฉ๋๋ค:
Frontend Skills
| Target | Skill | ํ๋ก์ ํธ ์ด๊ธฐํ (Claude Code ์ง์ ์ํ) |
|---|
nextjs16 | jikime-framework-nextjs@16 | npx create-next-app@latest --typescript --tailwind --app |
nextjs15 | jikime-framework-nextjs@15 | npx create-next-app@latest --typescript --tailwind --app |
react | jikime-domain-frontend | Vite |
CRITICAL: ํ๋ก์ ํธ ์ด๊ธฐํ๋ ์คํฌ๋ฆฝํธ๊ฐ ์๋ Claude Code๊ฐ ์ง์ ์ํํฉ๋๋ค.
create-next-app์ด ์ฌ๋ฐ๋ฅธ ์์กด์ฑ๊ณผ ์ค์ ์ ์๋์ผ๋ก ์์ฑํฉ๋๋ค.
UI Library Skills (CRITICAL for modernization)
--ui-library ์ต์
์ ๋ฐ๋ผ UI ์คํฌ์ ๋ก๋ํฉ๋๋ค:
| --ui-library | Skill | ์ปดํฌ๋ํธ ๋ณํ | ์ด๊ธฐํ ๋ช
๋ น |
|---|
shadcn (๊ธฐ๋ณธ๊ฐ) | jikime-library-shadcn | ๋ ๊ฑฐ์ HTML โ shadcn ์ปดํฌ๋ํธ | npx shadcn@latest init โ add button card... |
legacy-css | (์์) | ๋ ๊ฑฐ์ CSS ๋ณต์ฌ (๋น๊ถ์ฅ) | (์์) |
CRITICAL: Claude Code๋ ์ค์ค๋ก ๋ค์์ ์ธ์งํด์ผ ํฉ๋๋ค:
- Next.js ํ๋ก์ ํธ๋ฉด ๋ฐ๋์ shadcn ์ด๊ธฐํ (์คํฌ๋ฆฝํธ ๊ฒฐ๊ณผ์ ๋ฌด๊ดํ๊ฒ!)
jikime-library-shadcn ์คํฌ ๋ก๋ํ์ฌ ์ปดํฌ๋ํธ ๋ณํ ํจํด ํ์ต
npx shadcn@latest init --defaults ์คํ (๊ธฐ์กด ํ์ผ ๋ฎ์ด์ฐ๊ธฐ ํ์ฉ)
- ๋ ๊ฑฐ์
<button class="btn"> โ <Button variant="default"> ๋ณํ
- ๋ ๊ฑฐ์ CSS ๋ณต์ฌ ๊ธ์ง - shadcn ํ
๋ง ์์คํ
์ฌ์ฉ
๋ ๊ฑฐ์ โ shadcn ์ปดํฌ๋ํธ ๋งคํ (์คํฌ์์ ์ ๊ณต):
| Legacy HTML | shadcn Component |
|---|
<button class="btn btn-primary"> | <Button variant="default"> |
<input class="form-control"> | <Input /> |
<div class="card"> | <Card> + <CardHeader> + <CardContent> |
<div class="modal"> | <Dialog> + <DialogContent> |
<table class="table"> | <Table> + <TableHeader> + <TableBody> |
Backend Skills
| Target | Skill | ์ค๋ช
|
|---|
java | jikime-lang-java | Spring Boot 3.3 |
go | jikime-lang-go | Fiber/Echo |
python | jikime-lang-python | FastAPI |
File Naming Convention (CRITICAL)
์์ฑ๋๋ ๋ชจ๋ ํ์ผ์ kebab-case๋ฅผ ์ฌ์ฉํฉ๋๋ค:
| ํ์ผ ์ ํ | ๊ท์น | ์์ |
|---|
| ํ์ด์ง/๋ผ์ฐํธ | kebab-case | about-us/page.tsx |
| ์ปดํฌ๋ํธ | kebab-case | header-nav.tsx |
| ์ ํธ๋ฆฌํฐ | kebab-case | format-date.ts |
Usage
/jikime:smart-rebuild https://example.com --source=./legacy-php --output=./rebuild-output --target=nextjs16
/jikime:smart-rebuild capture https://example.com --output=./rebuild-output/capture
/jikime:smart-rebuild analyze --source=./legacy-php --capture=./rebuild-output/capture --output=./rebuild-output/mapping.json
/jikime:smart-rebuild generate frontend --mapping=./rebuild-output/mapping.json --output=./rebuild-output/frontend --target=nextjs16
์ฃผ์ ์ต์
| ์ต์
| ์ค๋ช
| ๊ธฐ๋ณธ๊ฐ |
|---|
--source | ๋ ๊ฑฐ์ ์์ค ์ฝ๋ ๊ฒฝ๋ก | (ํ์) |
--output | ์ถ๋ ฅ ๋๋ ํ ๋ฆฌ | ./smart-rebuild-output |
--target | ํ๊ฒ ํ๋ก ํธ์๋ ํ๋ ์์ํฌ | nextjs16 |
--target-backend | ํ๊ฒ ๋ฐฑ์๋ ํ๋ ์์ํฌ | java |
--capture | ์บก์ฒ ๋๋ ํ ๋ฆฌ (analyze ์) | {output}/capture |
--mapping | ๋งคํ ํ์ผ ๊ฒฝ๋ก (generate ์) | {output}/mapping.json |
Workflow Architecture
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Claude Code (ํต์ฌ Intelligence) โ
โ โ
โ Step 0: Target Framework Skill ๋ก๋ โ
โ โ Skill("jikime-framework-nextjs@16") ๋๋ ํด๋น Skill โ
โ โ
โ Phase 2b: ์คํฌ๋ฆฐ์ท/HTML ๋ถ์ (๋น์ ๊ธฐ๋ฅ) โ
โ โ ์คํฌ๋ฆฐ์ท Read โ ๋ ์ด์์, ์์, ์ปดํฌ๋ํธ ๋ถ์ โ
โ โ mapping.json์ ui_analysis ์ ์ฅ โ
โ โ
โ Phase 3: ํ๋ก ํธ์๋ ์ฝ๋ ์ง์ ์์ฑ โ
โ โ ์คํฌ๋ฆฐ์ท์ ๋ณด๊ณ ์ค์ UI ์ฌํํ๋ ์ฝ๋ ์์ฑ โ
โ โ ๋ก๋๋ Skill ํจํด์ ๋ฐ๋ผ ํ๋ ์์ํฌ ์ปจ๋ฒค์
์ค์ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ โ
โผ โผ
โโโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโ
โ Phase 1: Capture โ โ Phase 2a: Analyze โ
โ (CLI - Playwright)โ โ (CLI - Parser) โ
โ โ โ โ
โ โข ์คํฌ๋ฆฐ์ท ์บก์ฒ โ โ โข ์์ค ์ฝ๋ ๋ถ์ โ
โ โข HTML ์ ์ฅ โ โ โข ์ ์ /๋์ ๋ถ๋ฅ โ
โ โข ์ธ์
๊ด๋ฆฌ โ โ โข SQL ์ถ์ถ โ
โโโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโ
ํต์ฌ ์์น:
- CLI๋ ๋๊ตฌ ์ญํ (์บก์ฒ, ํ์ฑ)
- Claude Code๋ ๋๋ ์ญํ (๋ถ์, ์ฝ๋ ์์ฑ)
- Skill์ ์ง์ ์ญํ (ํ๋ ์์ํฌ ํจํด, ์ปจ๋ฒค์
)
2-Track Strategy
Track 1: Static Content
๋ผ์ด๋ธ ์ฌ์ดํธ โ Playwright ์คํฌ๋ํ โ ํ๊ฒ ํ๋ ์์ํฌ ์ ์ ํ์ด์ง
- ์๊ฐ, About, FAQ, ์ด์ฉ์ฝ๊ด ๋ฑ
Track 2: Dynamic Content
์์ค ๋ถ์ โ SQL ์ถ์ถ โ Backend API โ ํ๊ฒ ํ๋ ์์ํฌ ๋์ ํ์ด์ง
- ํ์ ๋ชฉ๋ก, ๊ฒฐ์ ๋ด์ญ, ๊ฒ์ํ ๋ฑ
Files
| File | Purpose |
|---|
rules/overview.md | ์ ์ฒด ์ํฌํ๋ก์ฐ ๊ฐ์ด๋ |
rules/phase-1-capture.md | ์บก์ฒ ๋จ๊ณ ์์ธ |
rules/phase-2-analyze.md | ๋ถ์ & ๋งคํ ๋จ๊ณ |
rules/phase-3-generate.md | ์ฝ๋ ์์ฑ ๋จ๊ณ |
rules/troubleshooting.md | ๋ฌธ์ ํด๊ฒฐ ๊ฐ์ด๋ |
rules/execution.md | Smart Rebuild ์คํ ๊ฐ์ด๋ (๋ฉ์ธ) |
rules/execution-capture.md | Phase 1: Capture ์์ธ ์คํ ์ ์ฐจ |
rules/execution-analyze.md | Phase 2: Analyze ์์ธ ์คํ ์ ์ฐจ |
rules/execution-backend.md | Phase G: Backend ์์ธ ์คํ ์ ์ฐจ |
rules/reference.md | ์ฌ์ฉ๋ฒ, ์ต์
, ์ง์ ํ๋ ์์ํฌ ์ฐธ์กฐ |
scripts/ | CLI ๋๊ตฌ |
Related
/jikime:smart-rebuild - Smart Rebuild ๋ช
๋ น์ด
jikime-framework-nextjs@16 - Next.js 16 ํจํด
jikime-lang-java - Spring Boot ํจํด
- F.R.I.D.A.Y. ๋ง์ด๊ทธ๋ ์ด์
์ค์ผ์คํธ๋ ์ดํฐ