3๋ถ€. ์ง์ ‘ ๋งŒ๋“ค์–ด๋ณด๊ธฐ

๐Ÿ† [๋„์ „ ๊ณผ์ œ] ๊ณ ๊ธ‰ ์›Œํฌํ”Œ๋กœ์šฐ ์ข…ํ•ฉ ์‹ค์Šต

์ด ์žฅ์€ ์ˆ˜์—…์—์„œ ๋‹ค๋ฃจ์ง€ ์•Š๋Š” ๋„์ „ ๊ณผ์ œ์ž…๋‹ˆ๋‹ค

๊ฐ•์˜ ์‹œ๊ฐ„์—๋Š” ์ง„ํ–‰ํ•˜์ง€ ์•Š์œผ๋ฉฐ, ๊ด€์‹ฌ ์žˆ๋Š” ์ˆ˜๊ฐ•์ƒ์ด ์Šค์Šค๋กœ ๋„์ „ํ•ด ๋ณด๋„๋ก ๋งˆ๋ จํ•œ ์‹ฌํ™” ๊ณผ์ œ๋‹ค. ์•ž์„  ๋‚ด์šฉ์„ ์ถฉ๋ถ„ํžˆ ์ตํžŒ ๋’ค ๊ฐœ์ธ ํ•™์Šต์šฉ์œผ๋กœ ์ง„ํ–‰ํ•˜๋Š” ๊ฒƒ์„ ๊ถŒ์žฅํ•œ๋‹ค.

๊ฐ€์žฅ ๊ธฐ๋ณธ์ ์ธ ์•ฑ๋ถ€ํ„ฐ ์‹œ์ž‘ํ•ด, MCPยท์„œ๋ธŒ์—์ด์ „ํŠธยท์ปค์Šคํ…€ ์ปค๋งจ๋“œยทํ›…ยท์Šคํ‚ฌ๊นŒ์ง€ ๋‹จ๊ณ„์ ์œผ๋กœ ์Œ“์•„ ์˜ฌ๋ฆฌ๋Š” ๋ณธ๊ฒฉ ๊ฐœ๋ฐœ ์›Œํฌํ”Œ๋กœ์šฐ

์•ž์˜ ์‹ค์ „ 1ยท2๊ฐ€ "์•ฑ์„ ๋งŒ๋“ ๋‹ค"์— ์ง‘์ค‘ํ–ˆ๋‹ค๋ฉด, ์ด ์žฅ์˜ ์ฃผ์ธ๊ณต์€ ์•ฑ์ด ์•„๋‹ˆ๋ผ ์›Œํฌํ”Œ๋กœ์šฐ๋‹ค. ํ”Œ๋ž˜์‹œ์นด๋“œ(๋‹จ์–ด์žฅ) ํ•™์Šต ์•ฑ์„ ํ•˜๋‚˜์˜ ๊ทธ๋ฆ‡์œผ๋กœ ์‚ผ์•„, ์‰ฌ์šด ๊ฐœ๋ฐœ์—์„œ ์‹œ์ž‘ํ•ด Claude Code์˜ ๊ณ ๊ธ‰ ๊ธฐ๋Šฅ์„ ํ•œ ๋‹จ๊ณ„์”ฉ ์–น์–ด๊ฐ€๋ฉฐ ์ตํžŒ๋‹ค.

์„ ํ–‰ ํ•™์Šต

์ด ์žฅ์€ Part 6. MCP, Part 7. ๋ฐ”์ด๋ธŒ ์ฝ”๋”ฉ & Claude Code, Claude Code ์‹ค์ „ ํ™œ์šฉ์„ ๋จผ์ € ๋ณธ ๋’ค ์ง„ํ–‰ํ•˜๋Š” ๊ฒƒ์„ ๊ถŒ์žฅํ•œ๋‹ค.


Stage 0. ์˜ค๋ฆฌ์—”ํ…Œ์ด์…˜

๋ฌด์—‡์„ ๋งŒ๋“œ๋‚˜ โ€” ํ”Œ๋ž˜์‹œ์นด๋“œ ํ•™์Šต ์•ฑ

์˜์–ด ๋‹จ์–ด์ฒ˜๋Ÿผ ์•ž๋ฉด(์งˆ๋ฌธ) / ๋’ท๋ฉด(์ •๋‹ต)์œผ๋กœ ์™ธ์šฐ๋Š” ์นด๋“œ ํ•™์Šต ์•ฑ์ด๋‹ค. ๊ธฐ๋Šฅ์ด ์„œ๋กœ ๋…๋ฆฝ์ ์ด๋ผ(๋ฑ ๊ด€๋ฆฌยทํ€ด์ฆˆยทํ†ต๊ณ„ยท๊ฐ€์ ธ์˜ค๊ธฐ), ๋’ค์—์„œ ๋ณ‘๋ ฌ ๊ฐœ๋ฐœ๊ณผ ์„œ๋ธŒ์—์ด์ „ํŠธ ๋ถ„๋‹ด์„ ์‹ค์Šตํ•˜๊ธฐ์— ๋”ฑ ์ข‹๋‹ค.

๋ฌด์—‡์„ ๋ฐฐ์šฐ๋‚˜ โ€” ๋‹จ๊ณ„๋ณ„ ๋กœ๋“œ๋งต

flowchart TB
    S1[Stage 1<br/>๊ธฐ๋ณธ ์•ฑ] --> S2[Stage 2<br/>MCP ๋ถ€์ฐฉ]
    S2 --> S3[Stage 3<br/>์š”๊ตฌ์‚ฌํ•ญโ†’ํƒœ์Šคํฌ ๊ด€๋ฆฌ]
    S3 --> S4[Stage 4<br/>๋ณ‘๋ ฌยท์„œ๋ธŒ์—์ด์ „ํŠธ]
    S4 --> S5[Stage 5<br/>์ปค์Šคํ…€ ์ปค๋งจ๋“œยทํ›…]
    S5 --> S6[Stage 6<br/>์Šคํ‚ฌ]
    S6 --> S7[Stage 7<br/>์›Œํฌํ”Œ๋กœ์šฐ ์ข…ํ•ฉ]
    style S1 fill:#e3f2fd
    style S2 fill:#e8f5e9
    style S3 fill:#fff3e0
    style S4 fill:#f3e5f5
    style S5 fill:#fce4ec
    style S6 fill:#e0f7fa
    style S7 fill:#ede7f6

๋‹จ๊ณ„

ํ•ต์‹ฌ ๊ธฐ์ˆ 

ํ•œ ์ค„ ๋ชฉํ‘œ

1

๊ธฐ๋ณธ ๋ฐ”์ด๋ธŒ ์ฝ”๋”ฉ

PRD ํ•œ ์žฅ์œผ๋กœ ๋™์ž‘ํ•˜๋Š” ์•ฑ ๋งŒ๋“ค๊ธฐ

2

MCP

๊ฐœ๋ฐœ์„ ๋•๋Š” ์™ธ๋ถ€ ๋„๊ตฌ ๋‹จ๊ณ„์ ์œผ๋กœ ์—ฐ๊ฒฐ

3

ํƒœ์Šคํฌ ๊ด€๋ฆฌ

ํฐ ์š”๊ตฌ์‚ฌํ•ญ์„ ์ž‘์—…์œผ๋กœ ์ชผ๊ฐœ ์ถ”์ 

4

์„œ๋ธŒ์—์ด์ „ํŠธยท๋ณ‘๋ ฌ

๋…๋ฆฝ ๊ธฐ๋Šฅ์„ ๋ถ„๋‹ดํ•ด ๋™์‹œ์— ๊ฐœ๋ฐœ

5

์ปค์Šคํ…€ ์ปค๋งจ๋“œยทํ›…

๋ฐ˜๋ณต ์ž‘์—…ยท๊ฒ€์ฆ ์ž๋™ํ™”

6

์Šคํ‚ฌ

์žฌ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ์ „๋ฌธ ๋Šฅ๋ ฅ ์žฅ์ฐฉ

7

์ข…ํ•ฉ

๋‚˜๋งŒ์˜ ํ‘œ์ค€ ๊ฐœ๋ฐœ ๋ฃจํ”„ ์ •๋ฆฝ


Stage 1. ๊ธฐ๋ณธ ์•ฑ ๋งŒ๋“ค๊ธฐ

๊ฐ€์žฅ ๋จผ์ €, ๋”ฑ ๋™์ž‘ํ•˜๋Š” ์ตœ์†Œ ๋ฒ„์ „์„ ๋งŒ๋“ ๋‹ค. ์š•์‹ฌ๋‚ด์ง€ ์•Š๋Š”๋‹ค.

PRD ํ•œ ์žฅ

PRD.md:

# ์ œํ’ˆ: ๋ฏธ๋‹ˆ ํ”Œ๋ž˜์‹œ์นด๋“œ

## ๋ชฉ์ 
- ์™ธ์šฐ๊ณ  ์‹ถ์€ ๋‚ด์šฉ์„ ์นด๋“œ(์•ž๋ฉด/๋’ท๋ฉด)๋กœ ๋งŒ๋“ค์–ด ํ•™์Šต

## ํ•ต์‹ฌ ๊ธฐ๋Šฅ (v1)
- ์นด๋“œ ์ถ”๊ฐ€: ์•ž๋ฉด(์งˆ๋ฌธ) + ๋’ท๋ฉด(์ •๋‹ต) ์ž…๋ ฅ
- ์นด๋“œ ๋ชฉ๋ก ๋ณด๊ธฐ
- ์นด๋“œ ํด๋ฆญ ์‹œ ๋’ค์ง‘๊ธฐ(์•žโ†”๋’ค)
- ์นด๋“œ ์‚ญ์ œ

## ๊ธฐ์ˆ  ์Šคํƒ
- HTML + CSS + Vanilla JavaScript
- ์ €์žฅ: localStorage

## ํ™”๋ฉด
- ์ƒ๋‹จ: ์•ž๋ฉด/๋’ท๋ฉด ์ž…๋ ฅ์นธ + "์ถ”๊ฐ€" ๋ฒ„ํŠผ
- ๋ณธ๋ฌธ: ์นด๋“œ ๊ทธ๋ฆฌ๋“œ (ํด๋ฆญํ•˜๋ฉด ๋’ค์ง‘ํž˜)

ํ•œ ์ค„ ํ”„๋กฌํ”„ํŠธ โ†’ ํ˜‘์—… ๋ฃจํ”„

@PRD.md ๋ฅผ ์ฝ๊ณ , ๋ช…์„ธ๋Œ€๋กœ ๋‹จ์ผ HTML ํŒŒ์ผ ํ”Œ๋ž˜์‹œ์นด๋“œ ์•ฑ์„ ๋งŒ๋“ค์–ด์ค˜.
์นด๋“œ ๋’ค์ง‘๊ธฐ๋Š” ๋ถ€๋“œ๋Ÿฌ์šด 3D ํ”Œ๋ฆฝ ์• ๋‹ˆ๋ฉ”์ด์…˜์œผ๋กœ, ์Šคํƒ€์ผ์€ ๊น”๋”ํ•˜๊ฒŒ.

์ฒ˜์Œ ๊ฒฐ๊ณผ๊ฐ€ ์™„๋ฒฝํ•˜์ง€ ์•Š์œผ๋ฉด Part 7์˜ ํ˜‘์—… ๋ฃจํ”„๋กœ ์ž‘๊ฒŒ ๋‹ค๋“ฌ๋Š”๋‹ค.

Stage 1 ์ฒดํฌํฌ์ธํŠธ

  • ์นด๋“œ ์ถ”๊ฐ€ยท๋’ค์ง‘๊ธฐยท์‚ญ์ œ๊ฐ€ ์‹ค์ œ๋กœ ๋™์ž‘

  • git init ํ›„ ์ฒซ ์ปค๋ฐ‹ โ€” ์ด์ œ๋ถ€ํ„ฐ ๋ชจ๋“  ์‹คํ—˜์€ ๋˜๋Œ๋ฆด ์ˆ˜ ์žˆ๋‹ค


Stage 2. MCP ๋‹จ๊ณ„์ ์œผ๋กœ ๋ถ™์ด๊ธฐ

์—ฌ๊ธฐ์„œ MCP๋Š”?

MCP๋Š” ์•ฑ ์•ˆ์— ๋„ฃ๋Š” ๊ธฐ๋Šฅ์ด ์•„๋‹ˆ๋ผ, ๊ฐœ๋ฐœํ•˜๋Š” ๋™์•ˆ Claude Code๋ฅผ ๋” ๋˜‘๋˜‘ํ•˜๊ฒŒ ๋งŒ๋“œ๋Š” ์™ธ๋ถ€ ๋„๊ตฌ๋‹ค. ํ•œ ๋ฒˆ์— ๋‹ค ๋ถ™์ด์ง€ ๋ง๊ณ  ํ•„์š”ํ•ด์งˆ ๋•Œ ํ•˜๋‚˜์”ฉ ์ถ”๊ฐ€ํ•œ๋‹ค.

2-1. Context7 โ€” ์ตœ์‹  ๋ฌธ์„œ๋ฅผ ๋ณด๋ฉฐ ๊ฐœ๋ฐœ

claude mcp add context7 -- npx -y @upstash/context7-mcp

ํ™œ์šฉ

"flip ์• ๋‹ˆ๋ฉ”์ด์…˜์„ CSS ์ตœ์‹  ๋ฌธ๋ฒ•์œผ๋กœ ๊ฐœ์„ ํ•˜๊ณ  ์‹ถ์–ด. context7๋กœ ์ตœ์‹  ๋ฌธ์„œ ํ™•์ธํ•˜๊ณ  ์ ์šฉํ•ด์ค˜."

2-2. Playwright โ€” ๋ธŒ๋ผ์šฐ์ €์—์„œ ๋™์ž‘ ์ž๋™ ๊ฒ€์ฆ

claude mcp add playwright -- npx -y @playwright/mcp

ํ™œ์šฉ

"playwright๋กœ ์•ฑ์„ ์—ด์–ด์„œ ์นด๋“œ๋ฅผ ์ถ”๊ฐ€ํ•˜๊ณ  ๋’ค์ง‘๊ธฐ๊ฐ€ ๋™์ž‘ํ•˜๋Š”์ง€ ์ง์ ‘ ํ™•์ธํ•ด์ค˜." โ†’ AI๊ฐ€ ์‹ค์ œ ๋ธŒ๋ผ์šฐ์ €๋ฅผ ๋„์›Œ ํด๋ฆญยท๊ฒ€์ฆํ•œ๋‹ค.

2-3. GitHub โ€” ์ €์žฅ์†Œยท์ด์Šˆ ๊ด€๋ฆฌ

claude mcp add --transport http github https://api.githubcopilot.com/mcp/ -H "Authorization: Bearer <GitHub PAT>"

<GitHub PAT> ์ž๋ฆฌ์—๋Š” GitHub Settings โ†’ Developer settings โ†’ Personal access tokens์—์„œ ๋ฐœ๊ธ‰ํ•œ ํ† ํฐ์„ ๋„ฃ๋Š”๋‹ค. (์˜ˆ์ „ @modelcontextprotocol/server-github ํŒจํ‚ค์ง€๋Š” ์ง€์› ์ค‘๋‹จ๋˜์–ด GitHub ๊ณต์‹ ์›๊ฒฉ MCP๋กœ ๋Œ€์ฒด๋๋‹ค.)

ํ™œ์šฉ

"์ง€๊ธˆ๊นŒ์ง€ ๋งŒ๋“  ๊ฑธ GitHub ์ €์žฅ์†Œ์— ์˜ฌ๋ฆฌ๊ณ , ์•ž์œผ๋กœ ๋งŒ๋“ค ๊ธฐ๋Šฅ 3๊ฐœ๋ฅผ ์ด์Šˆ๋กœ ๋“ฑ๋กํ•ด์ค˜."

์—ฐ๊ฒฐ๋œ MCP๋Š” /mcp๋กœ ์ƒํƒœ๋ฅผ ํ™•์ธํ•œ๋‹ค.

๋‹จ๊ณ„์  ๋ถ€์ฐฉ์˜ ์ด์œ 

MCP๋ฅผ ํ•œ๊บผ๋ฒˆ์— ๋ถ™์ด๋ฉด ์ปจํ…์ŠคํŠธ๋งŒ ์ฐจ์ง€ํ•˜๊ณ  ํ—ท๊ฐˆ๋ฆฐ๋‹ค. "๋ฌธ์„œ๊ฐ€ ํ•„์š”ํ•˜๋‹ค โ†’ Context7", "ํ…Œ์ŠคํŠธ๊ฐ€ ํ•„์š”ํ•˜๋‹ค โ†’ Playwright"์ฒ˜๋Ÿผ ํ•„์š”๊ฐ€ ์ƒ๊ธด ์ˆœ๊ฐ„ ๋ถ™์ด๋Š” ๊ฒŒ ์ข‹๋‹ค.


Stage 3. ์š”๊ตฌ์‚ฌํ•ญ โ†’ ํƒœ์Šคํฌ ๊ด€๋ฆฌ & TODO ๋ฆฌ์ŠคํŠธ

์ด์ œ ํ•œ ๋ฒˆ์— ๋๋‚ผ ์ˆ˜ ์—†๋Š” ํฐ ์š”๊ตฌ์‚ฌํ•ญ์„ ๋˜์ง„๋‹ค.

์ƒˆ ์š”๊ตฌ์‚ฌํ•ญ (v2)

  1. ํ€ด์ฆˆ ๋ชจ๋“œ: ์นด๋“œ๋ฅผ ๋ฌด์ž‘์œ„๋กœ ๋ณด์—ฌ์ฃผ๊ณ  ์ •๋‹ต ๋งžํžˆ๊ธฐ, ์ ์ˆ˜ ํ‘œ์‹œ

  2. ํ•™์Šต ํ†ต๊ณ„: ๋ฑ๋ณ„ ์ •๋‹ต๋ฅ ยทํ•™์Šต ํšŸ์ˆ˜ ๋Œ€์‹œ๋ณด๋“œ

  3. ๊ฐ€์ ธ์˜ค๊ธฐ/๋‚ด๋ณด๋‚ด๊ธฐ: CSV๋กœ ์นด๋“œ ์ผ๊ด„ ์ถ”๊ฐ€ยท๋ฐฑ์—…

ํ”Œ๋žœ ๋ชจ๋“œ๋กœ ๋จผ์ € ๊ณ„ํš

Shift + Tab์œผ๋กœ ํ”Œ๋žœ ๋ชจ๋“œ ์ง„์ž… ํ›„:

์œ„ 3๊ฐ€์ง€ ์š”๊ตฌ์‚ฌํ•ญ์„ ๊ตฌํ˜„ํ•  ๊ณ„ํš์„ ์„ธ์›Œ์ค˜. ์•„์ง ์ฝ”๋“œ๋Š” ์ž‘์„ฑํ•˜์ง€ ๋งˆ.
๊ฐ ๊ธฐ๋Šฅ์„ ๋…๋ฆฝ์ ์ธ ์ž‘์—… ๋‹จ์œ„๋กœ ์ชผ๊ฐœ์„œ TODO ๋ฆฌ์ŠคํŠธ๋กœ ์ •๋ฆฌํ•ด์ค˜.

์ž‘์—… ๋ถ„ํ•ด โ†’ TODO ๋ฆฌ์ŠคํŠธ๋กœ ์ถ”์ 

AI๋Š” ํฐ ์š”๊ตฌ์‚ฌํ•ญ์„ ์ž‘์€ ์ž‘์—… ๋ชฉ๋ก์œผ๋กœ ๋ถ„ํ•ดํ•˜๊ณ , ์ง„ํ–‰ํ•˜๋ฉด์„œ ํ•˜๋‚˜์”ฉ ์ฒดํฌํ•ด ๋‚˜๊ฐ„๋‹ค. ์ง„ํ–‰ ์ƒํ™ฉ์€ Ctrl + T(์ž‘์—… ๋ชฉ๋ก)์œผ๋กœ ์–ธ์ œ๋“  ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

flowchart LR
    R[ํฐ ์š”๊ตฌ์‚ฌํ•ญ<br/>3๊ฐ€์ง€] --> P[ํ”Œ๋žœ ๋ชจ๋“œ<br/>๊ณ„ํš ์ˆ˜๋ฆฝ]
    P --> T["TODO ๋ฆฌ์ŠคํŠธ<br/>โ–ก ํ€ด์ฆˆ ๋ชจ๋“œ<br/>โ–ก ํ†ต๊ณ„ ๋Œ€์‹œ๋ณด๋“œ<br/>โ–ก CSV ๊ฐ€์ ธ์˜ค๊ธฐ"]
    T --> D[ํ•˜๋‚˜์”ฉ ๊ตฌํ˜„<br/>โ†’ ๊ฒ€์ฆ โ†’ ์ฒดํฌ]
    D -->|๋ฐ˜๋ณต| T
    style R fill:#fff3e0
    style P fill:#f3e5f5
    style T fill:#e3f2fd
    style D fill:#e8f5e9

ํ•œ ๋ฒˆ์— ํ•˜๋‚˜์”ฉ

๊ณ„ํš์„ ์Šน์ธํ•œ ๋’ค์—๋Š” ์ž‘์—… ํ•˜๋‚˜๋ฅผ ๋๋‚ด๊ณ  ๊ฒ€์ฆ โ†’ ๋‹ค์Œ ์ž‘์—…์œผ๋กœ ๋„˜์–ด๊ฐ„๋‹ค. AI๊ฐ€ ์—ฌ๋Ÿฌ ๊ฐœ๋ฅผ ๋™์‹œ์— ๊ฑด๋“œ๋ฆฌ๋‹ค ๊ธธ์„ ์žƒ์ง€ ์•Š๊ฒŒ ํ•œ๋‹ค. (๋‹ค์Œ Stage์—์„œ ์˜๋„์ ์œผ๋กœ ๋ณ‘๋ ฌํ™”ํ•  ๋•Œ์™€ ๊ตฌ๋ถ„!)


Stage 4. ๋ณ‘๋ ฌ ์ฒ˜๋ฆฌ & ์„œ๋ธŒ์—์ด์ „ํŠธ

Stage 3์—์„œ ์ชผ๊ฐ  ์„ธ ๊ธฐ๋Šฅ์€ ์„œ๋กœ ๋…๋ฆฝ์ ์ด๋‹ค. ์ด๋Ÿฐ ์ž‘์—…์€ ์„œ๋ธŒ์—์ด์ „ํŠธ๋กœ ๋ถ„๋‹ดํ•ด ๋™์‹œ์— ์ง„ํ–‰ํ•˜๋ฉด ๋น ๋ฅด๋‹ค.

์„œ๋ธŒ์—์ด์ „ํŠธ๋ž€

"ํŠน์ • ์ž‘์—…์— ํŠนํ™”๋œ, ๋…๋ฆฝ๋œ ์ปจํ…์ŠคํŠธ๋ฅผ ๊ฐ€์ง„ AI ์ธ์Šคํ„ด์Šค" (๊ฐœ๋…์€ Part 7-9 ์ฐธ๊ณ )

์ „์šฉ ์„œ๋ธŒ์—์ด์ „ํŠธ ์ •์˜ (์„ ํƒ)

.claude/agents/ ์•„๋ž˜์— ์—ญํ• ๋ณ„ ์—์ด์ „ํŠธ๋ฅผ ์ •์˜ํ•  ์ˆ˜ ์žˆ๋‹ค.

---
name: feature-builder
description: ๋ช…์„ธ๋ฅผ ๋ฐ›์•„ ๋…๋ฆฝ ๊ธฐ๋Šฅ ํ•˜๋‚˜๋ฅผ ๊ตฌํ˜„ํ•˜๋Š” ๊ฐœ๋ฐœ์ž
tools: Read, Write, Edit, Bash
model: sonnet
---

๋‹น์‹ ์€ ํ”„๋ŸฐํŠธ์—”๋“œ ๊ฐœ๋ฐœ์ž์ž…๋‹ˆ๋‹ค. ์ฃผ์–ด์ง„ ๊ธฐ๋Šฅ ๋ช…์„ธ ํ•˜๋‚˜๋ฅผ ๋ฐ›์•„,
๊ธฐ์กด ์ฝ”๋“œ ์Šคํƒ€์ผ์— ๋งž์ถฐ ๊ตฌํ˜„ํ•˜๊ณ  ๋™์ž‘์„ ํ™•์ธํ•œ ๋’ค ๊ฒฐ๊ณผ๋ฅผ ๋ณด๊ณ ํ•˜์„ธ์š”.

๋ณ‘๋ ฌ๋กœ ๋ถ„๋‹ด์‹œํ‚ค๊ธฐ

ํ€ด์ฆˆ ๋ชจ๋“œ / ํ†ต๊ณ„ ๋Œ€์‹œ๋ณด๋“œ / CSV ๊ฐ€์ ธ์˜ค๊ธฐ โ€” ์ด ์„ธ ๊ธฐ๋Šฅ์€ ์„œ๋กœ ๋…๋ฆฝ์ ์ด์•ผ.
๊ฐ๊ฐ ๋ณ„๋„์˜ ์„œ๋ธŒ์—์ด์ „ํŠธ๋กœ ๋ณ‘๋ ฌ๋กœ ๊ตฌํ˜„ํ•ด์ค˜.

๋ณ‘๋ ฌ์€ '์š”์ฒญ'์œผ๋กœ ์ผ์–ด๋‚œ๋‹ค

Claude Code์— "๋ณ‘๋ ฌ ์‹คํ–‰" ์ „์šฉ ํ”Œ๋ž˜๊ทธ๊ฐ€ ๋”ฐ๋กœ ์žˆ๋Š” ๊ฑด ์•„๋‹ˆ๋‹ค. ์ž‘์—…์ด ๋…๋ฆฝ์ ์ž„์„ ์•Œ๋ ค์ฃผ๊ณ  "๋ณ‘๋ ฌ๋กœ ๋‚˜๋ˆ ์„œ" ํ•ด๋‹ฌ๋ผ๊ณ  ์š”์ฒญํ•˜๋ฉด, AI๊ฐ€ ์—ฌ๋Ÿฌ ์„œ๋ธŒ์—์ด์ „ํŠธ๋ฅผ ๋™์‹œ์— ๋„์šด๋‹ค. ์˜ค๋ž˜ ๊ฑธ๋ฆฌ๋ฉด Ctrl+B๋กœ ๋ฐฑ๊ทธ๋ผ์šด๋“œ ์ „ํ™˜๋„ ๊ฐ€๋Šฅํ•˜๋‹ค.

๊ฒฐ๊ณผ๋ฅผ ๋ชจ์•„ ๊ฒ€์ฆ

๋ณ‘๋ ฌ ๊ตฌํ˜„์ด ๋๋‚˜๋ฉด ๋ฆฌ๋ทฐ ์ „์šฉ ์„œ๋ธŒ์—์ด์ „ํŠธ๋กœ ํ’ˆ์งˆ์„ ์ ๊ฒ€ํ•œ๋‹ค.

code-reviewer ์„œ๋ธŒ์—์ด์ „ํŠธ๋กœ ๋ฐฉ๊ธˆ ์ถ”๊ฐ€๋œ ์„ธ ๊ธฐ๋Šฅ์„ ๋ฆฌ๋ทฐํ•ด์ค˜.
๋ฒ„๊ทธยท์ค‘๋ณต ์ฝ”๋“œยท์—ฃ์ง€ ์ผ€์ด์Šค๋ฅผ ์ค‘์ ์ ์œผ๋กœ ๋ด์ค˜.

๋ณ‘๋ ฌ์˜ ํ•จ์ •

๋…๋ฆฝ์ ์ด์ง€ ์•Š์€ ์ž‘์—…(๊ฐ™์€ ํŒŒ์ผ์„ ๋™์‹œ์— ๊ณ ์น˜๋Š” ๋“ฑ)์„ ๋ณ‘๋ ฌํ™”ํ•˜๋ฉด ์ถฉ๋Œ์ด ๋‚œ๋‹ค. ์„œ๋กœ ๊ฒน์น˜์ง€ ์•Š๋Š” ์ž‘์—…์—๋งŒ ์“ฐ๊ณ , ํ•ฉ์นœ ๋’ค์—๋Š” ๋ฐ˜๋“œ์‹œ ํ†ตํ•ฉ ๊ฒ€์ฆ์„ ๊ฑฐ์นœ๋‹ค.


Stage 5. ์ปค์Šคํ…€ ์Šฌ๋ž˜์‹œ ์ปค๋งจ๋“œ & ํ›…

๋ฐ˜๋ณต ์ž‘์—…์€ ์ปค์Šคํ…€ ์ปค๋งจ๋“œ๋กœ, ์ž๋™์œผ๋กœ ๊ฐ•์ œํ•˜๊ณ  ์‹ถ์€ ๊ทœ์น™์€ ํ›…์œผ๋กœ ๋งŒ๋“ ๋‹ค.

์ปค์Šคํ…€ ์Šฌ๋ž˜์‹œ ์ปค๋งจ๋“œ

์ž์ฃผ ํ•˜๋Š” ์ž‘์—…์„ /๋ช…๋ น์–ด๋กœ ๋งŒ๋“ ๋‹ค. .claude/commands/<์ด๋ฆ„>.md์— ์ ๋Š”๋‹ค.

.claude/commands/new-deck.md:

---
description: ์ฃผ์ œ๋ฅผ ๋ฐ›์•„ ์ƒˆ ํ•™์Šต ๋ฑ๊ณผ ์˜ˆ์‹œ ์นด๋“œ 5์žฅ์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค
argument-hint: "[์ฃผ์ œ]"
allowed-tools: Read, Edit
---

"$ARGUMENTS" ์ฃผ์ œ๋กœ ์ƒˆ ๋ฑ์„ ๋งŒ๋“ค๊ณ ,
์ดˆ๋ณด์ž์šฉ ํ”Œ๋ž˜์‹œ์นด๋“œ 5์žฅ(์•ž๋ฉด=์งˆ๋ฌธ, ๋’ท๋ฉด=์ •๋‹ต)์„ ์ฑ„์›Œ์ค˜.
๊ธฐ์กด localStorage ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ์— ๋งž์ถฐ ์ถ”๊ฐ€ํ•  ๊ฒƒ.

์ด์ œ /new-deck ๋น„์ฆˆ๋‹ˆ์Šค ์˜์–ด ์ฒ˜๋Ÿผ ์“ฐ๋ฉด ์ธ์ž($ARGUMENTS)๊ฐ€ ์ „๋‹ฌ๋œ๋‹ค.

์ปค๋งจ๋“œ ์•ˆ์—์„œ ์“ฐ๋Š” ๋™์  ๊ฐ’

  • $ARGUMENTS ยท $1 $2 โ€” ์ „๋‹ฌํ•œ ์ธ์ž

  • !`git diff` โ€” bash ์‹คํ–‰ ๊ฒฐ๊ณผ๋ฅผ ๋ณธ๋ฌธ์— ์‚ฝ์ž…

  • @๊ฒฝ๋กœ โ€” ํŒŒ์ผ ๋‚ด์šฉ์„ ์ฐธ์กฐ

ํ›… (Hooks)

ํ›…์€ ํŠน์ • ์‹œ์ ์— ์ž๋™์œผ๋กœ ์‹คํ–‰๋˜๋Š” ์Šคํฌ๋ฆฝํŠธ๋‹ค. .claude/settings.json์˜ hooks์— ๋“ฑ๋กํ•œ๋‹ค.

ํŒŒ์ผ์„ ์ˆ˜์ •(Edit/Write)ํ•  ๋•Œ๋งˆ๋‹ค ์ž๋™์œผ๋กœ ํฌ๋งคํ„ฐ๋ฅผ ๋Œ๋ฆฐ๋‹ค.

{
  "hooks": {
    "PostToolUse": [
      {
        "matcher": "Edit|Write",
        "hooks": [
          { "type": "command",
            "command": "jq -r '.tool_input.file_path' | xargs npx prettier --write" }
        ]
      }
    ]
  }
}

.env ๊ฐ™์€ ํŒŒ์ผ ํŽธ์ง‘์„ ์ฐจ๋‹จํ•œ๋‹ค. PreToolUse ํ›…์ด ์ข…๋ฃŒ ์ฝ”๋“œ 2๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋ฉด ๊ทธ ์ž‘์—…์ด ๋ง‰ํžŒ๋‹ค.

{
  "hooks": {
    "PreToolUse": [
      {
        "matcher": "Edit|Write",
        "hooks": [
          { "type": "command",
            "command": "\"$CLAUDE_PROJECT_DIR\"/.claude/hooks/protect-env.sh" }
        ]
      }
    ]
  }
}

์ฃผ์š” ํ›… ์‹œ์ 

PreToolUse(๋„๊ตฌ ์‹คํ–‰ ์ „ยท์ฐจ๋‹จ ๊ฐ€๋Šฅ) ยท PostToolUse(์‹คํ–‰ ํ›„) ยท UserPromptSubmit(ํ”„๋กฌํ”„ํŠธ ์ œ์ถœ ์‹œ) ยท SessionStart(์„ธ์…˜ ์‹œ์ž‘) ยท Stop(์‘๋‹ต ์ข…๋ฃŒ) ๋“ฑ. ์ปค๋งจ๋“œ๋Š” ๋‚ด๊ฐ€ ๋ถ€๋ฅผ ๋•Œ, ํ›…์€ ์กฐ๊ฑด์ด ๋งž์œผ๋ฉด ์ž๋™์œผ๋กœ ์‹คํ–‰๋œ๋‹ค๋Š” ์ ์ด ๋‹ค๋ฅด๋‹ค.


Stage 6. ์Šคํ‚ฌ ์‚ฌ์šฉํ•˜๊ธฐ

์Šคํ‚ฌ(Skill)์ด๋ž€

"์„ค๋ช…ยท์ง€์นจยท๋ณด์กฐ ํŒŒ์ผยท์Šคํฌ๋ฆฝํŠธ๋ฅผ ๋ฌถ์–ด ์žฌ์‚ฌ์šฉํ•˜๋Š” '์ „๋ฌธ ๋Šฅ๋ ฅ' ํŒจํ‚ค์ง€." ์ปค์Šคํ…€ ์ปค๋งจ๋“œ์˜ ํ™•์žฅํ˜•์œผ๋กœ, ์„ค๋ช…๋งŒ ๋ณด๊ณ  AI๊ฐ€ ์•Œ์•„์„œ ๋ถˆ๋Ÿฌ ์“ฐ๊ฑฐ๋‚˜, ์‚ฌ์šฉ์ž๊ฐ€ /์ด๋ฆ„์œผ๋กœ ์ง์ ‘ ๋ถ€๋ฅผ ์ˆ˜๋„ ์žˆ๋‹ค.

๋‚ด์žฅ ์Šคํ‚ฌ ํ™œ์šฉ

Claude Code์—๋Š” ๋ฐ”๋กœ ์“ธ ์ˆ˜ ์žˆ๋Š” ์Šคํ‚ฌ๋“ค์ด ์žˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ๋ณ€๊ฒฝ๋œ ์ฝ”๋“œ๋ฅผ ์ ๊ฒ€ํ•  ๋•Œ:

/code-review

๋ฐฉ๊ธˆ ๋งŒ๋“  ํ€ด์ฆˆยทํ†ต๊ณ„ยท๊ฐ€์ ธ์˜ค๊ธฐ ๊ธฐ๋Šฅ์˜ ๋ณ€๊ฒฝ๋ถ„์„ ๋ฆฌ๋ทฐํ•ด ๋ฒ„๊ทธ์™€ ๊ฐœ์„ ์ ์„ ์ฐพ์•„์ค€๋‹ค.

์ปค์Šคํ…€ ์Šคํ‚ฌ ๋งŒ๋“ค๊ธฐ

.claude/skills/<์ด๋ฆ„>/SKILL.md๋กœ ๋งŒ๋“ ๋‹ค. (๋‹จ์ˆœ ์ปค๋งจ๋“œ์™€ ๋‹ฌ๋ฆฌ ๋ณด์กฐ ๋ฌธ์„œยท์Šคํฌ๋ฆฝํŠธ๋ฅผ ํ•จ๊ป˜ ๋ฒˆ๋“คํ•  ์ˆ˜ ์žˆ๋‹ค.)

.claude/skills/card-quality/SKILL.md:

---
name: card-quality
description: ํ”Œ๋ž˜์‹œ์นด๋“œ ํ’ˆ์งˆ์„ ๊ฒ€์‚ฌํ•œ๋‹ค. ์นด๋“œ๊ฐ€ ๋„ˆ๋ฌด ๊ธธ๊ฑฐ๋‚˜ ๋ชจํ˜ธํ•˜๊ฑฐ๋‚˜ ์ค‘๋ณต์ผ ๋•Œ ์ ๊ฒ€ยท๊ฐœ์„  ์ œ์•ˆ
---

localStorage์˜ ๋ชจ๋“  ์นด๋“œ๋ฅผ ์ ๊ฒ€ํ•˜์„ธ์š”:

1. ์•ž๋ฉด์ด ๋„ˆ๋ฌด ๊ธธ๊ฑฐ๋‚˜(20์ž ์ดˆ๊ณผ) ๋ชจํ˜ธํ•œ ์นด๋“œ ์ฐพ๊ธฐ
2. ๋’ท๋ฉด์ด ๋น„์–ด ์žˆ๊ฑฐ๋‚˜ ์•ž๋ฉด๊ณผ ๊ฑฐ์˜ ๊ฐ™์€ ์นด๋“œ ์ฐพ๊ธฐ
3. ์ค‘๋ณต ์นด๋“œ ์ฐพ๊ธฐ
4. ๊ฐ ๋ฌธ์ œ์— ๋Œ€ํ•ด ๊ฐœ์„ ์•ˆ์„ ์ œ์‹œ

๊ตฌ๋ถ„

์Šฌ๋ž˜์‹œ ์ปค๋งจ๋“œ

์Šคํ‚ฌ

์œ„์น˜

.claude/commands/*.md

.claude/skills/<์ด๋ฆ„>/SKILL.md

๋ณด์กฐ ํŒŒ์ผ

โŒ

โœ… ์Šคํฌ๋ฆฝํŠธยท๋ฌธ์„œ ๋ฒˆ๋“ค ๊ฐ€๋Šฅ

์ž๋™ ํ˜ธ์ถœ

๋ณดํ†ต ์ˆ˜๋™

์„ค๋ช… ๊ธฐ๋ฐ˜ ์ž๋™ ํ˜ธ์ถœ ๊ฐ€๋Šฅ

์ปค๋งจ๋“œ์™€ ์Šคํ‚ฌ์€ ํ•œ ์‹๊ตฌ

์ตœ์‹  Claude Code์—์„œ ๋‘˜์€ ์‚ฌ์‹ค์ƒ ํ†ตํ•ฉ๋๋‹ค. ๊ฐ„๋‹จํ•˜๋ฉด ์ปค๋งจ๋“œ, ๋ณด์กฐ ์ž๋ฃŒ๊ฐ€ ํ•„์š”ํ•˜๊ฑฐ๋‚˜ ์ž๋™ ํ˜ธ์ถœ์„ ์›ํ•˜๋ฉด ์Šคํ‚ฌ๋กœ ์ƒ๊ฐํ•˜๋ฉด ์‰ฝ๋‹ค.


Stage 7. ๋ณธ๊ฒฉ ๊ฐœ๋ฐœ ์›Œํฌํ”Œ๋กœ์šฐ ์ข…ํ•ฉ

์ง€๊ธˆ๊นŒ์ง€ ์Œ“์€ ๋ชจ๋“  ์š”์†Œ๋ฅผ ํ•˜๋‚˜์˜ ๋ฃจํ”„๋กœ ๋ฌถ์œผ๋ฉด, ๋‚˜๋งŒ์˜ ํ‘œ์ค€ ๊ฐœ๋ฐœ ์›Œํฌํ”Œ๋กœ์šฐ๊ฐ€ ๋œ๋‹ค.

flowchart TB
    subgraph ๊ธฐ์–ต & ๊ทœ์น™
      C[CLAUDE.md] 
      H[ํ›… โ€” ์ž๋™ ๊ฒ€์ฆ]
    end
    subgraph ์‹คํ–‰
      PRD[์š”๊ตฌ์‚ฌํ•ญ/PRD] --> PLAN[ํ”Œ๋žœ ๋ชจ๋“œ<br/>๊ณ„ํš]
      PLAN --> TODO[์ž‘์—… ๋ถ„ํ•ด]
      TODO --> PAR[์„œ๋ธŒ์—์ด์ „ํŠธ<br/>๋ณ‘๋ ฌ ๊ตฌํ˜„]
      PAR --> REV[๋ฆฌ๋ทฐ ์Šคํ‚ฌยท์—์ด์ „ํŠธ<br/>๊ฒ€์ฆ]
    end
    subgraph ๋„๊ตฌ
      MCP[MCP โ€” ๋ฌธ์„œยทํ…Œ์ŠคํŠธยท์ €์žฅ์†Œ]
      CMD[์ปค์Šคํ…€ ์ปค๋งจ๋“œ]
    end
    C -.๋งฅ๋ฝ.-> PLAN
    MCP -.์ง€์›.-> PAR
    CMD -.๋‹จ์ถ•.-> TODO
    REV --> COMMIT[์ปค๋ฐ‹ ยท ๋ฐฐํฌ]
    H -.๊ฐ•์ œ.-> COMMIT
    style PRD fill:#fff3e0
    style PLAN fill:#f3e5f5
    style TODO fill:#e3f2fd
    style PAR fill:#fce4ec
    style REV fill:#e8f5e9
    style COMMIT fill:#ede7f6

ํ‘œ์ค€ ๋ฃจํ”„ ์ •๋ฆฌ

  1. ์š”๊ตฌ์‚ฌํ•ญ โ†’ PRD.md์— ์ •๋ฆฌ

  2. ํ”Œ๋žœ ๋ชจ๋“œ๋กœ ๊ณ„ํš ํ™•์ธ โ†’ ์Šน์ธ

  3. ์ž‘์—… ๋ถ„ํ•ด(TODO) โ†’ ๋…๋ฆฝ ์ž‘์—…์€ ์„œ๋ธŒ์—์ด์ „ํŠธ ๋ณ‘๋ ฌ

  4. MCPยท์ปค์Šคํ…€ ์ปค๋งจ๋“œ๋กœ ๊ฐœ๋ฐœ ๊ฐ€์†

  5. ๋ฆฌ๋ทฐ ์Šคํ‚ฌ/์—์ด์ „ํŠธ๋กœ ๊ฒ€์ฆ, ํ›…์ด ๊ทœ์น™์„ ์ž๋™ ๊ฐ•์ œ

  6. ํ†ต๊ณผํ•˜๋ฉด ์ปค๋ฐ‹ยท๋ฐฐํฌ (๋ถ€๋ก 1. Vercel ํ™œ์šฉ)

์ข…ํ•ฉ ์ฒดํฌ๋ฆฌ์ŠคํŠธ

  • ๊ธฐ๋ณธ ์•ฑ์„ PRD ํ•œ ์žฅ์œผ๋กœ ๋งŒ๋“ค์—ˆ๋‹ค

  • ํ•„์š”์— ๋”ฐ๋ผ MCP๋ฅผ ๋‹จ๊ณ„์ ์œผ๋กœ ๋ถ™์—ฌ๋ดค๋‹ค

  • ํฐ ์š”๊ตฌ์‚ฌํ•ญ์„ ์ž‘์—…์œผ๋กœ ์ชผ๊ฐœ ์ถ”์ ํ–ˆ๋‹ค

  • ๋…๋ฆฝ ๊ธฐ๋Šฅ์„ ์„œ๋ธŒ์—์ด์ „ํŠธ๋กœ ๋ณ‘๋ ฌ ๊ตฌํ˜„ํ–ˆ๋‹ค

  • ๋ฐ˜๋ณต ์ž‘์—…์„ ์ปค๋งจ๋“œ, ๊ทœ์น™์„ ํ›…์œผ๋กœ ์ž๋™ํ™”ํ–ˆ๋‹ค

  • ์Šคํ‚ฌ๋กœ ์žฌ์‚ฌ์šฉ ๋Šฅ๋ ฅ์„ ์žฅ์ฐฉํ–ˆ๋‹ค


์ •๋ฆฌ

  • ์ด ์‹ค์Šต์˜ ํ•ต์‹ฌ์€ ์•ฑ์ด ์•„๋‹ˆ๋ผ "์‰ฌ์šด ๊ฐœ๋ฐœ โ†’ ๊ณ ๊ธ‰ ๊ธฐ๋Šฅ โ†’ ํ‘œ์ค€ ์›Œํฌํ”Œ๋กœ์šฐ"๋กœ ์˜ฌ๋ผ๊ฐ€๋Š” ๊ณผ์ •์ด๋‹ค

  • MCP๋Š” ํ•„์š”ํ•  ๋•Œ ํ•˜๋‚˜์”ฉ, ํƒœ์Šคํฌ ๊ด€๋ฆฌ๋กœ ํฐ ์š”๊ตฌ์‚ฌํ•ญ์„ ์ชผ๊ฐœ๊ณ , ์„œ๋ธŒ์—์ด์ „ํŠธ๋กœ ๋…๋ฆฝ ์ž‘์—…์„ ๋ณ‘๋ ฌํ™”ํ•œ๋‹ค

  • ์ปค์Šคํ…€ ์ปค๋งจ๋“œยทํ›…ยท์Šคํ‚ฌ๋กœ ๋ฐ˜๋ณต๊ณผ ๊ฒ€์ฆ์„ ์ž๋™ํ™”ํ•˜๋ฉด, ์‚ฌ๋žŒ์€ ์š”๊ตฌ์‚ฌํ•ญ ์ •์˜์™€ ์ตœ์ข… ๊ฒ€์ฆ์—๋งŒ ์ง‘์ค‘ํ•˜๊ฒŒ ๋œ๋‹ค

  • ๋„๊ตฌ๊ฐ€ ๋Š˜์–ด๋‚ ์ˆ˜๋ก ์ค‘์š”ํ•œ ๊ฑด ๋ณ€ํ•˜์ง€ ์•Š๋Š”๋‹ค โ€” ์ž‘๊ฒŒ ๋งŒ๋“ค๊ณ , ์ž์ฃผ ๊ฒ€์ฆํ•˜๊ณ , ๋˜๋Œ๋ฆด ์ˆ˜ ์žˆ๊ฒŒ ๋‘”๋‹ค.

๋งˆ์ง€๋ง‰ ์ˆ˜์ • 2026๋…„ 10์›” 22์ผ