๐Ÿ”ฅ Claude Code ํ† ํฐ์„ ์•„๋ผ๋Š” ์„ธํŒ…: context-mode, Bun, CLAUDE.md/AGENTS.md

์ด๊ฒฝ๊ทœยท์–ด์ œ

Claude Code๋ฅผ ์“ฐ๋‹ค ๋ณด๋ฉด ์ฒ˜์Œ์—๋Š” ์ •๋ง ํŽธํ•ฉ๋‹ˆ๋‹ค. ํŒŒ์ผ์„ ์—ด์–ด ๋‹ฌ๋ผ๊ณ  ํ•˜๋ฉด ์—ด์–ด ์ฃผ๊ณ , ๋กœ๊ทธ๋ฅผ ๋ถ™์—ฌ ๋„ฃ์œผ๋ฉด ์›์ธ์„ ์ฐพ์•„ ์ฃผ๊ณ , ํ”„๋กœ์ ํŠธ ๊ตฌ์กฐ๋„ ๊ธˆ๋ฐฉ ํŒŒ์•…ํ•ฉ๋‹ˆ๋‹ค.

๊ทธ๋Ÿฐ๋ฐ ํ”„๋กœ์ ํŠธ๊ฐ€ ์กฐ๊ธˆ๋งŒ ์ปค์ ธ๋„ ๊ธˆ๋ฐฉ ์ด๋Ÿฐ ๋ฌธ์ œ๊ฐ€ ์ƒ๊น๋‹ˆ๋‹ค.

  • ๊ธด ๋กœ๊ทธ๋ฅผ ํ•œ ๋ฒˆ ๋ถ™์˜€์„ ๋ฟ์ธ๋ฐ ์ปจํ…์ŠคํŠธ๊ฐ€ ํฌ๊ฒŒ ์ค„์–ด๋“ญ๋‹ˆ๋‹ค.
  • ํฐ ํŒŒ์ผ ๋ช‡ ๊ฐœ๋ฅผ ์ฝํžˆ๋ฉด ๋Œ€ํ™”๊ฐ€ ๋ฌด๊ฑฐ์›Œ์ง‘๋‹ˆ๋‹ค.
  • ๊ฐ™์€ ํ”„๋กœ์ ํŠธ ๊ทœ์น™์„ ๋งค๋ฒˆ ๋‹ค์‹œ ์„ค๋ช…ํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.
  • ํŒจํ‚ค์ง€ ๋งค๋‹ˆ์ €, ๋นŒ๋“œ ๋ช…๋ น์–ด, ํ…Œ์ŠคํŠธ ๋ฐฉ์‹์ด ๊ณ„์† ํ”๋“ค๋ฆฝ๋‹ˆ๋‹ค.

์ด ๊ธ€์€ ๊ทธ๋Ÿฐ ์ƒํ™ฉ์„ ์ค„์ด๊ธฐ ์œ„ํ•œ ์„ธํŒ… ๊ฐ€์ด๋“œ์ž…๋‹ˆ๋‹ค.

ํ•ต์‹ฌ์€ ์„ธ ๊ฐ€์ง€์ž…๋‹ˆ๋‹ค.

  1. context-mode๋กœ ํฐ ํŒŒ์ผ๊ณผ ๋กœ๊ทธ๋ฅผ ๊ทธ๋Œ€๋กœ ๋„˜๊ธฐ์ง€ ์•Š๊ธฐ
  2. Bun์œผ๋กœ ๋น ๋ฅธ ํŒจํ‚ค์ง€ ๋งค๋‹ˆ์ €์™€ ์‹คํ–‰ ํ™˜๊ฒฝ์„ ๋งž์ถ”๊ธฐ
  3. CLAUDE.md ๋˜๋Š” AGENTS.md๋กœ ํ”„๋กœ์ ํŠธ ๊ทœ์น™์„ ๊ณ ์ •ํ•˜๊ธฐ

์ œ๋Œ€๋กœ ๋งž์ถฐ ๋‘๋ฉด Claude๊ฐ€ ๋งค๋ฒˆ ๋ถˆํ•„์š”ํ•˜๊ฒŒ ๋งŽ์€ ๋‚ด์šฉ์„ ์ฝ์ง€ ์•Š์•„๋„ ๋ฉ๋‹ˆ๋‹ค. ์ž‘์—… ๋ฐฉ์‹์— ๋”ฐ๋ผ ํ† ํฐ ์‚ฌ์šฉ๋Ÿ‰์„ ํฌ๊ฒŒ ์ค„์ผ ์ˆ˜ ์žˆ๊ณ , ํฐ ๋กœ๊ทธ๋‚˜ ๊ธด ํŒŒ์ผ์„ ๋‹ค๋ฃฐ ๋•Œ๋Š” ์ฒด๊ฐ ์ฐจ์ด๊ฐ€ ๊ฝค ํฝ๋‹ˆ๋‹ค.

๋‹ค๋งŒ ๋จผ์ € ํ˜„์‹ค์ ์ธ ๋ถ€๋ถ„๋ถ€ํ„ฐ ์งš๊ณ  ๊ฐ€๊ฒ ์Šต๋‹ˆ๋‹ค. ์ด ์„ธํŒ…์ด ๋ชจ๋“  ์ƒํ™ฉ์—์„œ ๋ฌด์กฐ๊ฑด ํ† ํฐ์„ 90% ์ค„์—ฌ ์ฃผ๋Š” ๋งˆ๋ฒ•์€ ์•„๋‹™๋‹ˆ๋‹ค. ํšจ๊ณผ๋Š” ํ”„๋กœ์ ํŠธ ํฌ๊ธฐ, ์‚ฌ์šฉ ์Šต๊ด€, Claude์—๊ฒŒ ์–ด๋–ค ๋ฐฉ์‹์œผ๋กœ ์š”์ฒญํ•˜๋Š”์ง€์— ๋”ฐ๋ผ ๋‹ฌ๋ผ์ง‘๋‹ˆ๋‹ค. ๊ทธ๋ž˜๋„ โ€œํฐ ํŒŒ์ผ์„ ํ†ต์งธ๋กœ ์ฝํžˆ๋Š” ์Šต๊ด€โ€์„ ์ค„์ด๋Š” ๊ฒƒ๋งŒ์œผ๋กœ๋„ ์ถฉ๋ถ„ํžˆ ์˜๋ฏธ ์žˆ๋Š” ๊ฐœ์„ ์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.


์™œ Claude Code์—์„œ ํ† ํฐ์ด ๋นจ๋ฆฌ ์ค„์–ด๋“ค๊นŒ

Claude ๊ฐ™์€ AI ๋„๊ตฌ๋Š” ๋Œ€ํ™” ๋‚ด์šฉ๊ณผ ํŒŒ์ผ ๋‚ด์šฉ, ๋กœ๊ทธ, ์ฝ”๋“œ ์ผ๋ถ€๋ฅผ ์ปจํ…์ŠคํŠธ ์•ˆ์— ๋„ฃ๊ณ  ์ž‘์—…ํ•ฉ๋‹ˆ๋‹ค. ์‰ฝ๊ฒŒ ๋งํ•˜๋ฉด AI๊ฐ€ ์ฐธ๊ณ ํ•  ์ˆ˜ ์žˆ๋Š” ์ž‘์—… ์ฑ…์ƒ์ด ์žˆ๋Š”๋ฐ, ๊ทธ ์ฑ…์ƒ ์œ„์— ๋„ˆ๋ฌด ๋งŽ์€ ์ž๋ฃŒ๋ฅผ ์˜ฌ๋ ค ๋‘๋ฉด ๊ณต๊ฐ„์ด ๋น ๋ฅด๊ฒŒ ์ค„์–ด๋“œ๋Š” ๊ตฌ์กฐ์ž…๋‹ˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด ์ด๋Ÿฐ ์š”์ฒญ์„ ์ž์ฃผ ํ•œ๋‹ค๊ณ  ํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

์ด ๋กœ๊ทธ ์ „์ฒด ๋ณด๊ณ  ์›์ธ ์ฐพ์•„์ค˜.

๋˜๋Š” ์ด๋ ‡๊ฒŒ ์š”์ฒญํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด ํ”„๋กœ์ ํŠธ ์ „์ฒด๋ฅผ ๋ณด๊ณ  ๊ตฌ์กฐ ํŒŒ์•…ํ•ด์ค˜.

์ž‘์€ ํ”„๋กœ์ ํŠธ๋ผ๋ฉด ๊ดœ์ฐฎ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์‹ค์ œ ์•ฑ ํ”„๋กœ์ ํŠธ, ์„œ๋ฒ„ ํ”„๋กœ์ ํŠธ, iOS ํ”„๋กœ์ ํŠธ, ํ”„๋ก ํŠธ์—”๋“œ ํ”„๋กœ์ ํŠธ์ฒ˜๋Ÿผ ํŒŒ์ผ์ด ๋งŽ์•„์ง€๋ฉด ์ด์•ผ๊ธฐ๊ฐ€ ๋‹ฌ๋ผ์ง‘๋‹ˆ๋‹ค.

AI๊ฐ€ ๊ผญ ์ฝ์ง€ ์•Š์•„๋„ ๋˜๋Š” ํŒŒ์ผ๊นŒ์ง€ ๋งŽ์ด ์ฝ๊ฒŒ ๋˜๊ณ , ๋กœ๊ทธ๋„ ์›์ธ๊ณผ ๊ด€๋ จ ์—†๋Š” ๋ถ€๋ถ„๊นŒ์ง€ ์ปจํ…์ŠคํŠธ์— ๋“ค์–ด๊ฐ‘๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋ฉด ์ •์ž‘ ์ค‘์š”ํ•œ ์ฝ”๋“œ ์ˆ˜์ •์ด๋‚˜ ๋ถ„์„์— ์“ธ ๊ณต๊ฐ„์ด ์ค„์–ด๋“ญ๋‹ˆ๋‹ค.

๊ทธ๋ž˜์„œ ์ค‘์š”ํ•œ ์›์น™์€ ์ด๊ฒƒ์ž…๋‹ˆ๋‹ค.

AI์—๊ฒŒ ์›๋ณธ ์ž๋ฃŒ๋ฅผ ์ „๋ถ€ ๋„˜๊ธฐ๊ธฐ๋ณด๋‹ค, ํ•„์š”ํ•œ ๊ฒฐ๊ณผ๋งŒ ๊ณ„์‚ฐํ•ด์„œ ๋„˜๊ธด๋‹ค.

์ด ์›์น™์„ ๋„์™€์ฃผ๋Š” ๋„๊ตฌ๊ฐ€ ๋ฐ”๋กœ context-mode์ž…๋‹ˆ๋‹ค.


context-mode๋Š” ๋ฌด์—‡์„ ํ•ด ์ฃผ๋‚˜

context-mode๋Š” Claude์—๊ฒŒ ํฐ ํŒŒ์ผ์ด๋‚˜ ๊ธด ๋กœ๊ทธ๋ฅผ ๊ทธ๋Œ€๋กœ ๋จน์ด๋Š” ๋Œ€์‹ , ๋กœ์ปฌ์—์„œ ๋ช…๋ น์„ ์‹คํ–‰ํ•˜๊ณ  ํ•„์š”ํ•œ ๊ฒฐ๊ณผ๋งŒ ์š”์•ฝํ•ด์„œ ๋„˜๊ธฐ๋Š” ๋ฐฉ์‹์˜ ๋„๊ตฌ์ž…๋‹ˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด Claude๊ฐ€ ํ”„๋กœ์ ํŠธ ์•ˆ์—์„œ ํŠน์ • ๋ฌธ์ž์—ด์„ ์ฐพ๊ณ  ์‹ถ๋‹ค๊ณ  ํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

๊ธฐ์กด ๋ฐฉ์‹์€ ์ด๋Ÿฐ ์‹์ด ๋˜๊ธฐ ์‰ฝ์Šต๋‹ˆ๋‹ค.

ํ”„๋กœ์ ํŠธ ํŒŒ์ผ๋“ค์„ ์—ด์–ด ๋ณด๊ณ  FIXME๊ฐ€ ์žˆ๋Š” ๊ณณ์„ ์ฐพ์•„์ค˜.

๊ทธ๋Ÿฌ๋ฉด Claude๊ฐ€ ์—ฌ๋Ÿฌ ํŒŒ์ผ์„ ์ง์ ‘ ์ฝ์œผ๋ฉด์„œ ์ปจํ…์ŠคํŠธ๋ฅผ ๋งŽ์ด ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

๋ฐ˜๋ฉด context-mode๋ฅผ ์“ฐ๋ฉด ์ด๋Ÿฐ ์‹์œผ๋กœ ๋ฐ”๋€๋‹ˆ๋‹ค.

ctx_search๋กœ FIXME๊ฐ€ ์žˆ๋Š” ํŒŒ์ผ๊ณผ ์ค„๋งŒ ์ฐพ์•„์ค˜.

๋˜๋Š” ๋‚ด๋ถ€์ ์œผ๋กœ rg, find, sed, git diff ๊ฐ™์€ ๋ช…๋ น ๊ฒฐ๊ณผ๋งŒ ๊ฐ€์ ธ์˜ค๊ฒŒ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋ฉด Claude๋Š” ํŒŒ์ผ ์ „์ฒด๊ฐ€ ์•„๋‹ˆ๋ผ โ€œํ•„์š”ํ•œ ์ค„โ€, โ€œ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผโ€, โ€œ์š”์•ฝ๋œ ํ†ต๊ณ„โ€๋งŒ ๋ณด๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

๊ฒฐ๊ณผ์ ์œผ๋กœ ์ปจํ…์ŠคํŠธ ์‚ฌ์šฉ๋Ÿ‰์ด ์ค„์–ด๋“ค๊ณ , ์ž‘์—…๋„ ๋” ์„ ๋ช…ํ•ด์ง‘๋‹ˆ๋‹ค.


context-mode์—์„œ ์ž์ฃผ ์“ฐ๋Š” ๋„๊ตฌ๋“ค

์„ค์น˜ ํ›„ Claude์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋Œ€ํ‘œ ๋„๊ตฌ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

๋„๊ตฌ์šฉ๋„
ctx_execute์…ธ ๋ช…๋ น ํ•˜๋‚˜๋ฅผ ์‹คํ–‰ํ•˜๊ณ  ๊ฒฐ๊ณผ๋ฅผ ์š”์•ฝํ•ด์„œ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค.
ctx_batch_execute์—ฌ๋Ÿฌ ๋ช…๋ น์„ ํ•œ ๋ฒˆ์— ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค. ํ”„๋กœ์ ํŠธ ์ ๊ฒ€์— ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.
ctx_fetch_and_indexURL์ด๋‚˜ ๋ฌธ์„œ๋ฅผ ๊ฐ€์ ธ์™€ ์ธ๋ฑ์‹ฑํ•ฉ๋‹ˆ๋‹ค. ๊ธด ๋ฌธ์„œ๋ฅผ ๋‹ค๋ฃฐ ๋•Œ ์ข‹์Šต๋‹ˆ๋‹ค.
ctx_search์ธ๋ฑ์‹ฑ๋œ ์ž๋ฃŒ๋‚˜ ํ”„๋กœ์ ํŠธ์—์„œ ํ•„์š”ํ•œ ๋‚ด์šฉ๋งŒ ๊ฒ€์ƒ‰ํ•ฉ๋‹ˆ๋‹ค.
ctx_statscontext-mode ์‚ฌ์šฉ๋Ÿ‰๊ณผ ์ƒํƒœ๋ฅผ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

์ดˆ๋ณด์ž ์ž…์žฅ์—์„œ๋Š” ์ฒ˜์Œ๋ถ€ํ„ฐ ๋ชจ๋“  ๋„๊ตฌ๋ฅผ ์™ธ์šธ ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์šฐ์„ ์€ ์•„๋ž˜ ์„ธ ๊ฐ€์ง€๋งŒ ๊ธฐ์–ตํ•ด๋„ ์ถฉ๋ถ„ํ•ฉ๋‹ˆ๋‹ค.

ctx_execute: ๋ช…๋ น ์‹คํ–‰
ctx_search: ํ•„์š”ํ•œ ๋‚ด์šฉ ๊ฒ€์ƒ‰
ctx_stats: ์ƒํƒœ ํ™•์ธ

์ค€๋น„๋ฌผ

์ด ๊ธ€์€ macOS ๋˜๋Š” Linux ๊ณ„์—ด ํ„ฐ๋ฏธ๋„์„ ๊ธฐ์ค€์œผ๋กœ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค. macOS์—์„œ Claude Code๋ฅผ ์“ฐ๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ๊ธฐ ๋•Œ๋ฌธ์— zsh ๊ธฐ์ค€ ๋ช…๋ น์–ด๋„ ํ•จ๊ป˜ ์ ์—ˆ์Šต๋‹ˆ๋‹ค.

์ค€๋น„๋ฌผ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  • Claude Code๊ฐ€ ์„ค์น˜๋˜์–ด ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  • ํ„ฐ๋ฏธ๋„์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  • Node.js ๋˜๋Š” npm์ด ์„ค์น˜๋˜์–ด ์žˆ์œผ๋ฉด ์ข‹์Šต๋‹ˆ๋‹ค.
  • Bun์„ ์„ค์น˜ํ•  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค.
  • ํ”„๋กœ์ ํŠธ ๋ฃจํŠธ์— CLAUDE.md ๋˜๋Š” AGENTS.md๋ฅผ ๋‘˜ ์ˆ˜ ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์„ค์น˜๊ฐ€ ์ฒ˜์Œ์ด๋ผ๋ฉด ๋ช…๋ น์–ด๋ฅผ ํ•œ ์ค„์”ฉ ์‹คํ–‰ํ•˜๊ณ , ์ค‘๊ฐ„์— ์—๋Ÿฌ๊ฐ€ ๋‚˜๋Š”์ง€ ํ™•์ธํ•˜๋ฉด์„œ ์ง„ํ–‰ํ•˜๋Š” ๊ฒƒ์„ ์ถ”์ฒœํ•ฉ๋‹ˆ๋‹ค.


1๋‹จ๊ณ„: Bun ์„ค์น˜ํ•˜๊ธฐ

Bun์€ JavaScript ๋Ÿฐํƒ€์ž„์ด์ž ํŒจํ‚ค์ง€ ๋งค๋‹ˆ์ €์ž…๋‹ˆ๋‹ค. Node.js ์ƒํƒœ๊ณ„์™€ ๋น„์Šทํ•˜๊ฒŒ ์“ธ ์ˆ˜ ์žˆ์ง€๋งŒ, ์„ค์น˜์™€ ์‹คํ–‰ ์†๋„๊ฐ€ ๋น ๋ฅธ ํŽธ์ž…๋‹ˆ๋‹ค.

ํ„ฐ๋ฏธ๋„์—์„œ ์•„๋ž˜ ๋ช…๋ น์–ด๋ฅผ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.

curl -fsSL https://bun.sh/install | bash

์„ค์น˜๊ฐ€ ๋๋‚ฌ๋‹ค๋ฉด zsh ์„ค์ • ํŒŒ์ผ์— Bun ๊ฒฝ๋กœ๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

echo 'export PATH="$HOME/.bun/bin:$PATH"' >> ~/.zshrc
source ~/.zshrc

์„ค์น˜๊ฐ€ ์ž˜ ๋˜์—ˆ๋Š”์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

bun --version

๋ฒ„์ „ ์ˆซ์ž๊ฐ€ ๋‚˜์˜ค๋ฉด ์ •์ƒ์ž…๋‹ˆ๋‹ค.

๋งŒ์•ฝ command not found: bun์ด ๋‚˜์˜จ๋‹ค๋ฉด ํ„ฐ๋ฏธ๋„์„ ์™„์ „ํžˆ ๊ป๋‹ค๊ฐ€ ๋‹ค์‹œ ์—ด์–ด ๋ณด์„ธ์š”. ๊ทธ๋ž˜๋„ ์•ˆ ๋œ๋‹ค๋ฉด ์•„๋ž˜ ๋ช…๋ น์–ด๋กœ ๊ฒฝ๋กœ๊ฐ€ ๋“ค์–ด๊ฐ”๋Š”์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

echo $PATH

$HOME/.bun/bin ๋˜๋Š” ์‹ค์ œ ํ™ˆ ๊ฒฝ๋กœ์˜ .bun/bin์ด ๋ณด์ด๋ฉด ๋ฉ๋‹ˆ๋‹ค.


2๋‹จ๊ณ„: context-mode ์„ค์น˜ํ•˜๊ธฐ

์ด์ œ context-mode๋ฅผ ์„ค์น˜ํ•ฉ๋‹ˆ๋‹ค.

npm install -g context-mode

์„ค์น˜ ํ›„ ๋„์›€๋ง์ด๋‚˜ ์ƒํƒœ ๋ช…๋ น์„ ์‹คํ–‰ํ•ด ๋ด…๋‹ˆ๋‹ค.

ctx stats

ํ™˜๊ฒฝ์— ๋”ฐ๋ผ ๋ช…๋ น์–ด๊ฐ€ ctx_stats์ฒ˜๋Ÿผ ๋…ธ์ถœ๋  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ์„ค์น˜ํ•œ ํŒจํ‚ค์ง€ ๋ฒ„์ „์— ๋”ฐ๋ผ ์ด๋ฆ„์ด ๋‹ค๋ฅผ ์ˆ˜ ์žˆ์œผ๋‹ˆ, ๋ช…๋ น์ด ๋จน์ง€ ์•Š์œผ๋ฉด ์•„๋ž˜์ฒ˜๋Ÿผ ๋„์›€๋ง์„ ๋จผ์ € ํ™•์ธํ•ด ๋ณด์„ธ์š”.

context-mode --help

๋˜๋Š” ์„ค์น˜ ์œ„์น˜๋ฅผ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

which context-mode

์—ฌ๊ธฐ๊นŒ์ง€ ์„ฑ๊ณตํ–ˆ๋‹ค๋ฉด ๋กœ์ปฌ์—์„œ context-mode๋ฅผ ์“ธ ์ค€๋น„๋Š” ๋œ ๊ฒƒ์ž…๋‹ˆ๋‹ค.


3๋‹จ๊ณ„: Claude MCP ์„ค์ •์— context-mode ๋“ฑ๋กํ•˜๊ธฐ

Claude๊ฐ€ context-mode๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๋ฉด MCP ์„œ๋ฒ„๋กœ ๋“ฑ๋กํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

Claude Code ํ™˜๊ฒฝ๋งˆ๋‹ค ์„ค์ • ํŒŒ์ผ ์œ„์น˜๊ฐ€ ์กฐ๊ธˆ ๋‹ค๋ฅผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฏธ MCP ์„ค์ •์„ ์“ฐ๊ณ  ์žˆ๋‹ค๋ฉด ๊ธฐ์กด ์„ค์ •์— context-mode ํ•ญ๋ชฉ๋งŒ ์ถ”๊ฐ€ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

์˜ˆ์‹œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

{
  "mcpServers": {
    "context-mode": {
      "command": "context-mode",
      "args": ["mcp"]
    }
  }
}

์ด๋ฏธ ๋‹ค๋ฅธ MCP ์„œ๋ฒ„๊ฐ€ ์žˆ๋‹ค๋ฉด mcpServers ์•ˆ์— ํ•จ๊ป˜ ๋„ฃ์–ด ์ฃผ์„ธ์š”.

์˜ˆ๋ฅผ ๋“ค์–ด ๊ธฐ์กด ์„ค์ •์ด ์ด๋Ÿฐ ํ˜•ํƒœ๋ผ๋ฉด,

{
  "mcpServers": {
    "github": {
      "command": "github-mcp-server"
    }
  }
}

์•„๋ž˜์ฒ˜๋Ÿผ ํ•˜๋‚˜๋ฅผ ๋” ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

{
  "mcpServers": {
    "github": {
      "command": "github-mcp-server"
    },
    "context-mode": {
      "command": "context-mode",
      "args": ["mcp"]
    }
  }
}

์„ค์ •์„ ๋ฐ”๊พผ ๋’ค์—๋Š” Claude Code๋ฅผ ์žฌ์‹œ์ž‘ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. MCP ์„ค์ •์€ ์‹คํ–‰ ์ค‘ ์ž๋™ ๋ฐ˜์˜๋˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์Šต๋‹ˆ๋‹ค.


4๋‹จ๊ณ„: Hooks ์„ค์ •ํ•˜๊ธฐ

Hooks๋Š” Claude๊ฐ€ ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ์ „ํ›„์— ํŠน์ • ์ž‘์—…์„ ๊ฑธ์–ด ๋‘˜ ์ˆ˜ ์žˆ๋Š” ์„ค์ •์ž…๋‹ˆ๋‹ค. ์‰ฝ๊ฒŒ ๋งํ•˜๋ฉด โ€œClaude๊ฐ€ ์ž‘์—…ํ•  ๋•Œ ์ง€์ผœ์•ผ ํ•  ์ž๋™ ๊ทœ์น™โ€์„ ๋ถ™์ด๋Š” ๋А๋‚Œ์ž…๋‹ˆ๋‹ค.

์˜ˆ์‹œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

{
  "hooks": {
    "PreToolUse": [
      {
        "matcher": "*",
        "hooks": [
          {
            "type": "command",
            "command": "context-mode hook pre"
          }
        ]
      }
    ],
    "PostToolUse": [
      {
        "matcher": "*",
        "hooks": [
          {
            "type": "command",
            "command": "context-mode hook post"
          }
        ]
      }
    ]
  }
}

์ด ์„ค์ •์€ ํ”„๋กœ์ ํŠธ๋‚˜ Claude Code ์„ค์ • ๋ฐฉ์‹์— ๋”ฐ๋ผ ๋„ฃ๋Š” ์œ„์น˜๊ฐ€ ๋‹ฌ๋ผ์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ค‘์š”ํ•œ ๊ฒƒ์€ PreToolUse, PostToolUse๊ฐ€ ์‹ค์ œ๋กœ Claude์˜ ๋„๊ตฌ ํ˜ธ์ถœ ์ „ํ›„์— ์‹คํ–‰๋˜๋„๋ก ์—ฐ๊ฒฐํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ฒ˜์Œ๋ถ€ํ„ฐ Hooks๊นŒ์ง€ ๋ณต์žกํ•˜๊ฒŒ ๋А๊ปด์ง„๋‹ค๋ฉด, ์šฐ์„  MCP ๋“ฑ๋ก๋งŒ ํ•ด ๋‘๊ณ  ์‚ฌ์šฉํ•ด๋„ ๋ฉ๋‹ˆ๋‹ค. ์ดํ›„์— ์ปจํ…์ŠคํŠธ ๊ด€๋ฆฌ๊ฐ€ ๋” ํ•„์š”ํ•ด์กŒ์„ ๋•Œ Hooks๋ฅผ ์ถ”๊ฐ€ํ•ด๋„ ๋Šฆ์ง€ ์•Š์Šต๋‹ˆ๋‹ค.


5๋‹จ๊ณ„: CLAUDE.md ๋˜๋Š” AGENTS.md ๋งŒ๋“ค๊ธฐ

Claude์—๊ฒŒ ๋งค๋ฒˆ ๊ฐ™์€ ์„ค๋ช…์„ ๋ฐ˜๋ณตํ•˜์ง€ ์•Š์œผ๋ ค๋ฉด ํ”„๋กœ์ ํŠธ ๋ฃจํŠธ์— ๊ทœ์น™ ํŒŒ์ผ์„ ๋งŒ๋“ค์–ด ๋‘๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

Claude ์ „์šฉ์œผ๋กœ๋Š” CLAUDE.md๋ฅผ ๋งŽ์ด ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์—ฌ๋Ÿฌ AI ์ฝ”๋”ฉ ๋„๊ตฌ์™€ ํ•จ๊ป˜ ์“ธ ์˜ˆ์ •์ด๋ผ๋ฉด AGENTS.md๋„ ์ข‹์Šต๋‹ˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด ํ”„๋กœ์ ํŠธ ๋ฃจํŠธ์— ์•„๋ž˜ ํŒŒ์ผ์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

touch CLAUDE.md

๋˜๋Š”

touch AGENTS.md

๊ทธ๋ฆฌ๊ณ  ๋‹ค์Œ์ฒ˜๋Ÿผ ํ”„๋กœ์ ํŠธ ๊ทœ์น™์„ ์ ์Šต๋‹ˆ๋‹ค.

# Project Rules

## Package Manager
- Use Bun when possible.
- Use `bun install` instead of `npm install`.
- Use `bun run` for scripts.

## Context Usage
- Prefer context-mode tools for large files, logs, and broad searches.
- Do not paste full logs unless necessary.
- Use search commands before opening many files.

## Code Style
- Keep changes small and focused.
- Do not rewrite unrelated files.
- Run tests or build checks after meaningful changes when possible.

## Project Notes
- Write important implementation notes here.
- Add build commands and test commands here.

๋„ˆ๋ฌด ๊ธธ๊ฒŒ ์“ฐ๋Š” ๊ฒƒ๋ณด๋‹ค, ํ”„๋กœ์ ํŠธ์—์„œ ์ž์ฃผ ํ‹€๋ฆฌ๋Š” ๋ถ€๋ถ„์„ ์งง๊ณ  ๋ช…ํ™•ํ•˜๊ฒŒ ์ ๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด iOS ํ”„๋กœ์ ํŠธ๋ผ๋ฉด ์ด๋Ÿฐ ๋‚ด์šฉ์„ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

## iOS Build
- Use Xcode project settings as the source of truth.
- Do not modify signing settings unless asked.
- Prefer small UIKit/SwiftUI changes that match the existing design system.

ํ”„๋ก ํŠธ์—”๋“œ ํ”„๋กœ์ ํŠธ๋ผ๋ฉด ์ด๋Ÿฐ ์‹๋„ ์ข‹์Šต๋‹ˆ๋‹ค.

## Frontend
- Preserve the existing design language.
- Avoid adding new dependencies unless necessary.
- Check mobile layout when touching UI.

์ด ํŒŒ์ผ์˜ ๋ชฉ์ ์€ Claude๋ฅผ ๋ฌถ์–ด ๋‘๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ, ํ”„๋กœ์ ํŠธ์˜ ๊ธฐ๋ณธ ์Šต๊ด€์„ ์•Œ๋ ค ์ฃผ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.


6๋‹จ๊ณ„: Bun ๋ช…๋ น์–ด๋กœ ๋ฐ”๊พธ๊ธฐ

Bun์„ ์„ค์น˜ํ–ˆ๋‹ค๋ฉด ์ž์ฃผ ์“ฐ๋Š” npm ๋ช…๋ น์–ด๋ฅผ Bun ๊ธฐ์ค€์œผ๋กœ ๋ฐ”๊ฟ” ๋‘๋ฉด ์ข‹์Šต๋‹ˆ๋‹ค.

๊ธฐ์กด ๋ช…๋ น์–ดBun ๋ช…๋ น์–ด
npm installbun install
npm install ํŒจํ‚ค์ง€bun add ํŒจํ‚ค์ง€
npm uninstall ํŒจํ‚ค์ง€bun remove ํŒจํ‚ค์ง€
npm run devbun run dev
npm run buildbun run build
npx some-toolbunx some-tool

๋‹ค๋งŒ ๋ชจ๋“  ํ”„๋กœ์ ํŠธ์—์„œ ๋ฌด์กฐ๊ฑด Bun์œผ๋กœ ๋ฐ”๊พธ๋Š” ๊ฒƒ์€ ์กฐ์‹ฌํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ด๋ฏธ ํŒ€์—์„œ package-lock.json์„ ๊ธฐ์ค€์œผ๋กœ npm์„ ์“ฐ๊ณ  ์žˆ๋‹ค๋ฉด ๊ทธ๋Œ€๋กœ ์œ ์ง€ํ•˜๋Š” ํŽธ์ด ์•ˆ์ „ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฐ˜๋Œ€๋กœ ๊ฐœ์ธ ํ”„๋กœ์ ํŠธ์ด๊ฑฐ๋‚˜ Bun์„ ์“ฐ๊ธฐ๋กœ ๊ฒฐ์ •ํ•œ ํ”„๋กœ์ ํŠธ๋ผ๋ฉด CLAUDE.md๋‚˜ AGENTS.md์— ๋ช…ํ™•ํžˆ ์ ์–ด ๋‘๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

## Package Manager
- This project uses Bun.
- Do not create `package-lock.json`.
- Use `bun.lock` as the lockfile.

์ด๋ ‡๊ฒŒ ์ ์–ด ๋‘๋ฉด Claude๊ฐ€ ์‹ค์ˆ˜๋กœ npm ๋ช…๋ น์„ ์“ฐ๋Š” ์ผ์„ ์ค„์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.


7๋‹จ๊ณ„: ์ œ๋Œ€๋กœ ์ ์šฉ๋๋Š”์ง€ ํ™•์ธํ•˜๊ธฐ

์„ธํŒ… ํ›„์—๋Š” ๋ฐ”๋กœ ํฐ ์ž‘์—…์„ ๋งก๊ธฐ๊ธฐ๋ณด๋‹ค ์ž‘์€ ์š”์ฒญ์œผ๋กœ ํ…Œ์ŠคํŠธํ•ด ๋ณด๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด Claude์—๊ฒŒ ์ด๋ ‡๊ฒŒ ์š”์ฒญํ•ด ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํ”„๋กœ์ ํŠธ์—์„œ FIXME ์ฃผ์„์ด ์žˆ๋Š” ํŒŒ์ผ๊ณผ ์ค„ ๋ฒˆํ˜ธ๋งŒ ์ฐพ์•„์ค˜. ํŒŒ์ผ ์ „์ฒด๋ฅผ ์—ด์ง€ ๋ง๊ณ  ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ๋งŒ ์š”์•ฝํ•ด์ค˜.

๋˜๋Š” ์ด๋ ‡๊ฒŒ ์š”์ฒญํ•ด ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ตœ๊ทผ git diff๋ฅผ ์š”์•ฝํ•ด์ค˜. ๋ณ€๊ฒฝ๋œ ํŒŒ์ผ ์ „์ฒด๋ฅผ ์ฝ๊ธฐ๋ณด๋‹ค ํ•ต์‹ฌ ๋ณ€๊ฒฝ์ ๋งŒ ์ •๋ฆฌํ•ด์ค˜.

Claude๊ฐ€ ctx_search, ctx_execute, rg, git diff --stat ๊ฐ™์€ ๋ฐฉ์‹์œผ๋กœ ํ•„์š”ํ•œ ๊ฒฐ๊ณผ๋งŒ ๊ฐ€์ ธ์˜จ๋‹ค๋ฉด ๋ฐฉํ–ฅ์ด ์ž˜ ์žกํžŒ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ƒํƒœ ํ™•์ธ ๋ช…๋ น๋„ ์‹คํ–‰ํ•ด ๋ด…๋‹ˆ๋‹ค.

ctx stats

์—ฌ๊ธฐ์„œ ์ค‘์š”ํ•œ ๊ฒƒ์€ ์ˆซ์ž ํ•˜๋‚˜์— ์ง‘์ฐฉํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ปจํ…์ŠคํŠธ ์ ˆ๊ฐ ํšจ๊ณผ๋Š” ์ž‘์—… ๋ฐฉ์‹์— ๋”ฐ๋ผ ๋‹ฌ๋ผ์ง‘๋‹ˆ๋‹ค. ๋Œ€์‹  ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ณ€ํ™”๊ฐ€ ์žˆ๋Š”์ง€ ๋ณด์„ธ์š”.

  • Claude๊ฐ€ ํฐ ํŒŒ์ผ์„ ๋ฌด์ž‘์ • ์—ด์ง€ ์•Š๋Š”๋‹ค.
  • ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ ์ค‘์‹ฌ์œผ๋กœ ํŒ๋‹จํ•œ๋‹ค.
  • ๊ธด ๋กœ๊ทธ๋ฅผ ํ†ต์งธ๋กœ ์ฝ๊ธฐ๋ณด๋‹ค ํ•„์š”ํ•œ ์ค„๋งŒ ๋ณธ๋‹ค.
  • ๊ฐ™์€ ํ”„๋กœ์ ํŠธ ๊ทœ์น™์„ ๋ฐ˜๋ณตํ•ด์„œ ์„ค๋ช…ํ•˜์ง€ ์•Š์•„๋„ ๋œ๋‹ค.

์ด ๋„ค ๊ฐ€์ง€๊ฐ€ ์žกํžˆ๋ฉด ์„ธํŒ… ํšจ๊ณผ๋Š” ์ถฉ๋ถ„ํžˆ ๋‚˜์˜ค๊ณ  ์žˆ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.


์‹ค์ œ๋กœ ์จ ๋ณด๋ฉด ์ข‹์€ ์š”์ฒญ ๋ฐฉ์‹

์„ธํŒ…๋งŒํผ ์ค‘์š”ํ•œ ๊ฒƒ์ด ์š”์ฒญ ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค. ๊ฐ™์€ ์ผ์„ ์‹œ์ผœ๋„ ์–ด๋–ป๊ฒŒ ๋งํ•˜๋А๋ƒ์— ๋”ฐ๋ผ ์ปจํ…์ŠคํŠธ ์‚ฌ์šฉ๋Ÿ‰์ด ํฌ๊ฒŒ ๋‹ฌ๋ผ์ง‘๋‹ˆ๋‹ค.

์ข‹์€ ์˜ˆ์‹œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์ „์ฒด ํŒŒ์ผ์„ ๋‹ค ์ฝ์ง€ ๋ง๊ณ , ๋จผ์ € ๊ด€๋ จ ํŒŒ์ผ์„ ๊ฒ€์ƒ‰ํ•ด์„œ ํ›„๋ณด๋ฅผ ์ขํžŒ ๋‹ค์Œ ์ˆ˜์ •ํ•ด์ค˜.
์ด ๋กœ๊ทธ์—์„œ ์—๋Ÿฌ ์›์ธ์œผ๋กœ ๋ณด์ด๋Š” ๋ถ€๋ถ„๋งŒ ์ถ”๋ ค์„œ ์„ค๋ช…ํ•ด์ค˜.
๋ณ€๊ฒฝ ์ „์— ๊ด€๋ จ ํ•จ์ˆ˜๊ฐ€ ์–ด๋””์„œ ํ˜ธ์ถœ๋˜๋Š”์ง€ ๊ฒ€์ƒ‰์œผ๋กœ ํ™•์ธํ•ด์ค˜.
ํฐ ํŒŒ์ผ์€ ํ•„์š”ํ•œ ํ•จ์ˆ˜ ์ฃผ๋ณ€๋งŒ ์ฝ์–ด์ค˜.

๋ฐ˜๋Œ€๋กœ ์•„๋ž˜ ์š”์ฒญ์€ ์ปจํ…์ŠคํŠธ๋ฅผ ๋งŽ์ด ์“ฐ๊ธฐ ์‰ฝ์Šต๋‹ˆ๋‹ค.

ํ”„๋กœ์ ํŠธ ์ „์ฒด๋ฅผ ๋‹ค ๋ณด๊ณ  ๋ฌธ์ œ์  ์•Œ๋ ค์ค˜.
์ด ๋กœ๊ทธ ์ „์ฒด ๋ถ„์„ํ•ด์ค˜.
๋ชจ๋“  ํŒŒ์ผ ์—ด์–ด์„œ ๊ตฌ์กฐ ํŒŒ์•…ํ•ด์ค˜.

๋ฌผ๋ก  ์ •๋ง ์ „์ฒด ๋ถ„์„์ด ํ•„์š”ํ•œ ์ˆœ๊ฐ„๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ๋งค๋ฒˆ ๊ทธ๋ ‡๊ฒŒ ์‹œ์ž‘ํ•˜๋ฉด ์ปจํ…์ŠคํŠธ๊ฐ€ ๋น ๋ฅด๊ฒŒ ์ค„์–ด๋“ญ๋‹ˆ๋‹ค. ๋จผ์ € ๊ฒ€์ƒ‰์œผ๋กœ ๋ฒ”์œ„๋ฅผ ์ขํžˆ๊ณ , ํ•„์š”ํ•œ ํŒŒ์ผ๋งŒ ์ฝํžˆ๋Š” ์Šต๊ด€์ด ์ข‹์Šต๋‹ˆ๋‹ค.


CLAUDE.md/AGENTS.md์— ๋„ฃ์œผ๋ฉด ์ข‹์€ ๋‚ด์šฉ

๊ทœ์น™ ํŒŒ์ผ์—๋Š” ๋ชจ๋“  ๊ฒƒ์„ ์ ์„ ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. Claude๊ฐ€ ์ž‘์—…ํ•  ๋•Œ ์ž์ฃผ ํ—ท๊ฐˆ๋ฆด ๋งŒํ•œ ๊ฒƒ๋งŒ ๋„ฃ์œผ๋ฉด ๋ฉ๋‹ˆ๋‹ค.

์ถ”์ฒœ ํ•ญ๋ชฉ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  • ํ”„๋กœ์ ํŠธ ์‹คํ–‰ ๋ช…๋ น์–ด
  • ํ…Œ์ŠคํŠธ ๋ช…๋ น์–ด
  • ๋นŒ๋“œ ๋ช…๋ น์–ด
  • ํŒจํ‚ค์ง€ ๋งค๋‹ˆ์ € ๊ธฐ์ค€
  • ์ฝ”๋“œ ์Šคํƒ€์ผ
  • ์ˆ˜์ •ํ•˜๋ฉด ์•ˆ ๋˜๋Š” ํŒŒ์ผ
  • ์ž์ฃผ ๋ฐœ์ƒํ•˜๋Š” ๋นŒ๋“œ ์ด์Šˆ
  • ๋ฐฐํฌ ์ „ ํ™•์ธ ํ•ญ๋ชฉ
  • UI ์ž‘์—… ์‹œ ์ง€์ผœ์•ผ ํ•  ๋””์ž์ธ ๋ฐฉํ–ฅ

์˜ˆ์‹œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

# Project Guide

## Commands
- Install: `bun install`
- Dev: `bun run dev`
- Build: `bun run build`
- Test: `bun test`

## Rules
- Keep edits focused.
- Do not change generated files manually.
- Do not add dependencies without explaining why.
- Prefer searching before opening large files.

## Before Finishing
- Run the smallest relevant verification command.
- Summarize changed files and why they changed.

์ดˆ๋ณด์ž๋ผ๋ฉด ์ฒ˜์Œ์—๋Š” ์ด ์ •๋„๋งŒ ์ ์–ด๋„ ์ถฉ๋ถ„ํ•ฉ๋‹ˆ๋‹ค. ํ”„๋กœ์ ํŠธ๋ฅผ ์ง„ํ–‰ํ•˜๋ฉด์„œ ํ•„์š”ํ•œ ๊ทœ์น™์„ ์กฐ๊ธˆ์”ฉ ์ถ”๊ฐ€ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.


ํ”ํ•œ ์‹ค์ˆ˜์™€ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•

1. MCP ์„ค์ • ํ›„ Claude Code๋ฅผ ์žฌ์‹œ์ž‘ํ•˜์ง€ ์•Š์Œ

MCP ์„ค์ •์„ ๋ฐ”๊ฟจ๋Š”๋ฐ ๋„๊ตฌ๊ฐ€ ๋ณด์ด์ง€ ์•Š๋Š”๋‹ค๋ฉด Claude Code๋ฅผ ์žฌ์‹œ์ž‘ํ•ด ๋ณด์„ธ์š”. ์„ค์ • ํŒŒ์ผ์€ ์ €์žฅํ–ˆ์ง€๋งŒ ์‹คํ–‰ ์ค‘์ธ ์„ธ์…˜์—๋Š” ๋ฐ˜์˜๋˜์ง€ ์•Š์•˜์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

2. CLAUDE.md๋ฅผ ๋„ˆ๋ฌด ๊ธธ๊ฒŒ ์ž‘์„ฑํ•จ

๊ทœ์น™ ํŒŒ์ผ์ด ๋„ˆ๋ฌด ๊ธธ๋ฉด ์˜คํžˆ๋ ค ๋งค๋ฒˆ ์ฝ์–ด์•ผ ํ•  ์ •๋ณด๊ฐ€ ๋งŽ์•„์ง‘๋‹ˆ๋‹ค. ํ”„๋กœ์ ํŠธ์— ๊ผญ ํ•„์š”ํ•œ ๊ทœ์น™๋งŒ ๋‚จ๊ธฐ๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

3. npm๊ณผ Bun์„ ์„ž์–ด์„œ ์‚ฌ์šฉํ•จ

ํ•œ ํ”„๋กœ์ ํŠธ์—์„œ package-lock.json, bun.lock, yarn.lock์ด ๋’ค์„ž์ด๋ฉด ์˜์กด์„ฑ ๊ด€๋ฆฌ๊ฐ€ ๊ผฌ์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํŒ€ ํ”„๋กœ์ ํŠธ๋ผ๋ฉด ๊ธฐ์กด ๋ฐฉ์‹์„ ๋”ฐ๋ฅด๊ณ , ๊ฐœ์ธ ํ”„๋กœ์ ํŠธ๋ผ๋ฉด ํ•˜๋‚˜๋กœ ์ •ํ•ด ๋‘์„ธ์š”.

4. ๋กœ๊ทธ๋ฅผ ๊ทธ๋Œ€๋กœ ๋ถ™์—ฌ ๋„ฃ๋Š” ์Šต๊ด€์„ ์œ ์ง€ํ•จ

context-mode๋ฅผ ์„ค์น˜ํ•ด๋„ ์‚ฌ์šฉ ์Šต๊ด€์ด ๊ทธ๋Œ€๋กœ๋ผ๋ฉด ํšจ๊ณผ๊ฐ€ ์ค„์–ด๋“ญ๋‹ˆ๋‹ค. ๊ธด ๋กœ๊ทธ๋Š” ํŒŒ์ผ๋กœ ๋‘๊ณ , Claude์—๊ฒŒ ํ•„์š”ํ•œ ๋ถ€๋ถ„๋งŒ ๊ฒ€์ƒ‰ํ•˜๊ฒŒ ํ•˜๋Š” ํŽธ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

5. โ€œํ”„๋กœ์ ํŠธ ์ „์ฒด๋ฅผ ๋ด์ค˜โ€๋กœ ์‹œ์ž‘ํ•จ

์ฒ˜์Œ๋ถ€ํ„ฐ ์ „์ฒด ๋ถ„์„์„ ์‹œํ‚ค๊ธฐ๋ณด๋‹ค, ์ฆ์ƒ๊ณผ ๊ด€๋ จ๋œ ํ‚ค์›Œ๋“œ, ํŒŒ์ผ๋ช…, ์—๋Ÿฌ ๋ฉ”์‹œ์ง€๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์ขํ˜€ ๊ฐ€๋Š” ํŽธ์ด ์ข‹์Šต๋‹ˆ๋‹ค.


๊ฐœ์ธ์ ์œผ๋กœ ์ถ”์ฒœํ•˜๋Š” ๊ธฐ๋ณธ ์„ธํŒ…

์ฒ˜์Œ ์‹œ์ž‘ํ•œ๋‹ค๋ฉด ๋„ˆ๋ฌด ๋ณต์žกํ•˜๊ฒŒ ๊ฐ€์ง€ ๋ง๊ณ  ์•„๋ž˜ ์ˆœ์„œ๋กœ ์ ์šฉํ•˜๋Š” ๊ฒƒ์„ ์ถ”์ฒœํ•ฉ๋‹ˆ๋‹ค.

  1. Bun ์„ค์น˜
  2. context-mode ์„ค์น˜
  3. Claude MCP์— context-mode ๋“ฑ๋ก
  4. ํ”„๋กœ์ ํŠธ ๋ฃจํŠธ์— CLAUDE.md ์ž‘์„ฑ
  5. ํฐ ํŒŒ์ผ์„ ์—ด๊ธฐ ์ „์— ๊ฒ€์ƒ‰๋ถ€ํ„ฐ ํ•˜๋„๋ก ์š”์ฒญ ์Šต๊ด€ ๋ฐ”๊พธ๊ธฐ
  6. ํ•„์š”ํ•ด์ง€๋ฉด Hooks ์ถ”๊ฐ€

์ฒ˜์Œ๋ถ€ํ„ฐ Hooks์™€ ๊ณ ๊ธ‰ ์„ค์ •๊นŒ์ง€ ์™„๋ฒฝํ•˜๊ฒŒ ๋งž์ถ”๋ ค๊ณ  ํ•˜๋ฉด ์˜คํžˆ๋ ค ์ค‘๊ฐ„์— ์ง€์น  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋จผ์ € ๊ธฐ๋ณธ ํ๋ฆ„์„ ๋งŒ๋“ค๊ณ , ์‹ค์ œ ํ”„๋กœ์ ํŠธ์—์„œ ๋ถˆํŽธํ•œ ์ง€์ ์„ ํ•˜๋‚˜์”ฉ ๋ณด์™„ํ•˜๋Š” ๋ฐฉ์‹์ด ๊ฐ€์žฅ ์˜ค๋ž˜ ๊ฐ‘๋‹ˆ๋‹ค.


๋งˆ๋ฌด๋ฆฌ

Claude Code๋ฅผ ์ž˜ ์“ฐ๋Š” ํ•ต์‹ฌ์€ โ€œAI์—๊ฒŒ ๋งŽ์ด ๋ณด์—ฌ ์ฃผ๋Š” ๊ฒƒโ€์ด ์•„๋‹ˆ๋ผ โ€œAI๊ฐ€ ํ•„์š”ํ•œ ๊ฒƒ์„ ์ •ํ™•ํžˆ ๋ณด๊ฒŒ ํ•˜๋Š” ๊ฒƒโ€์ž…๋‹ˆ๋‹ค.

context-mode๋Š” ํฐ ํŒŒ์ผ๊ณผ ๊ธด ๋กœ๊ทธ๋ฅผ ๋‹ค๋ฃฐ ๋•Œ ์ปจํ…์ŠคํŠธ ๋‚ญ๋น„๋ฅผ ์ค„์—ฌ ์ค๋‹ˆ๋‹ค. Bun์€ ๋น ๋ฅธ ์‹คํ–‰ ํ™˜๊ฒฝ๊ณผ ํŒจํ‚ค์ง€ ๊ด€๋ฆฌ ํ๋ฆ„์„ ๋งŒ๋“ค์–ด ์ค๋‹ˆ๋‹ค. CLAUDE.md์™€ AGENTS.md๋Š” ํ”„๋กœ์ ํŠธ๋งˆ๋‹ค ๋ฐ˜๋ณต๋˜๋Š” ๊ทœ์น™ ์„ค๋ช…์„ ์ค„์—ฌ ์ค๋‹ˆ๋‹ค.

์ด ์„ธ ๊ฐ€์ง€๋ฅผ ํ•จ๊ป˜ ์“ฐ๋ฉด Claude Code๊ฐ€ ๋” ๊ฐ€๋ณ๊ณ  ์ผ๊ด€๋˜๊ฒŒ ์›€์ง์ž…๋‹ˆ๋‹ค. ํŠนํžˆ ํ”„๋กœ์ ํŠธ๊ฐ€ ์ปค์งˆ์ˆ˜๋ก ์ฐจ์ด๊ฐ€ ์ปค์ง‘๋‹ˆ๋‹ค.

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

ํฐ ํŒŒ์ผ์„ ๋ฐ”๋กœ ์—ด์ง€ ๋ง๊ณ , ๋จผ์ € ๊ฒ€์ƒ‰์œผ๋กœ ๊ด€๋ จ ์œ„์น˜๋ฅผ ์ขํžŒ ๋‹ค์Œ ํ•„์š”ํ•œ ๋ถ€๋ถ„๋งŒ ์ฝ์–ด์„œ ์ž‘์—…ํ•ด์ค˜.

์ด ํ•œ ๋ฌธ์žฅ๋งŒ ์Šต๊ด€์ด ๋˜์–ด๋„ Claude Code๋ฅผ ์“ฐ๋Š” ๋ฐฉ์‹์ด ๊ฝค ๋‹ฌ๋ผ์ง‘๋‹ˆ๋‹ค.

profile
iOS ์•ฑ ๊ฐœ๋ฐœ์ž

0๊ฐœ์˜ ๋Œ“๊ธ€