Skip to content

wnsdk/sleepcode

Repository files navigation

SleepCode

Local-first multi-agent coding orchestration for git repos

SleepCode๋Š” task_queue.md ๋˜๋Š” Notion DB๋ฅผ backlog๋กœ ์‚ฌ์šฉํ•ด ์—ฌ๋Ÿฌ AI ์ฝ”๋”ฉ ์›Œ์ปค๋ฅผ git worktree์—์„œ ๋ณ‘๋ ฌ ์‹คํ–‰ํ•˜๊ณ , ์™„๋ฃŒ ๋กœ๊ทธ, ์ปค๋ฐ‹, ์ž๋™ ๋จธ์ง€, ๋น„์šฉ ์ถ”์ ๊นŒ์ง€ ๊ด€๋ฆฌํ•˜๋Š” CLI์ž…๋‹ˆ๋‹ค.

์ฑ„ํŒ…ํ˜• IDE ๋„๊ตฌ๊ฐ€ ์•„๋‹ˆ๋ผ, ๋กœ์ปฌ ์ €์žฅ์†Œ์—์„œ backlog ๊ธฐ๋ฐ˜ ๊ฐœ๋ฐœ ์ž‘์—…์„ ์šด์˜ํ•˜๋Š” ์˜ค์ผ€์ŠคํŠธ๋ ˆ์ด์…˜ ๋ ˆ์ด์–ด์— ๊ฐ€๊น์Šต๋‹ˆ๋‹ค.

ํ•ต์‹ฌ ๊ฐ€์น˜

  • task_queue.md ๋˜๋Š” Notion DB๋ฅผ backlog๋กœ ์‚ฌ์šฉ
  • ์›Œ์ปค๋ณ„ git worktree ๋ถ„๋ฆฌ๋กœ ๋ณ‘๋ ฌ ์ž‘์—… ์‹คํ–‰
  • ์™„๋ฃŒ ๋กœ๊ทธ append-only ๊ธฐ๋ก + ์ž๋™ ์ปค๋ฐ‹/์ž๋™ ๋จธ์ง€
  • Claude/Codex BYO provider + ๋ชจ๋ธ/์˜ˆ์‚ฐ ์ œ์–ด

์‚ฌ์šฉ๋ฒ•

# ์‹คํ–‰
npx sleepcode run

๊ธฐ๋ณธ ํ๋ฆ„

cd my-project
npx sleepcode init     # ์ดˆ๊ธฐํ™” (์ตœ์ดˆ 1ํšŒ)
npx sleepcode run      # ์‹คํ–‰
  1. ํ”„๋กœ์ ํŠธ ๋ฃจํŠธ์—์„œ npx sleepcode init โ†’ ์ธํ„ฐ๋ž™ํ‹ฐ๋ธŒ ์ดˆ๊ธฐํ™”
  2. .sleepcode/task_queue.md์— ์ž‘์—… ๋ชฉ๋ก ์ž‘์„ฑ (๋˜๋Š” Notion DB์—์„œ ๊ด€๋ฆฌ)
  3. npx sleepcode run โ†’ AI๊ฐ€ ํ•ญ์ƒ ๋ณ‘๋ ฌ ์›Œ์ปค ๋ชจ๋ธ๋กœ ํƒœ์Šคํฌ๋ฅผ ์ˆ˜ํ–‰

task_queue.md ์ž‘์„ฑ

.sleepcode/task_queue.md:

# ์ž‘์—… ๋ชฉ๋ก

- [ ] ๋กœ๊ทธ์ธ ํ™”๋ฉด ๊ตฌํ˜„
- [ ] ํšŒ์›๊ฐ€์ž… API ์—ฐ๋™
- [ ] ํ™ˆ ํ™”๋ฉด UI ๊ฐœ์„ 

task_queue.md๋Š” backlog(์ฝ๊ธฐ ์ „์šฉ)๋กœ ์œ ์ง€ํ•˜๊ณ , ์™„๋ฃŒ ์ฒดํฌ๋Š” .sleepcode/task_done/<branch>.md์— append-only๋กœ ๊ธฐ๋กํ•ฉ๋‹ˆ๋‹ค. ๋ธŒ๋žœ์น˜๋ณ„ ํŒŒ์ผ์„ ์‚ฌ์šฉํ•˜๋ฉด ๋ณ‘๋ ฌ ๋ธŒ๋žœ์น˜ ๋จธ์ง€ ์‹œ task_queue.md ์ถฉ๋Œ์„ ํ”ผํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ sleepcode๋Š” .gitattributes์— task_queue/task_done์šฉ merge=union ๊ทœ์น™์„ ์ž๋™ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค. ํƒœ์Šคํฌ ์™„๋ฃŒ ํ›„ ์ƒ์„ฑ๋˜๋Š” ์ž๋™ ์ปค๋ฐ‹ ์ œ๋ชฉ์€ prefix: message ํ˜•์‹์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.


๋ณ‘๋ ฌ ์‹คํ–‰

์—ฌ๋Ÿฌ ๊ธฐ๋Šฅ์„ ๋™์‹œ์— ๊ฐœ๋ฐœํ•ฉ๋‹ˆ๋‹ค. ๊ฐ ์›Œ์ปค๊ฐ€ ๋…๋ฆฝ๋œ git worktree์—์„œ ์ž‘์—…ํ•˜๋ฏ€๋กœ ์ถฉ๋Œ ์—†์ด ๋™์‹œ ์ง„ํ–‰๋ฉ๋‹ˆ๋‹ค.

task_queue.md์— @worker๋กœ ์›Œ์ปค๋ณ„ ํƒœ์Šคํฌ๋ฅผ ๋‚˜๋ˆ•๋‹ˆ๋‹ค:

## @worker feature-auth
- [ ] ๋กœ๊ทธ์ธ ํ™”๋ฉด ๊ตฌํ˜„
- [ ] JWT ํ† ํฐ ๊ด€๋ฆฌ

## @worker feature-home
- [ ] ํ™ˆ ํ™”๋ฉด ๋ ˆ์ด์•„์›ƒ
- [ ] ์ƒํ’ˆ ๋ชฉ๋ก API ์—ฐ๋™

## @worker bugfix
- [ ] ์žฅ๋ฐ”๊ตฌ๋‹ˆ ์ˆ˜๋Ÿ‰ ๋ฒ„๊ทธ ์ˆ˜์ •

@worker main์€ ๋ณ„๋„ sleepcode/main ๋ธŒ๋žœ์น˜๋ฅผ ๋งŒ๋“ค์ง€ ์•Š๊ณ  ํ˜„์žฌ ์ฒดํฌ์•„์›ƒ๋œ ๋ธŒ๋žœ์น˜(๋ณดํ†ต main)์—์„œ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค. ๋ชจ๋“  ์›Œ์ปค๊ฐ€ ์ข…๋ฃŒ๋œ ๊ฒƒ์ด ํ™•์ธ๋˜๋ฉด ์™„๋ฃŒ๋œ ๋ธŒ๋žœ์น˜๋“ค์„ ํ•œ๊บผ๋ฒˆ์— ๋ณ‘ํ•ฉํ•˜๋ฉฐ, ์ถฉ๋Œ์ด ๋‚˜๋ฉด ๊ธฐ๋ณธ AI๋กœ ์ž๋™ ํ•ด๊ฒฐ๊ณผ merge commit๊นŒ์ง€ ์‹œ๋„ํ•ฉ๋‹ˆ๋‹ค.

npx sleepcode run                   # ๋ณ‘๋ ฌ ์‹คํ–‰
npx sleepcode run --setup           # worktree๋งŒ ์ƒ์„ฑ (์‹คํ–‰ ์ „ ํ™•์ธ)
npx sleepcode run --merge           # ์™„๋ฃŒ๋œ ๋ธŒ๋žœ์น˜ ์ž๋™ ๋จธ์ง€
npx sleepcode run --clean           # worktree ์ •๋ฆฌ
npx sleepcode run --status          # ์›Œ์ปค ์ƒํƒœ ํ™•์ธ
npx sleepcode run --stop-worker bugfix  # ํŠน์ • ์›Œ์ปค ์ฆ‰์‹œ ์ข…๋ฃŒ

์‹ค์‹œ๊ฐ„ ๋Œ€์‹œ๋ณด๋“œ

โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
โ”‚ โ– sleepcode โ–Œ parallel  3/3 workers                โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚ โŸณ feature-auth    โ”โ”โ”โ”โ”โ”โ”โ”โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ 2/4            โ”‚
โ”‚   > JWT ํ† ํฐ ๊ด€๋ฆฌ                                  โ”‚
โ”‚ โŸณ feature-home    โ”โ”โ”โ”โ”โ”โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ 1/3            โ”‚
โ”‚   > ์ƒํ’ˆ ๋ชฉ๋ก API ์—ฐ๋™                              โ”‚
โ”‚ โœ“ bugfix           โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ” 1/1            โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚ ๋น„์šฉ: $0.45 ยท ๊ฒฝ๊ณผ: 12m 34s ยท ์ง„ํ–‰: 4/8           โ”‚
โ”‚ ์ฃผ๊ฐ„: $12.34/$50 (24%) โ”โ”โ”โ”โ”โ”โ”€โ”€โ”€โ”€โ”€โ”€                โ”‚
โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ
 โ”€โ”€โ”€ logs โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
 [feature-auth] JWT ํ† ํฐ ์ €์žฅ ๋กœ์ง์„ ๊ตฌํ˜„ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค...
 [feature-home] Edit: src/screens/HomeScreen.tsx

์ฃผ๊ฐ„ ์˜ˆ์‚ฐ ๊ด€๋ฆฌ

API ๋น„์šฉ์„ ์ถ”์ ํ•˜๊ณ  ์ฃผ๊ฐ„ ํ•œ๋„๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

# ์ดˆ๊ธฐํ™” ์‹œ ์˜ˆ์‚ฐ ์„ค์ •
npx sleepcode init --budget 50 --threshold 90

# ์‚ฌ์šฉ๋Ÿ‰ ํ™•์ธ
npx sleepcode usage
๐Ÿ“Š ์ฃผ๊ฐ„ ์‚ฌ์šฉ๋Ÿ‰ ๋ฆฌํฌํŠธ
โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
  ์ฃผ๊ฐ„ ์‹œ์ž‘: 2026-03-02 (์›”)
  ์ด ๋น„์šฉ:   $12.34
  ์ฃผ๊ฐ„ ์˜ˆ์‚ฐ: $50.00 (์ž„๊ณ„๊ฐ’: 90%)
  ์‚ฌ์šฉ๋ฅ :    24.7%
  โ”โ”โ”โ”โ”โ”โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ 24.7%
  โœ… ์˜ˆ์‚ฐ ๋ฒ”์œ„ ๋‚ด ($32.66 ๋‚จ์Œ)
  • ๋งค์ฃผ ์›”์š”์ผ ๊ธฐ์ค€์œผ๋กœ ์‚ฌ์šฉ๋Ÿ‰ ๋ฆฌ์…‹
  • ์ž„๊ณ„๊ฐ’ ๋„๋‹ฌ ์‹œ ์ง„ํ–‰ ์ค‘์ธ ํƒœ์Šคํฌ๊นŒ์ง€๋งŒ ์™„๋ฃŒ ํ›„ ์ข…๋ฃŒ

์„ค์น˜

npm install -g sleepcode

๋˜๋Š” npx๋กœ ๋ฐ”๋กœ ์‹คํ–‰:

npx sleepcode init

# ๊ธฐ์กด ๋ณ„์นญ๋„ ๊ณ„์† ๋™์ž‘
npx sleepcode

์‚ฌ์ „ ์ค€๋น„

npx sleepcode init ์‹คํ–‰ ์‹œ ์ž๋™์œผ๋กœ ํ•„์ˆ˜ ๋„๊ตฌ๋ฅผ ์ฒดํฌํ•ฉ๋‹ˆ๋‹ค.

๋„๊ตฌ ์šฉ๋„ ํ•„์ˆ˜
Node.js 18+ CLI ์‹คํ–‰ โœ…
Claude CLI AI ์ฝ”๋“œ ์ž‘์„ฑ โœ… (์ž๋™ ์„ค์น˜ ์ œ์•ˆ)
Python 3 ๋กœ๊ทธ ํ•„ํ„ฐ โœ…
Git ์ฝ”๋“œ ์ปค๋ฐ‹ โœ…
tmux ๋ฐฑ๊ทธ๋ผ์šด๋“œ ์„ธ์…˜ ์„ ํƒ
# Claude CLI ๊ถŒํ•œ ์„ค์ • (์ตœ์ดˆ 1ํšŒ)
claude --dangerously-skip-permissions
# ๋™์˜ ํ”„๋กฌํ”„ํŠธ ์ˆ˜๋ฝ ํ›„ Ctrl+C

์ง€์› ํ”„๋กœ์ ํŠธ ํƒ€์ž…

ํƒ€์ž… ์„ค๋ช…
spring-boot Spring Boot (Kotlin/Java) โ€” Gradle ๋นŒ๋“œ/ํ…Œ์ŠคํŠธ
react-native React Native (TypeScript) โ€” tsc ํƒ€์ž…์ฒดํฌ
nextjs Next.js (TypeScript) โ€” npm build/test/lint
godot Godot 4 (GDScript) โ€” ๊ฒŒ์ž„ ๊ฐœ๋ฐœ
sveltekit SvelteKit (TypeScript) โ€” npm build/test/lint
custom ์ง์ ‘ ์„ค์ • โ€” ๋นŒ๋“œ/ํ…Œ์ŠคํŠธ/๋ฆฐํŠธ ๋ช…๋ น์–ด ์ˆ˜๋™ ์ž…๋ ฅ

CLI ๋ช…๋ น์–ด

๋ช…๋ น์–ด ์„ค๋ช…
npx sleepcode init ์ธํ„ฐ๋ž™ํ‹ฐ๋ธŒ ์ดˆ๊ธฐํ™”
npx sleepcode init์˜ ๋ณ„์นญ
npx sleepcode run sleepcode ์‹คํ–‰ (ํ•ญ์ƒ ๋ณ‘๋ ฌ ์‹คํ–‰)
npx sleepcode run --setup worktree๋งŒ ์ƒ์„ฑ (์‹คํ–‰ ์ „ ํ™•์ธ)
npx sleepcode run --merge ์™„๋ฃŒ๋œ ๋ธŒ๋žœ์น˜ ์ž๋™ ๋จธ์ง€
npx sleepcode run --clean worktree ์ •๋ฆฌ
npx sleepcode run --status ์›Œ์ปค ์ƒํƒœ ํ™•์ธ
npx sleepcode run --stop-worker <name> ์‹คํ–‰ ์ค‘์ธ ํŠน์ • ์›Œ์ปค ์ฆ‰์‹œ ์ข…๋ฃŒ
npx sleepcode usage ์ฃผ๊ฐ„ ์‚ฌ์šฉ๋Ÿ‰ ํ™•์ธ
npx sleepcode notion-update ๊ธฐ์กด Notion DB ์ปฌ๋Ÿผ์„ ์ตœ์‹  ๋ฒ„์ „์œผ๋กœ ์—…๋ฐ์ดํŠธ

CLI ์˜ต์…˜

npx sleepcode init --type react-native --name my-app --role "์‡ผํ•‘๋ชฐ ์•ฑ ๊ฐœ๋ฐœ"
์˜ต์…˜ ์„ค๋ช…
--type <type> ํ”„๋กœ์ ํŠธ ํƒ€์ž…
--name <name> ํ”„๋กœ์ ํŠธ ์ด๋ฆ„
--role <desc> AI ์—ญํ•  ์„ค๋ช…
--figma-key <key> Figma API Key (์„ ํƒ)
--figma-file <name> Figma ์ฐธ๊ณ  ํŒŒ์ผ๋ช… (์„ ํƒ)
--notion-key <key> Notion API Key (์„ ํƒ)
--notion-page <name> Notion ์ฐธ๊ณ  ํŽ˜์ด์ง€๋ช… (์„ ํƒ)
--notion-db <id|url> Notion DB ID ๋˜๋Š” URL (ํƒœ์Šคํฌ ๋™๊ธฐํ™”์šฉ)
--notion-filter <f> Notion ํ•„ํ„ฐ (์˜ˆ: "Status = To Do")
--budget <usd> ์ฃผ๊ฐ„ ์˜ˆ์‚ฐ USD
--threshold <pct> ์˜ˆ์‚ฐ ์ž„๊ณ„๊ฐ’ % (๊ธฐ๋ณธ: 90)
-f, --force ๊ธฐ์กด .sleepcode/ ํด๋” ๋ฎ์–ด์“ฐ๊ธฐ
-h, --help ๋„์›€๋ง

์ƒ์„ฑ๋˜๋Š” ํŒŒ์ผ

init ์‹œ ์ƒ์„ฑ

.sleepcode/
  rules.md               # โœ๏ธ AI ์—ญํ•  + ์ž‘์—… ๊ทœ์น™ (์ˆ˜์ •ํ•˜์„ธ์š”)
  .env                   # โš™๏ธ API ํ‚ค (Notion, Figma ๋“ฑ)
  config.json            # โš™๏ธ ์ฃผ๊ฐ„ ์˜ˆ์‚ฐ ์„ค์ • (budget ์„ค์ • ์‹œ)
  task_done/             # โœ๏ธ ์™„๋ฃŒ ๋กœ๊ทธ (append-only, ๋ธŒ๋žœ์น˜๋ณ„ ํŒŒ์ผ)
    main.md
  docs/                  # โœ๏ธ ์ฐธ๊ณ  ์ž๋ฃŒ (ํ”ผ๊ทธ๋งˆ ์Šคํฌ๋ฆฐ์ƒท, ๊ธฐํš์„œ ๋“ฑ)
  scripts/               # โš™๏ธ ์‹œ์Šคํ…œ (์ˆ˜์ •ํ•˜์ง€ ๋งˆ์„ธ์š”)
    base_rules.md        #    ๊ณตํ†ต ์ž‘์—… ๊ทœ์น™
    ai_worker.sh/.ps1    #    1ํšŒ ์‹คํ–‰ ์Šคํฌ๋ฆฝํŠธ (OS๋ณ„)
    log_filter.py        #    ์‹ค์‹œ๊ฐ„ ๋กœ๊ทธ ํ•„ํ„ฐ
    notion_sync.py       #    Notion ๋™๊ธฐํ™” (Notion DB ์—ฐ๊ฒฐ ์‹œ๋งŒ)
  README.md              # ์‚ฌ์šฉ ๊ฐ€์ด๋“œ

.claude/
  settings.local.json    # Claude ๊ถŒํ•œ ์„ค์ •

CLAUDE.md                # ํ”„๋กฌํ”„ํŠธ ์บ์‹ฑ (์ž๋™ ์ƒ์„ฑ)

๋Ÿฐํƒ€์ž„ ์‚ฐ์ถœ๋ฌผ (์ž๋™ ์ƒ์„ฑ, gitignored)

.sleepcode/
  task_queue.md          # ์ž‘์—… backlog (Notion ๋™๊ธฐํ™” ๋˜๋Š” ์ˆ˜๋™ ์ž‘์„ฑ)
  usage.json             # ์‚ฌ์šฉ๋Ÿ‰ ์ถ”์ 
  runtime/
    logs/                #    ์‹คํ–‰ ๋กœ๊ทธ
    worktrees/           #    ๋ณ‘๋ ฌ ์‹คํ–‰์šฉ git worktree
    task_queue.md        #    Notion ์‹คํ–‰์šฉ ๋Ÿฐํƒ€์ž„ ํƒœ์Šคํฌ
    task_queue.main.md   #    main ์›Œ์ปค ๋Ÿฐํƒ€์ž„ ํƒœ์Šคํฌ
    graceful_stop        #    ์ •์ƒ ์ข…๋ฃŒ ์‹ ํ˜ธ ํŒŒ์ผ

์ž‘๋™ ์›๋ฆฌ

๊ธฐ๋ณธ ๋ชจ๋“œ

rules.md + task_queue.md(+ task_done/*.md) โ†’ ํ”„๋กฌํ”„ํŠธ ์กฐํ•ฉ โ†’ claude/codex ์‹คํ–‰ โ†’ ์ฝ”๋“œ ์ž‘์„ฑ โ†’ git commit โ†’ ๋ฐ˜๋ณต

๋ณ‘๋ ฌ ๋ชจ๋“œ

task_queue.md โ†’ @worker๋ณ„ ๋ถ„๋ฆฌ โ†’ git worktree ์ƒ์„ฑ โ†’ ๋™์‹œ ์‹คํ–‰ โ†’ ์›Œ์ปค ์™„๋ฃŒ ์ฆ‰์‹œ ๋จธ์ง€

Notion ๋™๊ธฐํ™”

[Notion DB] โ”€โ”€pullโ”€โ”€โ†’ [task_queue.md] โ”€โ”€promptโ”€โ”€โ†’ [Claude] โ”€โ”€์™„๋ฃŒโ”€โ”€โ†’ [task_queue.md] โ”€โ”€pushโ”€โ”€โ†’ [Notion DB]

์‹ค์‹œ๊ฐ„ ๋กœ๊ทธ

[TEXT] ๋กœ๊ทธ์ธ ํ™”๋ฉด์„ ๊ตฌํ˜„ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค...
[TOOL] Edit: src/screens/LoginScreen.tsx
[TOOL] Bash: npx tsc --noEmit
[DONE] ์™„๋ฃŒ
[COST] input: 50,000 / output: 12,000

๋‚œ์ด๋„๋ณ„ AI ๋ชจ๋ธ ์ž๋™ ์„ ํƒ

ํƒœ์Šคํฌ ์‹œ์ž‘ ์‹œ ๋‚œ์ด๋„๋ฅผ ์ž๋™ ํ‰๊ฐ€(1-5์ )ํ•˜์—ฌ, ํ”„๋กœ๋ฐ”์ด๋”์— ๋งž๋Š” ์ตœ์  ๋ชจ๋ธ์„ ์ž๋™์œผ๋กœ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

Provider ์„ ํƒ ์šฐ์„ ์ˆœ์œ„

CLI --provider ์ธ์ž > ํ™˜๊ฒฝ๋ณ€์ˆ˜ SLEEPCODE_PROVIDER > config.json claudeRatio > ๊ธฐ๋ณธ๊ฐ’(claude)
  • --provider claude|codex ๋กœ ๋ช…์‹œ ์ง€์ • ๊ฐ€๋Šฅ
  • .sleepcode/.env์— SLEEPCODE_PROVIDER=codex ์„ค์ • ๊ฐ€๋Šฅ
  • .sleepcode/config.json์˜ claudeRatio๋กœ ํ™•๋ฅ ์  ๋ถ„๋ฐฐ (์˜ˆ: 0.3 = Claude 30%, Codex 70%)
  • ๋‘˜ ๋‹ค ๋ฏธ์ง€์ • ์‹œ ๊ธฐ๋ณธ๊ฐ’์€ claude

๋‚œ์ด๋„ ํŒ์ • โ†’ ๋ชจ๋ธ ๋งคํ•‘

ํƒœ์Šคํฌ ํ…์ŠคํŠธ๋ฅผ claude-haiku-4-5์—๊ฒŒ ๋ณด๋‚ด ๋‚œ์ด๋„(1-5)๋ฅผ ๋น ๋ฅด๊ฒŒ ํŒ์ •ํ•œ ๋’ค, ์•„๋ž˜ ๋งคํ•‘์— ๋”ฐ๋ผ ๋ชจ๋ธ์„ ์ž๋™ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค. (ํŒ์ • ์‹คํŒจ ์‹œ ๊ธฐ๋ณธ ๋‚œ์ด๋„ 3 ์ ์šฉ)

๋‚œ์ด๋„ ๋ณ„์  ์„ค๋ช… Claude ๋ชจ๋ธ Codex ๋ชจ๋ธ
1 โ˜…โ˜†โ˜†โ˜†โ˜† ๋‹จ์ˆœ ์ž‘์—… (์˜คํƒ€ ์ˆ˜์ •, ์„ค์ • ๋ณ€๊ฒฝ, ํ…์ŠคํŠธ ์—…๋ฐ์ดํŠธ) claude-haiku-4-5 gpt-5.1-codex-mini
2 โ˜…โ˜…โ˜†โ˜†โ˜† ์‰ฌ์šด ์ž‘์—… (๊ฐ„๋‹จํ•œ ๋ฒ„๊ทธ ์ˆ˜์ •, ์†Œ๊ทœ๋ชจ ๊ธฐ๋Šฅ ์ถ”๊ฐ€, ํ•„๋“œ ์ถ”๊ฐ€) claude-sonnet-4-6 gpt-5.1-codex-mini
3 โ˜…โ˜…โ˜…โ˜†โ˜† ๋ณดํ†ต ์ž‘์—… (๊ธฐ๋Šฅ ๊ตฌํ˜„, ๋ฆฌํŒฉํ† ๋ง, API ์—ฐ๋™) claude-sonnet-4-6 gpt-5.2-codex
4 โ˜…โ˜…โ˜…โ˜…โ˜† ์–ด๋ ค์šด ์ž‘์—… (๋ณต์žกํ•œ ๊ธฐ๋Šฅ, ์•„ํ‚คํ…์ฒ˜ ๋ณ€๊ฒฝ, ๋ฉ€ํ‹ฐํŒŒ์ผ ๋ฆฌํŒฉํ† ๋ง) claude-opus-4-6 gpt-5.3-codex
5 โ˜…โ˜…โ˜…โ˜…โ˜… ๋งค์šฐ ์–ด๋ ค์šด ์ž‘์—… (๋Œ€๊ทœ๋ชจ ์žฌ์„ค๊ณ„, ๋ณต์žกํ•œ ์•Œ๊ณ ๋ฆฌ์ฆ˜, ์‹œ์Šคํ…œ ์ „๋ฐ˜ ๋ณ€๊ฒฝ) claude-opus-4-6 gpt-5.1-codex-max

๋ชจ๋ธ๋ณ„ ํ† ํฐ ๋น„์šฉ ๋น„๊ต

sleepcode๋Š” ๋‚œ์ด๋„์— ๋”ฐ๋ผ ๋ชจ๋ธ์„ ์ž๋™ ์„ ํƒํ•˜๋ฏ€๋กœ, ๋‹จ์ˆœ ์ž‘์—…์—๋Š” ์ €๋ ดํ•œ ๋ชจ๋ธ์„, ๋ณต์žกํ•œ ์ž‘์—…์—๋งŒ ๊ณ ์„ฑ๋Šฅ ๋ชจ๋ธ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋น„์šฉ์„ ์ตœ์ ํ™”ํ•ฉ๋‹ˆ๋‹ค.

Claude ๋ชจ๋ธ (MTok = 100๋งŒ ํ† ํฐ)

๋ชจ๋ธ Input Output ๋‚œ์ด๋„ ๋น„์šฉ ํŠน์ง•
claude-haiku-4-5 $1/MTok $5/MTok 1 Opus ๋Œ€๋น„ 1/5 ๊ฐ€๊ฒฉ. ๋‹จ์ˆœ ๋ฐ˜๋ณต ์ž‘์—…์— ์ตœ์ 
claude-sonnet-4-6 $3/MTok $15/MTok 2-3 Opus ๋Œ€๋น„ 3/5 ๊ฐ€๊ฒฉ. ๋Œ€๋ถ€๋ถ„์˜ ๊ฐœ๋ฐœ ํƒœ์Šคํฌ์— ๊ท ํ˜•
claude-opus-4-6 $5/MTok $25/MTok 4-5 ์ตœ๊ณ  ์„ฑ๋Šฅ. ๋ณต์žกํ•œ ์„ค๊ณ„ยท์•„ํ‚คํ…์ฒ˜ ๊ฒฐ์ •์— ์‚ฌ์šฉ

์˜ˆ์‹œ: ๋™์ผํ•œ 10๋งŒ input + 5๋งŒ output ํ† ํฐ ํƒœ์Šคํฌ ๊ธฐ์ค€

  • Haiku: $0.10 + $0.25 = $0.35
  • Sonnet: $0.30 + $0.75 = $1.05 (Haiku์˜ 3๋ฐฐ)
  • Opus: $0.50 + $1.25 = $1.75 (Haiku์˜ 5๋ฐฐ)

Codex ๋ชจ๋ธ

๋ชจ๋ธ Input Output ๋‚œ์ด๋„ ๋น„์šฉ ํŠน์ง•
gpt-5.1-codex-mini $0.25/MTok $2/MTok 1-2 ๊ฐ€์žฅ ์ €๋ ด. ๊ฒฝ๋Ÿ‰ ์ฝ”๋”ฉ ์ž‘์—…์— ์ตœ์ 
gpt-5.2-codex $1.75/MTok $14/MTok 3 ์ผ๋ฐ˜์ ์ธ ๊ธฐ๋Šฅ ๊ตฌํ˜„ยท๋ฆฌํŒฉํ† ๋ง์— ๊ท ํ˜•
gpt-5.3-codex $1.75/MTok $14/MTok 4 ๋ณต์žกํ•œ ์ถ”๋ก ์ด ํ•„์š”ํ•œ ์ž‘์—…
gpt-5.1-codex-max $1.25/MTok $10/MTok 5 ๋Œ€๊ทœ๋ชจ ์„ค๊ณ„ยท๊ณ ๋‚œ์ด๋„ ์ž‘์—…

์˜ˆ์‹œ: ๋™์ผํ•œ 10๋งŒ input + 5๋งŒ output ํ† ํฐ ํƒœ์Šคํฌ ๊ธฐ์ค€

  • Codex-Mini: $0.025 + $0.10 = $0.125
  • Codex 5.2/5.3: $0.175 + $0.70 = $0.875 (Mini์˜ 7๋ฐฐ)
  • Codex-Max: $0.125 + $0.50 = $0.625 (Mini์˜ 5๋ฐฐ)

์‹คํ–‰ ํ๋ฆ„

1. Provider ์„ ํƒ (CLI โ†’ ํ™˜๊ฒฝ๋ณ€์ˆ˜ โ†’ claudeRatio โ†’ ๊ธฐ๋ณธ๊ฐ’)
2. ํƒœ์Šคํฌ ํ…์ŠคํŠธ๋ฅผ Claude Haiku๋กœ ๋‚œ์ด๋„ ํŒ์ • (1-5)
3. ๋‚œ์ด๋„์— ๋งž๋Š” ๋ชจ๋ธ ์ž๋™ ์„ ํƒ
4. ์„ ํƒ๋œ provider + model๋กœ ํƒœ์Šคํฌ ์‹คํ–‰
5. ์‹คํŒจ ์‹œ fallback provider๋กœ ์ž๋™ ์žฌ์‹œ๋„
  • ๋ณ‘๋ ฌ ๋ชจ๋“œ์—์„œ๋Š” ๊ฐ ์›Œ์ปค๊ฐ€ ๋…๋ฆฝ์ ์œผ๋กœ ๋‚œ์ด๋„ ํ‰๊ฐ€ ๋ฐ ๋ชจ๋ธ ์„ ํƒ์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค.
  • ์‹คํ–‰ ๋กœ๊ทธ ํ‘œ์‹œ: [DIFFICULTY] โ˜…โ˜…โ˜…โ˜†โ˜† (3/5) -> claude-sonnet-4-6
  • Codex ๋ชจ๋ธ์ด ๊ณ„์ •์—์„œ ๋ฏธ์ง€์›์ด๋ฉด default๋กœ ์ž๋™ fallback

tmux ๊ด€๋ฆฌ

๋™์ž‘ ๋ช…๋ น์–ด
์„ธ์…˜ ์ƒ์„ฑ + ์‹คํ–‰ tmux new -s ai 'npx sleepcode run'
๋ฐฑ๊ทธ๋ผ์šด๋“œ ์ „ํ™˜ Ctrl+B โ†’ D
์„ธ์…˜ ์žฌ์ ‘์† tmux attach -t ai
์‹ค์‹œ๊ฐ„ ๋กœ๊ทธ tail -f .sleepcode/runtime/logs/worker_*.log
์ข…๋ฃŒ tmux attach -t ai โ†’ Ctrl+C

์ปค์Šคํ„ฐ๋งˆ์ด์ง•

  • AI ์—ญํ• /๊ทœ์น™ ๋ณ€๊ฒฝ: .sleepcode/rules.md ์ˆ˜์ •
  • ์ž‘์—… backlog ๋ณ€๊ฒฝ: .sleepcode/task_queue.md ์ˆ˜์ • (๋˜๋Š” Notion DB์—์„œ ๊ด€๋ฆฌ)
  • ์™„๋ฃŒ ๊ธฐ๋ก ํ™•์ธ: .sleepcode/task_done/*.md ํ™•์ธ
  • ์ฐธ๊ณ  ์ž๋ฃŒ ์ถ”๊ฐ€: .sleepcode/docs/์— ํŒŒ์ผ ์ถ”๊ฐ€
  • ์ฃผ๊ฐ„ ์˜ˆ์‚ฐ ๋ณ€๊ฒฝ: .sleepcode/config.json ์ˆ˜์ •

License

MIT

About

Run multiple AI coding workers on a local git repo with worktree-based parallel execution and backlog orchestration.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors