GEMINI.md ๋ž€?

GEMINI.md ํŒŒ์ผ์€ Gemini ๋ชจ๋ธ์— ์ œ๊ณต๋˜๋Š” โ€œ์ง€์‹œ์  ์ปจํ…์ŠคํŠธโ€ ๋˜๋Š” โ€œ๋ฉ”๋ชจ๋ฆฌโ€๋ฅผ ์„ค์ •ํ•˜๋Š” ํ•ต์‹ฌ์ ์ธ ์—ญํ• ์„ ํ•จ. ์ด ํŒŒ์ผ์„ ํ†ตํ•ด ํ”„๋กœ์ ํŠธ๋ณ„ ์ง€์นจ, ์ฝ”๋”ฉ ์Šคํƒ€์ผ ๊ฐ€์ด๋“œ, ๊ด€๋ จ ๋ฐฐ๊ฒฝ ์ •๋ณด ๋“ฑ์„ AI์— ๋ฏธ๋ฆฌ ์•Œ๋ ค์ฃผ์–ด, ์‚ฌ์šฉ์ž์˜ ์š”๊ตฌ์— ๋” ์ •ํ™•ํ•˜๊ณ  ๋งž์ถคํ™”๋œ ๋‹ต๋ณ€์„ ์ƒ์„ฑํ•˜๋„๋ก ๋งŒ๋“ค ์ˆ˜ ์žˆ์Œ.

CLI ํ™”๋ฉด ํ•˜๋‹จ์—๋Š” ํ˜„์žฌ ๋กœ๋“œ๋œ ์ปจํ…์ŠคํŠธ ํŒŒ์ผ์˜ ๊ฐœ์ˆ˜๊ฐ€ ํ‘œ์‹œ๋˜์–ด ํ™œ์„ฑํ™”๋œ ์ปจํ…์ŠคํŠธ๋ฅผ ์‰ฝ๊ฒŒ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Œ.

์˜ˆ์‹œ

์•„๋ž˜๋Š” GEMINI.md ํŒŒ์ผ์˜ ์˜ˆ์‹œ์ž„. ํ”„๋กœ์ ํŠธ ๊ฐœ์š”, ์ผ๋ฐ˜ ์ง€์นจ, ์ฝ”๋”ฉ ์Šคํƒ€์ผ, ํŠน์ • ์ปดํฌ๋„ŒํŠธ ๊ทœ์น™ ๋“ฑ์„ ์ •์˜ํ•  ์ˆ˜ ์žˆ์Œ.

# ํ”„๋กœ์ ํŠธ: My Awesome TypeScript Library
 
## ์ผ๋ฐ˜ ์ง€์นจ:
 
- ์ƒˆ๋กœ์šด TypeScript ์ฝ”๋“œ ์ƒ์„ฑ ์‹œ ๊ธฐ์กด ์ฝ”๋”ฉ ์Šคํƒ€์ผ์„ ๋”ฐ๋ผ์ฃผ์„ธ์š”.
- ๋ชจ๋“  ์ƒˆ ํ•จ์ˆ˜์™€ ํด๋ž˜์Šค์—๋Š” JSDoc ์ฃผ์„์„ ํฌํ•จํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
- ์ ์ ˆํ•œ ๊ฒฝ์šฐ ํ•จ์ˆ˜ํ˜• ํ”„๋กœ๊ทธ๋ž˜๋ฐ ํŒจ๋Ÿฌ๋‹ค์ž„์„ ์„ ํ˜ธํ•ฉ๋‹ˆ๋‹ค.
- ๋ชจ๋“  ์ฝ”๋“œ๋Š” TypeScript 5.0 ๋ฐ Node.js 18+์™€ ํ˜ธํ™˜๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
 
## ์ฝ”๋”ฉ ์Šคํƒ€์ผ:
 
- ๋“ค์—ฌ์“ฐ๊ธฐ๋Š” 2์นธ ๊ณต๋ฐฑ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
- ์ธํ„ฐํŽ˜์ด์Šค ์ด๋ฆ„ ์•ž์—๋Š” `I`๋ฅผ ๋ถ™์ž…๋‹ˆ๋‹ค. (์˜ˆ: `IUserService`)
- ๋น„๊ณต๊ฐœ ํด๋ž˜์Šค ๋ฉค๋ฒ„ ์•ž์—๋Š” ์–ธ๋”์Šค์ฝ”์–ด(`_`)๋ฅผ ๋ถ™์ž…๋‹ˆ๋‹ค.
- ํ•ญ์ƒ ์—„๊ฒฉํ•œ ๋™๋“ฑ์„ฑ(`===` ๋ฐ `!==`)์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
 
## ํŠน์ • ์ปดํฌ๋„ŒํŠธ: `src/api/client.ts`
 
- ์ด ํŒŒ์ผ์€ ๋ชจ๋“  ์™ธ๋ถ€ API ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค.
- ์ƒˆ๋กœ์šด API ํ˜ธ์ถœ ํ•จ์ˆ˜ ์ถ”๊ฐ€ ์‹œ ๊ฐ•๋ ฅํ•œ ์˜ค๋ฅ˜ ์ฒ˜๋ฆฌ ๋ฐ ๋กœ๊น…์„ ํฌํ•จํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
- ๋ชจ๋“  GET ์š”์ฒญ์—๋Š” ๊ธฐ์กด `fetchWithRetry` ์œ ํ‹ธ๋ฆฌํ‹ฐ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

GEMINI.md ํŒŒ์ผ ์œ„์น˜ ๋ฐ ๊ณ„์ธต ๊ตฌ์กฐ

GEMINI.md ํŒŒ์ผ์€ ์—ฌ๋Ÿฌ ์œ„์น˜์— ์กด์žฌํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, Gemini CLI๋Š” ์ด๋“ค์„ ๋ชจ๋‘ ์ฐพ์•„ ํ•˜๋‚˜์˜ ์ง€์นจ ์„ธํŠธ๋กœ ๊ฒฐํ•ฉํ•จ. ๊ณ„์ธต ๊ตฌ์กฐ๋ฅผ ๊ฐ€์ง€๋ฉฐ, ๊ฒ€์ƒ‰ ์ˆœ์„œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Œ. ํ•˜์œ„ ๋””๋ ‰ํ† ๋ฆฌ(๋” ๊ตฌ์ฒด์ ์ธ) ํŒŒ์ผ์˜ ๋‚ด์šฉ์ด ์ƒ์œ„ ๋””๋ ‰ํ† ๋ฆฌ(๋” ์ผ๋ฐ˜์ ์ธ) ํŒŒ์ผ์˜ ๋‚ด์šฉ์„ ๋ฎ์–ด์“ฐ๊ฑฐ๋‚˜ ๋ณด์™„ํ•จ.

  • ์ „์—ญ ์ปจํ…์ŠคํŠธ ํŒŒ์ผ: ํ™ˆ ๋””๋ ‰ํ† ๋ฆฌ์˜ ~/.gemini/GEMINI.md์— ์œ„์น˜ํ•˜๋ฉฐ ๋ชจ๋“  ํ”„๋กœ์ ํŠธ์— ์ ์šฉ๋˜๋Š” ๊ทœ์น™์„ ๋‹ด์Œ.
  • ํ”„๋กœ์ ํŠธ ๋ฐ ์ƒ์œ„ ์ปจํ…์ŠคํŠธ ํŒŒ์ผ: ํ”„๋กœ์ ํŠธ์˜ ๋ฃจํŠธ ๋””๋ ‰ํ† ๋ฆฌ์— ์œ„์น˜ํ•˜๋ฉฐ ํ”„๋กœ์ ํŠธ ์ „๋ฐ˜์˜ ๊ทœ์น™์„ ๋‹ด์Œ.
  • ๋กœ์ปฌ ์ปจํ…์ŠคํŠธ ํŒŒ์ผ: ํ•˜์œ„ ๋””๋ ‰ํ† ๋ฆฌ์— ์œ„์น˜ํ•˜๋ฉฐ ํŠน์ • ๋ชจ๋“ˆ์ด๋‚˜ ์ปดํฌ๋„ŒํŠธ์— ๋Œ€ํ•œ ๋งค์šฐ ๊ตฌ์ฒด์ ์ธ ์ง€์นจ์„ ๋‹ด์Œ.

์ปจํ…์ŠคํŠธ ์ƒˆ๋กœ๊ณ ์นจ

GEMINI.md ํŒŒ์ผ์„ ์™ธ๋ถ€ ํŽธ์ง‘๊ธฐ์—์„œ ์ˆ˜์ •ํ•œ ๊ฒฝ์šฐ, CLI ๋‚ด์—์„œ ์•„๋ž˜ ๋ช…๋ น์–ด๋ฅผ ํ†ตํ•ด ๋‹ค์‹œ ๋ถˆ๋Ÿฌ์™€์•ผ ํ•จ.

/memory refresh

์œ„ ๋‚ด์šฉ์€ ์•„๋ž˜ ๊ธ€๋“ค์„ ๊ธฐ๋ฐ˜์œผ๋กœ ์ •๋ฆฌํ•œ ๋‚ด์šฉ์ž„.