Skip to content

heestolee/pilee

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

714 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

ํ•œ๊ธ€ | English

pilee ๐Ÿ”ฅ

ํŒŒ์ด๋ฆฌ(Charmander) + pi + Lee

pi coding agent๋ฅผ ์œ„ํ•œ ๊ฐœ์ธ ์„ค์ • ํŒจํ‚ค์ง€. Conductor 1852์„ธ์…˜์—์„œ ์Œ“์€ ๊ฒฝํ—˜์„ ๊ธฐ๋ฐ˜์œผ๋กœ, ํฌํฌ๋‚˜ ๋ž˜ํ•‘ ์—†์ด ์ฒ˜์Œ๋ถ€ํ„ฐ ์ง์ ‘ ๊ตฌํ˜„.

Install

pi install https://github.com/heestolee/pilee

๋ชฉ์ฐจ


์„ค๊ณ„ ์ฒ ํ•™

์™œ ์ง์ ‘ ๋งŒ๋“ค์—ˆ๋Š”๊ฐ€

Conductor๋Š” ์ž˜ ๋งŒ๋“  ํ”„๋กœ๋•ํŠธ์˜€๋‹ค. ์›ŒํฌํŠธ๋ฆฌ ์ž๋™ ๊ด€๋ฆฌ, ๋‹ค์ค‘ ์„ธ์…˜ ๋ณ‘๋ ฌ ์‹คํ–‰, MCP ์—ฐ๊ฒฐ, ์‹œ์Šคํ…œ ํ”„๋กฌํ”„ํŠธ โ€” ํ•˜๋‚˜์˜ ์•ฑ ์•ˆ์—์„œ ๋‹ค ํ•ด๊ฒฐํ•ด์คฌ๋‹ค.

ํ•˜์ง€๋งŒ 1852์„ธ์…˜, 185๊ฐœ ์›Œํฌ์ŠคํŽ˜์ด์Šค๋ฅผ ์šด์šฉํ•˜๋ฉด์„œ ์ œํ’ˆ์˜ ๊ตฌ์กฐ์  ํ•œ๊ณ„๊ฐ€ ์ฒด๊ฐ๋˜๊ธฐ ์‹œ์ž‘ํ–ˆ๋‹ค.

Conductor์˜ ํ•œ๊ณ„

1. ์ปค์Šคํ…€ํ•˜์ง€ ๋ชปํ•œ๋‹ค โ€” ์ œํ’ˆ์ด ์ œ๊ณตํ•˜๋Š” ๊ธฐ๋Šฅ๋งŒ ์‚ฌ์šฉ ๊ฐ€๋Šฅ

repos ํ…Œ์ด๋ธ”์— custom_prompt_code_review ๋“ฑ ์ปค์Šคํ…€ ํ”„๋กฌํ”„ํŠธ ์ปฌ๋Ÿผ์ด ์กด์žฌํ•˜์ง€๋งŒ, ์ด๊ฒƒ์ด ์ „๋ถ€๋‹ค. ์Šคํ‚ฌ ์ถ”๊ฐ€, ์ต์Šคํ…์…˜ ๊ฐœ๋ฐœ, ์—์ด์ „ํŠธ ์ •์˜, ๋„๊ตฌ ์ถœ๋ ฅ ๋ Œ๋”๋ง ๋ณ€๊ฒฝ โ€” ์ œํ’ˆ์ด ํ—ˆ์šฉํ•˜์ง€ ์•Š์€ ๋™์ž‘์€ ํ™•์žฅํ•  ์ˆ˜ ์—†๋‹ค. ๊ฐœ์ธ์ ์œผ๋กœ ISP๋Š” ์ž˜ ์ค€์ˆ˜๋˜์–ด ๋ณด์ด์ง€๋งŒ OCP์—์„œ ํƒˆ๋ฝ์ด๋ผ๊ณ  ๋А๊ผˆ๋‹ค.

2. ์›ŒํฌํŠธ๋ฆฌ๋ฅผ ๋Š˜๋ฆด์ˆ˜๋ก ๋Š˜์–ด๋‚˜๋Š” ๋ถ€ํ•˜

Git worktree ๊ธฐ๋ฐ˜์ด์ง€๋งŒ, setup ์‹œ node_modules๋ฅผ ์‹ฌ๋ณผ๋ฆญ ๋งํฌ๊ฐ€ ์•„๋‹Œ ๋ฌผ๋ฆฌ ๋ณต์‚ฌํ•œ๋‹ค.

์›Œํฌ์ŠคํŽ˜์ด์Šค๋‹น ํ‰๊ท :  5.4GB (์ƒ์œ„ 10๊ฐœ ๊ธฐ์ค€)
35๊ฐœ ์›Œํฌ์ŠคํŽ˜์ด์Šค ์ด: 123GB
conductor.db:       1.8GB (315K ๋ฉ”์‹œ์ง€, ๋‹จ์ผ SQLite)

์›Œํฌ์ŠคํŽ˜์ด์Šค๋ฅผ ์Šค์ผ€์ผ ์•„์›ƒํ–ˆ๋”๋‹ˆ ๋””์Šคํฌ๊ฐ€ ์Šค์ผ€์ผ ์—… ๋๋‹ค.

3. ์›Œํฌ์ŠคํŽ˜์ด์Šค ๋ณต์ œ ๋ฉ”์ปค๋‹ˆ์ฆ˜์˜ ๋ถˆํˆฌ๋ช…์„ฑ๊ณผ ๋ฉ”๋ชจ๋ฆฌ ๊ณผ์‚ฌ์šฉ

๊ณต์‹ ๋ฌธ์„œ์—๋Š” ์›Œํฌ์ŠคํŽ˜์ด์Šค์˜ ๊ฐœ๋…๊ณผ ์‚ฌ์šฉ๋ฒ•์€ ์„ค๋ช…๋˜์–ด ์žˆ์ง€๋งŒ, ๋‚ด๋ถ€ ๋ณต์ œ ๋ฉ”์ปค๋‹ˆ์ฆ˜(์–ด๋–ค ํŒŒ์ผ์ด ๋ฌผ๋ฆฌ ๋ณต์‚ฌ๋˜๊ณ  ์–ด๋–ค ๊ฒƒ์ด ๋งํฌ๋˜๋Š”์ง€, initialization_files_copied๋‚˜ symlinks_pending_deletion์˜ ๋™์ž‘ ๋ฐฉ์‹)์€ ๋ฌธ์„œํ™”๋˜์–ด ์žˆ์ง€ ์•Š๋‹ค. ๋ณต์ œ ๊ณผ์ •์—์„œ MCP ์„ค์ •(.mcp.json)์ด ๋ˆ„๋ฝ๋˜๊ฑฐ๋‚˜, ๋ถˆํ•„์š”ํ•œ ํŒŒ์ผ์ด ์ƒ์„ฑ๋˜๋Š” ์‚ฌ๋ก€๊ฐ€ ๋ฐ˜๋ณต๋๋‹ค.

์•ฑ ์ž์ฒด๋„ ๋„ค์ดํ‹ฐ๋ธŒ ๋ฐ”์ด๋„ˆ๋ฆฌ(91MB) ์ƒ์ฃผ์—, ์„ธ์…˜๋‹น Claude Code ํ”„๋กœ์„ธ์Šค ~220MB, ํ˜„์žฌ 24๊ฐœ ํ”„๋กœ์„ธ์Šค ํ•ฉ์‚ฐ 1.6GB ๋ฉ”๋ชจ๋ฆฌ ์ ์œ . ์บก์Аํ™”๊ฐ€ ์ž˜ ๋˜์–ด ์žˆ์–ด์„œ ๋ฌธ์ œ๊ฐ€ ์ƒ๊ฒจ๋„ ์บก์А ์•ˆ์„ ๋ณผ ์ˆ˜ ์—†์—ˆ๋‹ค.

4. ๋‚ด๋ถ€์—์„œ ์ œ์•ฝ์„ ๊ฑธ์–ด๋†“์€ ๋™์ž‘์€ ์ ˆ๋Œ€ ์‹คํ–‰ํ•˜์ง€ ๋ชปํ•จ

  • ๊ธ€๋กœ๋ฒŒ MCP ์„ค์ •์ด ์™ธ๋ถ€ ํ„ฐ๋ฏธ๋„์—์„œ๋Š” ๋™์ž‘ํ•˜์ง€๋งŒ Conductor ๋‚ด๋ถ€์—์„œ๋Š” ์ธ์‹ ์•ˆ ๋จ
  • ๋‚ด์žฅ ํ„ฐ๋ฏธ๋„ ํ•œ๊ธ€ ์ž๋ชจ ๋ถ„๋ฆฌ ์ž…๋ ฅ
  • ์™ธ๋ถ€์—์„œ ์ƒ์„ฑํ•œ Git ๋ธŒ๋žœ์น˜์— ์›Œํฌ์ŠคํŽ˜์ด์Šค ์—ฐ๊ฒฐ ๋ถˆ๊ฐ€

์ด๋Ÿฐ ์ œ์•ฝ์ด ์˜๋„๋œ ๊ฒƒ์ธ์ง€, ๋ฒ„๊ทธ์ธ์ง€ ํŒ๋‹จํ•  ์ˆ˜ ์—†๊ณ  ์šฐํšŒ ๋ฐฉ๋ฒ•๋„ ์—†๋‹ค. ๋ฐฉ์–ด์  ํ”„๋กœ๊ทธ๋ž˜๋ฐ์ด ์‚ฌ์šฉ์žํ•œํ…Œ๋„ ์ ์šฉ๋œ ๋А๋‚Œ์ด์—ˆ๋‹ค.

pi๊ฐ€ ์ปค๋ฒ„ํ•˜๋Š” ๊ฒƒ

Conductor ํ•œ๊ณ„ pi + pilee ๋Œ€์‘
์›Œํฌ์ŠคํŽ˜์ด์Šค ๋ณต์ œ ์‹œ ๋ฌผ๋ฆฌ ํŒŒ์ผ ๋ณต์‚ฌ โ†’ ๋””์Šคํฌ ์„ ํ˜• ์ฆ๊ฐ€ Git worktree๋งŒ ์ƒ์„ฑ, node_modules๋Š” setup script์—์„œ ์‹ฌ๋ณผ๋ฆญ ๋งํฌ ๋˜๋Š” npm install ์„ ํƒ ๊ฐ€๋Šฅ. ์›Œํฌ์ŠคํŽ˜์ด์Šค ๊ตฌ์กฐ๋ฅผ ์ง์ ‘ ์ œ์–ด
๋‹จ์ผ SQLite 1.8GB ๋ˆ„์  ์„ธ์…˜๋ณ„ ๊ฐœ๋ณ„ JSONL ํŒŒ์ผ (~/.pi/agent/sessions/). ์„ธ์…˜ ๊ฐ„ I/O ๊ฐ„์„ญ ์—†์Œ, ํ•„์š” ์—†๋Š” ์„ธ์…˜์€ ์‚ญ์ œํ•ด๋„ ๋‹ค๋ฅธ ์„ธ์…˜์— ์˜ํ–ฅ ์—†์Œ
์Šคํ‚ฌ/์ต์Šคํ…์…˜ ์ถ”๊ฐ€ ๋ถˆ๊ฐ€ ์ต์Šคํ…์…˜ API (registerCommand, registerTool, registerShortcut, ui.custom TUI ๋“ฑ)๋กœ ์ž์œ ๋กญ๊ฒŒ ํ™•์žฅ
๋‚ด๋ถ€ ์ œ์•ฝ ์šฐํšŒ ๋ถˆ๊ฐ€ ๋ชจ๋“  ๋™์ž‘์ด TypeScript ์ฝ”๋“œ๋กœ ์—ด๋ ค ์žˆ์Œ. ๋™์ž‘ ๋ณ€๊ฒฝ์ด ํ•„์š”ํ•˜๋ฉด ์ฝ”๋“œ๋ฅผ ์ˆ˜์ •ํ•˜๊ณ  pi update
ํ”„๋กฌํ”„ํŠธ ์ปค์Šคํ…€ ์ปฌ๋Ÿผ ๋ช‡ ๊ฐœ๊ฐ€ ์ „๋ถ€ TFT 4 ์ฒ ์น™, (๋ช…๋ฐฑ) ํŒจํ„ด, frameโ†’decideโ†’verify ์‚ฌ์ดํด, 14๊ฐœ ์–ด์ƒ‰ํ•จ ํŒจํ„ด ์ฐจ๋‹จ ๋“ฑ ์›Œํฌํ”Œ๋กœ ์ž์ฒด๋ฅผ ์žฌ์„ค๊ณ„
์›Œํฌ์ŠคํŽ˜์ด์Šค ๋ณต์ œ ๋ฐฉ์‹ ๋ถˆํˆฌ๋ช… worktree ์ƒ์„ฑ๋ถ€ํ„ฐ ๋Œ€์‹œ๋ณด๋“œ ๊ด€๋ฆฌ๊นŒ์ง€ ์ „ ๊ณผ์ •์ด extensions/worktree/index.ts์— ๋ช…์‹œ์ ์œผ๋กœ ์ •์˜
์•ฑ 91MB ์ƒ์ฃผ + ์„ธ์…˜๋‹น ~220MB ํ„ฐ๋ฏธ๋„ ํ”„๋กœ์„ธ์Šค๋งŒ ์กด์žฌ (์„ธ์…˜๋‹น ~60MB), OS ๋ ˆ๋ฒจ ํ”„๋กœ์„ธ์Šค ๊ฒฉ๋ฆฌ

์ •๋ฆฌํ•˜๋ฉด, Conductor๋Š” "์ž˜ ๋งŒ๋“  ๊ธฐ๋ณธ๊ฐ’" ์ด๊ณ , pilee๋Š” "๋‚ด ์›Œํฌํ”Œ๋กœ์— ๋งž์ถ˜ ์ปค์Šคํ…€" ์ด๋‹ค. 1852์„ธ์…˜์˜ ๊ฒฝํ—˜์ด ์žˆ์—ˆ๊ธฐ์— "๋ญ๊ฐ€ ํ•„์š”ํ•˜๊ณ  ๋ญ๊ฐ€ ๋ถ€์กฑํ•œ์ง€" ์ •ํ™•ํžˆ ์•Œ๊ณ  ๋งŒ๋“ค ์ˆ˜ ์žˆ์—ˆ๋‹ค.


ํ•ต์‹ฌ ์›Œํฌํ”Œ๋กœ

frame โ†’ decide โ†’ verify ์‚ฌ์ดํด

/frame    ๊ตฌ์กฐํ™”๋œ ๊ณ„ํš ์ˆ˜๋ฆฝ (frame.json ์ƒ์„ฑ)
  โ†“         - success_criteria (ํ–‰ ๋‹จ์œ„ ๊ฒ€์ฆ ๊ฐ€๋Šฅ)
  โ†“         - verify_plan, risk_register, edge_case_seeds
/decide   frame์—์„œ ๋ฐœ์ƒํ•œ ๊ฒฐ์ • ์‚ฌํ•ญ ์ฒ˜๋ฆฌ
  โ†“         - TaskCreate(kind="frame.decision") ํ
  โ†“
(๊ตฌํ˜„)
  โ†“
/verify   frame.json์˜ mechanical reader
            - success_criteria ํ–‰ ๋‹จ์œ„ PASS/FAIL
            - 14๊ฐœ ์–ด์ƒ‰ํ•จ ํŒจํ„ด ์ฐจ๋‹จ (์˜๋ก€์  ์งˆ๋ฌธ, ๋ฒ”์œ„ ๋ฐ– ๊ฐ€์ƒ ์‹œ๋‚˜๋ฆฌ์˜ค ๋“ฑ)
            - ๋ฏธ๊ฒ€์ฆ ํ•ญ๋ชฉ ์žˆ์œผ๋ฉด PR ์ง„ํ–‰ ์ฐจ๋‹จ

Atomic evidence workflow

pilee๋Š” ๊ธด context๋ฅผ ์˜ค๋ž˜ ๋“ค๊ณ  ๊ฐ€๋Š” ๊ฒƒ๋ณด๋‹ค, ์ž‘์—…์„ ์ž‘์€ claim/slice๋กœ ์ชผ๊ฐœ๊ณ  ๊ฐ claim์„ evidence๋กœ ๋‹ซ๋Š” ๊ฒƒ์„ ์šฐ์„ ํ•œ๋‹ค.

Frame        โ†’ claim/slice ํ•ฉ์˜
Worker       โ†’ ํ•œ slice ์ตœ์†Œ ๊ตฌํ˜„
Verify       โ†’ claim/evidence ํŒ์ •
Final-check  โ†’ ์™„๋ฃŒ ์ฃผ์žฅ ์žฌ๊ฒ€์ฆ

๋„๊ตฌ ํ˜ธ์ถœ ์„ฑ๊ณต์€ ์‚ฌ์šฉ์ž ์„ฑ๊ณต์ด ์•„๋‹ˆ๋‹ค. UI/TUI/๋ Œ๋”๋ง/๋ฆฌํฌํŠธ claim์€ ์‹ค์ œ ํ™”๋ฉด, artifact, ์บก์ฒ˜๋กœ ๋‹ซ์•„์•ผ ํ•œ๋‹ค.

subagent ์œ„์ž„ ํŒจํ„ด

>> ์ปค๋ฐ‹ํ•ด์ค˜              โ†’ worker๊ฐ€ ๋ฐฑ๊ทธ๋ผ์šด๋“œ ์ž์œจ ์‹คํ–‰
>>/ ํŒŒ์ผ ์ฐพ์•„์ค˜          โ†’ finder (read/grep/find only)
>>? ์ด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์กฐ์‚ฌํ•ด  โ†’ searcher (์›น ๋ฆฌ์„œ์น˜)
>># ๊ตฌํ˜„ ๊ณ„ํš ์„ธ์›Œ์ค˜      โ†’ planner (opus + thinking:high)
>>! ์ด ๊ณ„ํš ๊ฒ€์ฆํ•ด์ค˜      โ†’ challenger (๋ฐ˜๋ก /์—ฃ์ง€์ผ€์ด์Šค)
>>@ E2E ํ…Œ์ŠคํŠธ ๋Œ๋ ค์ค˜     โ†’ browser (playwright)
>>> ํžˆ๋“  ์ž‘์—…             โ†’ ๊ฒฐ๊ณผ๊ฐ€ LLM ์ปจํ…์ŠคํŠธ์— ์•ˆ ๋“ค์–ด๊ฐ

/subagents              โ†’ ์‹คํ–‰ ์ค‘์ธ ์—์ด์ „ํŠธ ๋ชฉ๋ก
<>N                     โ†’ #N ์—์ด์ „ํŠธ ๋งˆ์ง€๋ง‰ ์‘๋‹ต ๋ฏธ๋ฆฌ๋ณด๊ธฐ
/sub:open N             โ†’ #N ์„ธ์…˜ ๋ฆฌํ”Œ๋ ˆ์ด ์˜ค๋ฒ„๋ ˆ์ด
/sub:abort N            โ†’ #N ์ค‘๋‹จ

>> ๋Š” "๋ณด๋‚ด๊ณ  ๊ฒฐ๊ณผ๋งŒ ๋ฐ›๋Š”" ๋‹จ๋ฐฉํ–ฅ ์œ„์ž„. ์‹คํ–‰ ์ค‘ ๊ฐœ์ž…์ด ํ•„์š”ํ•˜๋ฉด fork-panel.

worktree ๋Œ€์‹œ๋ณด๋“œ

Ctrl+W                       โ†’ ์ „์ฒด ์›ŒํฌํŠธ๋ฆฌ ์˜ค๋ฒ„๋ ˆ์ด
/wt new                      โ†’ ์ƒˆ ์›ŒํฌํŠธ๋ฆฌ (๊นจ๋—ํ•œ ์„ธ์…˜)
/wt new --carry-context      โ†’ ํ˜„์žฌ ์„ธ์…˜ ์ „์ฒด transcript๋ฅผ ์ด์–ด๋ฐ›์•„ ์ƒˆ ์›ŒํฌํŠธ๋ฆฌ ์ƒ์„ฑ
/wt new --minimal-context    โ†’ source reference + ์ตœ๊ทผ prompt handoff๋งŒ ์ฒจ๋ถ€
/wt fork                     โ†’ ํ˜„์žฌ ์„ธ์…˜ ์ „์ฒด transcript๋ฅผ ๊ธฐ๋ณธ์œผ๋กœ ์ด์–ด๋ฐ›์•„ ์ƒˆ ์›ŒํฌํŠธ๋ฆฌ ์ƒ์„ฑ
/wt fork --minimal-context   โ†’ lightweight handoff pack๋งŒ ์ฒจ๋ถ€
/wt resume <name>            โ†’ Conductor ์›Œํฌ์ŠคํŽ˜์ด์Šค ๋ณต์› + ์ „์ฒด ์„ธ์…˜ hydrate
/wt bootstrap [status]       โ†’ profile ๊ธฐ๋ฐ˜ readiness AI orchestrator + executor
/wt switch                   โ†’ ์›ŒํฌํŠธ๋ฆฌ ์„ ํƒ โ†’ ์„ธ์…˜ ์„ ํƒ โ†’ cwd ์ „ํ™˜
/wt sessions                 โ†’ ํ˜ธํ™˜ alias: ํ˜„์žฌ/์„ ํƒ ์›ŒํฌํŠธ๋ฆฌ์˜ /wt switch ์„ธ์…˜ ์„ ํƒ ํ๋ฆ„

/wt new์™€ /wt fork๋Š” ์ƒ์„ฑ ํ›„ ํ˜„์žฌ ํŒจ๋„์„ ์ƒˆ worktree ์„ธ์…˜์œผ๋กœ ์ฆ‰์‹œ ์ „ํ™˜ํ•œ๋‹ค. ์—์ด์ „ํŠธ tool(worktree_create/worktree_fork/worktree_switch)๋„ ๊ฐ™์€ ์‚ฌ์šฉ์ž ๊ฒฝํ—˜์„ ๋ชฉํ‘œ๋กœ ํ•œ๋‹ค. command context์ฒ˜๋Ÿผ session switch API๊ฐ€ ์žˆ์œผ๋ฉด ๊ทธ๋Œ€๋กœ ์ „ํ™˜ํ•˜๊ณ , ์ผ๋ฐ˜ tool context๋ผ๋ฉด interactive Ghostty์—์„œ ํ˜„์žฌ ํŒจ๋„์„ ๊ฐ™์€ ์„ธ์…˜ ๊ณ„๋ณด์˜ worktree session์œผ๋กœ ์žฌ์‹คํ–‰ํ•œ๋‹ค. ๋‘˜ ๋‹ค ๋ถˆ๊ฐ€๋Šฅํ•  ๋•Œ๋งŒ worktree ์ƒ์„ฑ ์ „ BLOCKED๋กœ ๋ฉˆ์ถ”๋ฉฐ, ์‚ฌ์šฉ์ž์—๊ฒŒ /wt fork//wt switch ์žฌ์ž…๋ ฅ์„ ์š”๊ตฌํ•˜๊ฑฐ๋‚˜ ์ ˆ๋Œ€๊ฒฝ๋กœ ์ž‘์—…์œผ๋กœ ์šฐํšŒํ•˜์ง€ ์•Š๋Š”๋‹ค.

์ƒ์„ฑ ์ „ ์•ˆ์ „ ๊ฒŒ์ดํŠธ:

  • ์กฐ์‚ฌ ๋‹จ๊ณ„(ํ™•์ธํ•ด๋ณผ๋ž˜?)์—์„œ๋Š” ๋งŒ๋“ค์ง€ ์•Š๋Š”๋‹ค.
  • ์กฐ์‚ฌ/๊ณ„ํš ๋งฅ๋ฝ์ด ์žˆ์œผ๋ฉด worktree_create๊ฐ€ ์•„๋‹ˆ๋ผ /wt fork / worktree_fork๋กœ ํ˜„์žฌ ํŒจ๋„ ๋Œ€ํ™”๋ฅผ source๋กœ ์ด์–ด๋ฐ›๋Š”๋‹ค. /wt fork์˜ ๊ธฐ๋ณธ์€ ์ „์ฒด transcript ๋ณต์‚ฌ์ด๋ฉฐ, ํ† ํฐ/์˜ค์—ผ ์œ„ํ—˜ ๋•Œ๋ฌธ์— ์ผ๋ถ€๋Ÿฌ ๊ฐ€๋ณ๊ฒŒ ๋„˜๊ธธ ๋•Œ๋งŒ --minimal-context๋ฅผ ๋ช…์‹œํ•œ๋‹ค.
  • ํ•ซํ”ฝ์Šค/production ์ž‘์—…์€ ๋ฐ˜๋“œ์‹œ --hotfix / hotfix: true๋กœ production ๊ธฐ๋ฐ˜์—์„œ ๋งŒ๋“ ๋‹ค.
  • fork child ํŒจ๋„(P1/P2)๋„ worktree๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ค. ์ด๋•Œ source๋Š” ํ˜„์žฌ ํŒจ๋„ ๋Œ€ํ™”์ด๋ฉฐ, ๋ถ€๋ชจ(P0) ๋Œ€ํ™”๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋งŒ๋“ค๊ณ  ์‹ถ์„ ๋•Œ๋งŒ ๋ถ€๋ชจ ํŒจ๋„์—์„œ ๋ช…์‹œ์ ์œผ๋กœ ์‹คํ–‰ํ•œ๋‹ค.
  • profile์ด bootstrap ๋Œ€์ƒ์œผ๋กœ ์ง€์ •ํ•œ worktree์—์„œ ๊ตฌํ˜„์ด ์‹œ์ž‘๋˜๋ฉด /wt๊ฐ€ AI subagent orchestrator๋ฅผ ๋„์›Œ deterministic executor๋ฅผ ์‹คํ–‰ยท์ง„๋‹จํ•˜๊ฒŒ ํ•œ๋‹ค. domain์€ profile์ด ์ •์˜ํ•œ dependency/env ๋“ฑ marker๋กœ ํ™•์žฅํ•  ์ˆ˜ ์žˆ๊ณ , ์ˆ˜๋™ ์‹คํ–‰์€ /wt bootstrap --<domain>, /wt bootstrap --domain <name>, /wt bootstrap --env, /wt bootstrap --all์„ ์ง€์›ํ•œ๋‹ค. ์ƒํƒœ ํ™•์ธ์€ /wt bootstrap status, deterministic fallback์€ /wt bootstrap --executor.

๋Œ€์‹œ๋ณด๋“œ ์ƒํƒœ: backlog / active / done / archive

  • Space: backlog โ†’ active โ†’ done ์ˆœํ™˜
  • a: ์•„์นด์ด๋ธŒ โ†” ๋ฉ”์ธ ์–‘๋ฐฉํ–ฅ ์ด๋™
  • Tab: ๋ฉ”์ธ ํƒญ โ†” ์•„์นด์ด๋ธŒ ํƒญ ์ „ํ™˜
  • t: ํƒœ๊ทธ ํŽธ์ง‘, /: ํ•„ํ„ฐ

stress-interview โ†’ self-healing

/stress-interview   3 ๋ณ‘๋ ฌ ์—์ด์ „ํŠธ๊ฐ€ ์ฝ”๋“œ ๋ฆฌ๋ทฐ
                      - verifier: ๊ตฌํ˜„ ์ •ํ™•์„ฑ
                      - reviewer: ์ฝ”๋“œ ํ’ˆ์งˆ/ํŒจํ„ด
                      - challenger: ๋ฐ˜๋ก /์—ฃ์ง€ ์ผ€์ด์Šค
  โ†“
/self-healing       stress-interview ๊ฒฐ๊ณผ ๊ธฐ๋ฐ˜ ์ž๋™ ์ˆ˜์ • (2์‚ฌ์ดํด)
                      - fix_class ๋ถ„๋ฅ˜: AUTO_FIX / ASK / INFO

TFT 4 ์ฒ ์น™

๋ชจ๋“  ์Šคํ‚ฌ๊ณผ ์—์ด์ „ํŠธ๊ฐ€ ๋”ฐ๋ฅด๋Š” ํ–‰๋™ ์›์น™:

# ์ฒ ์น™ ํ•ต์‹ฌ
1 ๋ถ„๊ธฐ์  ์งˆ๋ฌธ ์˜๋ฌด ๊ฒฐ๊ณผ๊ฐ€ ๋‹ฌ๋ผ์ง€๋Š” ์„ ํƒ์ง€์—์„œ๋Š” ๋ฐ˜๋“œ์‹œ ๋ฌป๋Š”๋‹ค. ํ™•์‹คํ•œ ๊ฑด (๋ช…๋ฐฑ: ๊ทผ๊ฑฐ) ํ‘œ๊ธฐ ํ›„ ์ง„ํ–‰
2 ์œ„ํ—˜ ๊ฒฐ์ • ๋‹จ๋… ๊ธˆ์ง€ ๋˜๋Œ๋ฆฌ๊ธฐ ์–ด๋ ค์šด ์ž‘์—…์€ ํ˜ผ์ž ํŒ๋‹จํ•˜์ง€ ์•Š๋Š”๋‹ค
3 ๊ทผ๊ฑฐ ์—†๋Š” ์™„๋ฃŒ ๊ธˆ์ง€ "๋‹ค ๋๋‹ค"๋Š” ์ฆ๊ฑฐ ๊ธฐ๋ฐ˜์ด์–ด์•ผ ํ•œ๋‹ค
4 ๊ฒฐ๊ณผ ์ •ํ•ด์ง„ ์งˆ๋ฌธ ๊ธˆ์ง€ "(์ฒ˜๋ฆฌ๋จ)" ๊ฐ™์€ ์„ ํƒ์ง€๋กœ ๋™์˜๋งŒ ๊ตฌํ•˜๋Š” ์˜๋ก€์  ์งˆ๋ฌธ์„ ํ•˜์ง€ ์•Š๋Š”๋‹ค

(๋ช…๋ฐฑ) ํŒจํ„ด: "๋ฌป๊ธฐ vs ์•ˆ ๋ฌป๊ธฐ" ์ด๋ถ„๋ฒ•์˜ ์ œ3์˜ ๊ธธ. ๊ฐ€์ •์„ ๋ณธ๋ฌธ์— (๋ช…๋ฐฑ: ์ €์žฅ์†Œ ์ปจ๋ฒค์…˜) ํ˜•ํƒœ๋กœ ๋ช…์‹œํ•˜๊ณ  ์ง„ํ–‰. ์‚ฌ์šฉ์ž ์นจ๋ฌต = ๋™์˜, ํ‹€๋ฆฌ๋ฉด ๊ต์ •.


Knowledge

๊ณต๊ฐœ ๊ฐ€๋Šฅํ•œ ์ตœ์‹  ์„ค๊ณ„ ์ง€์‹์€ docs/knowledge/README.md์—์„œ ๊ฒ€์ƒ‰/๊ทธ๋ž˜ํ”„ ํ˜•ํƒœ๋กœ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

๋ถˆ์”จ / Ember๋Š” ์ด knowledge๋ฅผ ๋‹ค๋ฃจ๋Š” ์นœ๊ทผํ•œ ์ž…๊ตฌ์ž…๋‹ˆ๋‹ค. /ember๋กœ ์„ธ์…˜์—์„œ ๋‚จ์€ ๊นจ๋‹ฌ์Œ์„ ํ›„๋ณด๋กœ ๋ชจ์œผ๊ณ  add ์—ฌ๋ถ€๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค. /ember add๋Š” ๋ช…์‹œ์ ์œผ๋กœ ๋ฐ”๋กœ public knowledge ์ž‘์„ฑ/๊ฐฑ์‹  ํ”Œ๋กœ์šฐ๋กœ ๋“ค์–ด๊ฐ‘๋‹ˆ๋‹ค. /ember check๋Š” freshness/confidence ์ƒํƒœ๋ฅผ ์‚ดํ”ผ๊ณ  ํ•„์š” action์„ ์ œ์•ˆํ•˜๋ฉฐ, /ember refresh๋Š” README table, docs/knowledge README, SVG map ๊ฐ™์€ generated surface๋ฅผ ์žฌ์ƒ์„ฑยท๊ฒ€์ฆํ•ฉ๋‹ˆ๋‹ค. ์ €์žฅ์†Œ์˜ canonical ์šฉ์–ด์™€ ๊ตฌ์กฐ๋Š” ๊ณ„์† knowledge์ž…๋‹ˆ๋‹ค.

ํšŒ์‚ฌ/๊ฐœ์ธ/๋กœ์ปฌ ์‹คํ–‰ ๋งฅ๋ฝ์€ public pilee์— ๋„ฃ์ง€ ์•Š๊ณ  private overlay package์— ๋‘ก๋‹ˆ๋‹ค. ์ƒˆ overlay๋ฅผ ๋งŒ๋“ค ๋•Œ๋Š” fake ACME ์˜ˆ์‹œ๋งŒ ๋‹ด์€ public-safe ํ…œํ”Œ๋ฆฟ pilee-private-overlay-template์„ ๋ณต์‚ฌํ•ด pi/skills, pi/prompts, pi/profiles/*.json์„ ์ž๊ธฐ ํ™˜๊ฒฝ์— ๋งž๊ฒŒ ์ฑ„์šฐ๋ฉด ๋ฉ๋‹ˆ๋‹ค.

pilee knowledge map

Source docs drive this generated block; refresh with node scripts/knowledge.mjs --graph after changes.

Type Surface Knowledge docs
extension extensions/archive-to-html ๊ฒ€ํ†  ์‚ฐ์ถœ๋ฌผ์€ ๋‹ค์‹œ ์—ด ์ˆ˜ ์žˆ์–ด์•ผ ํ•œ๋‹ค
Backlog๋Š” ์› ์„ธ์…˜ ์ถœ์ฒ˜๋ฅผ ๋ณด์กดํ•œ๋‹ค
Clean handoff๋Š” compact์™€ ์ƒˆ ์„ธ์…˜ ์‚ฌ์ด์˜ ์ „ํ™˜ ๊ณ„์•ฝ์ด๋‹ค
Deterministic fallback์€ workflow๋ฅผ ๋ณด์กดํ•œ๋‹ค
Embedded WebView script๋Š” escape ๊ฒฝ๊ณ„๋ฅผ ๋ณด์กดํ•œ๋‹ค
์™„๋ฃŒ ์„ ์–ธ์€ ์ฆ๊ฑฐ ๋’ค์—๋งŒ ์˜จ๋‹ค
TFT Studio๋Š” TFT ๋‹จ๊ณ„๋ฅผ ์ž‘์—… ๋‹จ์œ„ UI๋กœ ๋ฌถ๋Š”๋‹ค
Live artifact๋Š” local preview first๋‹ค
Private overlay package๋Š” ํšŒ์‚ฌยท๊ฐœ์ธ ์‹คํ–‰ ๋งฅ๋ฝ์„ ๋‹ด๋Š”๋‹ค
์„ธ์…˜ ๋ถ„๋ฅ˜๋Š” ์›๋ณธ ์œ„์˜ sidecar๋‹ค
Session export๋Š” ์›๋ณธ์„ ๋ณด์กดํ•˜๋Š” adapter๋ฅผ ๊ฑฐ์นœ๋‹ค
ํ„ฐ๋ฏธ๋„ ์—ฐ๋™์€ host adapter๋กœ ๋‹ค๋ฃฌ๋‹ค
Verify Report์™€ coverage-aware ์ฆ๊ฑฐ ๊ฒ€์ฆ ํ๋ฆ„
extension extensions/auto-commit Auto-commit์€ ๋ช…์‹œ ๊ณ„ํš๋งŒ ์‹คํ–‰ํ•œ๋‹ค
Slice ์™„๋ฃŒ๋Š” commit ํ›„๋ณด๋ฅผ ๋งŒ๋“ ๋‹ค
extension extensions/backlog ๊ฒ€ํ†  ์‚ฐ์ถœ๋ฌผ์€ ๋‹ค์‹œ ์—ด ์ˆ˜ ์žˆ์–ด์•ผ ํ•œ๋‹ค
Backlog๋Š” ์› ์„ธ์…˜ ์ถœ์ฒ˜๋ฅผ ๋ณด์กดํ•œ๋‹ค
Session export๋Š” ์›๋ณธ์„ ๋ณด์กดํ•˜๋Š” adapter๋ฅผ ๊ฑฐ์นœ๋‹ค
์ƒ‰์ƒ์€ ์ •๋ณด ์œ„๊ณ„๋‹ค
TUI ๋ Œ๋”๋ง ๊ฒฝ๊ณ„์—์„œ๋Š” ๋ฌธ์ž์—ด์„ ์‹ ๋ขฐํ•˜์ง€ ์•Š๋Š”๋‹ค
extension extensions/bash-tool-override Bash tool override๋Š” ๋ช…๋ น ์˜๋„์™€ ์ถœ๋ ฅ ๋…ธ์ด์ฆˆ๋ฅผ ๋ถ„๋ฆฌํ•œ๋‹ค
extension extensions/cc-system-prompt ์ž๋™ ๋กœ๋“œ ์ปจํ…์ŠคํŠธ๋Š” ์ตœ์†Œ surface๋งŒ ๊ฐ€์ง„๋‹ค
extension extensions/claude-code-ui ๋„๊ตฌ ์ถœ๋ ฅ์€ ๋Œ€ํ™” ํ๋ฆ„์„ ์นจ๋ฒ”ํ•˜์ง€ ์•Š๋Š”๋‹ค
TUI ๋ Œ๋”๋ง ๊ฒฝ๊ณ„์—์„œ๋Š” ๋ฌธ์ž์—ด์„ ์‹ ๋ขฐํ•˜์ง€ ์•Š๋Š”๋‹ค
extension extensions/claude-hooks-bridge ์ž๋™ ๋กœ๋“œ ์ปจํ…์ŠคํŠธ๋Š” ์ตœ์†Œ surface๋งŒ ๊ฐ€์ง„๋‹ค
extension extensions/context-loader ์ž๋™ ๋กœ๋“œ ์ปจํ…์ŠคํŠธ๋Š” ์ตœ์†Œ surface๋งŒ ๊ฐ€์ง„๋‹ค
extension extensions/continue-clean Clean handoff๋Š” compact์™€ ์ƒˆ ์„ธ์…˜ ์‚ฌ์ด์˜ ์ „ํ™˜ ๊ณ„์•ฝ์ด๋‹ค
extension extensions/custom-style Editor affordance๋Š” ์ˆจ์€ ์ปจํ…์ŠคํŠธ๊ฐ€ ์•„๋‹ˆ๋‹ค
User-facing ์ถœ๋ ฅ์€ ํ•œ๊ตญ์–ด๋ฅผ ๊ธฐ๋ณธ์œผ๋กœ ํ•œ๋‹ค
ํ„ฐ๋ฏธ๋„ ์—ฐ๋™์€ host adapter๋กœ ๋‹ค๋ฃฌ๋‹ค
์ƒ‰์ƒ์€ ์ •๋ณด ์œ„๊ณ„๋‹ค
extension extensions/diff-overlay Diff review draft๋Š” PR ์ฝ”๋ฉ˜ํŠธ ์ „ ๋‹จ๊ณ„๋‹ค
์ƒ‰์ƒ์€ ์ •๋ณด ์œ„๊ณ„๋‹ค
TUI ๋ Œ๋”๋ง ๊ฒฝ๊ณ„์—์„œ๋Š” ๋ฌธ์ž์—ด์„ ์‹ ๋ขฐํ•˜์ง€ ์•Š๋Š”๋‹ค
extension extensions/dynamic-agents-md ์ž๋™ ๋กœ๋“œ ์ปจํ…์ŠคํŠธ๋Š” ์ตœ์†Œ surface๋งŒ ๊ฐ€์ง„๋‹ค
Skill์€ ์žฌ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ์ ˆ์ฐจ๋‹ค
extension extensions/edit-tool-override Read/Edit tool override๋Š” ํ•„์š”ํ•œ ์ฆ๊ฑฐ๋งŒ ํŽผ์นœ๋‹ค
extension extensions/ember Ember๋Š” knowledge์˜ ์นœ๊ทผํ•œ ์ž…๊ตฌ๋‹ค
Ember Ship์€ knowledge ์ •ํ•ฉ์„ฑ์„ release train์œผ๋กœ ๋‹ซ๋Š”๋‹ค
extension extensions/ember-ship Ember Ship์€ knowledge ์ •ํ•ฉ์„ฑ์„ release train์œผ๋กœ ๋‹ซ๋Š”๋‹ค
extension extensions/footer Editor affordance๋Š” ์ˆจ์€ ์ปจํ…์ŠคํŠธ๊ฐ€ ์•„๋‹ˆ๋‹ค
extension extensions/fork-panel Fork-panel handoff๋Š” parent inbox๋กœ ๋“ค์–ด๊ฐ„๋‹ค
Fork-panel ์œ„์น˜๋Š” ์ž‘์—… ๋งฅ๋ฝ์˜ ์ผ๋ถ€๋‹ค
MCP stderr๋Š” TUI ์ถœ๋ ฅ์ด ์•„๋‹ˆ๋‹ค
์ข…๋ฃŒ๋œ ํฌํฌ๋Š” transcript ์ฃผ์ž…๋ณด๋‹ค revive๊ฐ€ ์šฐ์„ ์ด๋‹ค
์„ธ์…˜ ์‹๋ณ„์ž๋Š” ํŒŒ์ผ๋ช…์ด ์•„๋‹ˆ๋ผ ์‚ฌ๋žŒ์ด ๋ณธ ์ด๋ฆ„์ด๋‹ค
ํ„ฐ๋ฏธ๋„ ์—ฐ๋™์€ host adapter๋กœ ๋‹ค๋ฃฌ๋‹ค
ํ„ฐ๋ฏธ๋„ workspace ๋ณต์›์€ snapshot๊ณผ host adapter๋ฅผ ๋ถ„๋ฆฌํ•œ๋‹ค
์ƒ‰์ƒ์€ ์ •๋ณด ์œ„๊ณ„๋‹ค
TUI ๋ Œ๋”๋ง ๊ฒฝ๊ณ„์—์„œ๋Š” ๋ฌธ์ž์—ด์„ ์‹ ๋ขฐํ•˜์ง€ ์•Š๋Š”๋‹ค
Worktree ์ƒ์„ฑ์€ ํ˜„์žฌ ํŒจ๋„ ๋Œ€ํ™”๊ฐ€ source๋‹ค
Worktree ์„ธ์…˜ ์—ฐ์†์„ฑ๊ณผ ์‹๋ณ„์„ฑ ์›์น™
extension extensions/frame-studio AskUserQuestion์€ ์˜์‚ฌ๊ฒฐ์ • ๊ฒŒ์ดํŠธ๋‹ค
AskUserQuestion ์˜ต์…˜์€ ํ–‰๋™ ๋ถ„๊ธฐ๋ฅผ ํ‘œํ˜„ํ•œ๋‹ค
Decide๋Š” ์„ ํƒ์„ ํ•œ ๋ฒˆ ๊ณต๊ฒฉํ•œ๋‹ค
Embedded WebView script๋Š” escape ๊ฒฝ๊ณ„๋ฅผ ๋ณด์กดํ•œ๋‹ค
Frame์€ ๋งˆ์ง€๋ง‰์— Plan์„ ํ•ฉ์„ฑํ•œ๋‹ค
TFT Studio๋Š” TFT ๋‹จ๊ณ„๋ฅผ ์ž‘์—… ๋‹จ์œ„ UI๋กœ ๋ฌถ๋Š”๋‹ค
Live artifact๋Š” local preview first๋‹ค
Queued command๋Š” ์‹คํ–‰ ๋ณด์žฅ์ด ์•„๋‹ˆ๋‹ค
Task overlay๋Š” ์ž‘์—… ๋งต์„ ๋ณด์กดํ•œ๋‹ค
TFT visual์€ ๊ตฌ์กฐ ๋ณ€ํ™”๋ฅผ ํ•™์Šต ๊ฐ€๋Šฅํ•œ ๊ทธ๋ฆผ์œผ๋กœ ๋ณด์—ฌ์ค€๋‹ค
Working Context Card๋Š” ํฐ ๋งฅ๋ฝ์„ ํ˜„์žฌ slice๋กœ ์••์ถ•ํ•œ๋‹ค
๋ฐ˜๋ณต ์›Œํฌํ”Œ๋กœ ์‹คํŒจ๋Š” guard/flow๋กœ ๊ณ ์ •ํ•œ๋‹ค
extension extensions/idle-screensaver Idle UI๋Š” ์žฅ์‹์ด ์•„๋‹ˆ๋ผ ambient status๋‹ค
์ƒ‰์ƒ์€ ์ •๋ณด ์œ„๊ณ„๋‹ค
extension extensions/interactive-shell Interactive shell์€ bash๊ฐ€ ์•„๋‹Œ ํ„ฐ๋ฏธ๋„ ์„ธ์…˜์ด๋‹ค
extension extensions/mcp-bridge ๊ฒ€ํ†  ์‚ฐ์ถœ๋ฌผ์€ ๋‹ค์‹œ ์—ด ์ˆ˜ ์žˆ์–ด์•ผ ํ•œ๋‹ค
Deterministic fallback์€ workflow๋ฅผ ๋ณด์กดํ•œ๋‹ค
MCP ๊ฒฐ๊ณผ๋Š” ํฐ ์ถœ๋ ฅ๋งŒ digest-first๋กœ ๋‹ค๋ฃฌ๋‹ค
MCP stderr๋Š” TUI ์ถœ๋ ฅ์ด ์•„๋‹ˆ๋‹ค
ํ„ฐ๋ฏธ๋„ ์—ฐ๋™์€ host adapter๋กœ ๋‹ค๋ฃฌ๋‹ค
๋„๊ตฌ ์ถœ๋ ฅ์€ ๋Œ€ํ™” ํ๋ฆ„์„ ์นจ๋ฒ”ํ•˜์ง€ ์•Š๋Š”๋‹ค
extension extensions/memory-layer ์ž๋™ ๋กœ๋“œ ์ปจํ…์ŠคํŠธ๋Š” ์ตœ์†Œ surface๋งŒ ๊ฐ€์ง„๋‹ค
extension extensions/notify ํ„ฐ๋ฏธ๋„ ์—ฐ๋™์€ host adapter๋กœ ๋‹ค๋ฃฌ๋‹ค
extension extensions/pr-comments Diff review draft๋Š” PR ์ฝ”๋ฉ˜ํŠธ ์ „ ๋‹จ๊ณ„๋‹ค
Ship๊ณผ PR-Ship์€ ์„œ๋กœ ๋‹ค๋ฅธ ํ†ตํ•ฉ ๋‹จ๊ณ„๋‹ค
extension extensions/pr-review-re-request Ship๊ณผ PR-Ship์€ ์„œ๋กœ ๋‹ค๋ฅธ ํ†ตํ•ฉ ๋‹จ๊ณ„๋‹ค
extension extensions/preflight Private overlay package๋Š” ํšŒ์‚ฌยท๊ฐœ์ธ ์‹คํ–‰ ๋งฅ๋ฝ์„ ๋‹ด๋Š”๋‹ค
์ˆ˜์ • ์ „์— ๊ทผ๋ณธ ์›์ธ์„ ์ขํžŒ๋‹ค
๋ฐ˜๋ณต ๊ฒ€์ฆ ์‹คํŒจ๋Š” baseline cache๋กœ ๋ถ„๋ฆฌํ•œ๋‹ค
๋ฐ˜๋ณต ์›Œํฌํ”Œ๋กœ ์‹คํŒจ๋Š” guard/flow๋กœ ๊ณ ์ •ํ•œ๋‹ค
extension extensions/prompt-suggest-lite Editor affordance๋Š” ์ˆจ์€ ์ปจํ…์ŠคํŠธ๊ฐ€ ์•„๋‹ˆ๋‹ค
extension extensions/queued-messages Queued command๋Š” ์‹คํ–‰ ๋ณด์žฅ์ด ์•„๋‹ˆ๋‹ค
extension extensions/read-tool-override Read/Edit tool override๋Š” ํ•„์š”ํ•œ ์ฆ๊ฑฐ๋งŒ ํŽผ์นœ๋‹ค
extension extensions/retro Retro๋Š” private reflection์ด๋‹ค
extension extensions/session-title Backlog๋Š” ์› ์„ธ์…˜ ์ถœ์ฒ˜๋ฅผ ๋ณด์กดํ•œ๋‹ค
์„ธ์…˜ ์‹๋ณ„์ž๋Š” ํŒŒ์ผ๋ช…์ด ์•„๋‹ˆ๋ผ ์‚ฌ๋žŒ์ด ๋ณธ ์ด๋ฆ„์ด๋‹ค
extension extensions/ship-commands CI-Ship์€ PR ํ›„ ๊ฒ€์ฆ ์‹คํŒจ ๋Œ€์‘ ๋‹จ๊ณ„๋‹ค
Ship๊ณผ PR-Ship์€ ์„œ๋กœ ๋‹ค๋ฅธ ํ†ตํ•ฉ ๋‹จ๊ณ„๋‹ค
Subagent๋Š” slash command๊ฐ€ ์•„๋‹ˆ๋ผ skill prompt๋ฅผ ์œ„์ž„๋ฐ›๋Š”๋‹ค
extension extensions/shortcut-atlas Shortcut Atlas๋Š” ๋‹จ์ถ•ํ‚ค ํ‘œ๋ฉด์„ ํ•œ ๋ฒˆ์— ๊ฒ€ํ† ํ•œ๋‹ค
extension extensions/spinner Idle UI๋Š” ์žฅ์‹์ด ์•„๋‹ˆ๋ผ ambient status๋‹ค
extension extensions/subagent Worker๋Š” readiness ownership์„ ๊ฐ€์ง„๋‹ค
์ตœ์ข… ๊ฒ€์ฆ์€ ๋ฉ”์ธ ์„ธ์…˜์„ ๋ง‰์ง€ ์•Š๊ณ  ๋ณ‘๋ ฌํ™”ํ•œ๋‹ค
Queued command๋Š” ์‹คํ–‰ ๋ณด์žฅ์ด ์•„๋‹ˆ๋‹ค
Self-healing์€ actionable item๋งŒ ์ˆ˜์ •ํ•œ๋‹ค
Stress Interview๋Š” ๋‹ค์ถ• ๊ฒ€ํ† ๋‹ค
Codex-first subagent ๋ชจ๋ธ ์šด์šฉ ์ •์ฑ…
Subagent ์œ„์ž„์€ ๊ตฌ์ฒด ํ”„๋กฌํ”„ํŠธ๋ฅผ ์š”๊ตฌํ•œ๋‹ค
Subagent๋Š” slash command๊ฐ€ ์•„๋‹ˆ๋ผ skill prompt๋ฅผ ์œ„์ž„๋ฐ›๋Š”๋‹ค
extension extensions/supervisor Supervisor๋Š” outcome guardrail์ด๋‹ค
extension extensions/tasks Idle UI๋Š” ์žฅ์‹์ด ์•„๋‹ˆ๋ผ ambient status๋‹ค
Backlog๋Š” ์› ์„ธ์…˜ ์ถœ์ฒ˜๋ฅผ ๋ณด์กดํ•œ๋‹ค
Queued command๋Š” ์‹คํ–‰ ๋ณด์žฅ์ด ์•„๋‹ˆ๋‹ค
Task overlay๋Š” ์ž‘์—… ๋งต์„ ๋ณด์กดํ•œ๋‹ค
Working Context Card๋Š” ํฐ ๋งฅ๋ฝ์„ ํ˜„์žฌ slice๋กœ ์••์ถ•ํ•œ๋‹ค
extension extensions/tft-commands Frame identity๋Š” cwd๋ณด๋‹ค ์ž‘์—… ์˜๋„๋ฅผ ์šฐ์„ ํ•œ๋‹ค
TFT Studio๋Š” TFT ๋‹จ๊ณ„๋ฅผ ์ž‘์—… ๋‹จ์œ„ UI๋กœ ๋ฌถ๋Š”๋‹ค
Queued command๋Š” ์‹คํ–‰ ๋ณด์žฅ์ด ์•„๋‹ˆ๋‹ค
Command shim์€ skill source of truth๋ฅผ ์ง€ํ‚จ๋‹ค
extension extensions/timestamp ์ƒ‰์ƒ์€ ์ •๋ณด ์œ„๊ณ„๋‹ค
TUI ๋ Œ๋”๋ง ๊ฒฝ๊ณ„์—์„œ๋Š” ๋ฌธ์ž์—ด์„ ์‹ ๋ขฐํ•˜์ง€ ์•Š๋Š”๋‹ค
extension extensions/to-production To-production์€ source-preserving hotfix ์ด์‹์ด๋‹ค
extension extensions/tool-group-renderer ๋„๊ตฌ ์ถœ๋ ฅ์€ ๋Œ€ํ™” ํ๋ฆ„์„ ์นจ๋ฒ”ํ•˜์ง€ ์•Š๋Š”๋‹ค
extension extensions/tui-ask ์ƒ‰์ƒ์€ ์ •๋ณด ์œ„๊ณ„๋‹ค
TUI ์งˆ๋ฌธ์€ ์ž‘์€ ์˜์‚ฌ๊ฒฐ์ • ๊ฒŒ์ดํŠธ๋‹ค
๋ฐ˜๋ณต ์›Œํฌํ”Œ๋กœ ์‹คํŒจ๋Š” guard/flow๋กœ ๊ณ ์ •ํ•œ๋‹ค
extension extensions/until Until loop๋Š” ์ข…๋ฃŒ ์กฐ๊ฑด์„ ๋ช…์‹œ ๋ณด๊ณ ํ•œ๋‹ค
extension extensions/usage-analytics ๋„๊ตฌ ์ถœ๋ ฅ์€ ๋Œ€ํ™” ํ๋ฆ„์„ ์นจ๋ฒ”ํ•˜์ง€ ์•Š๋Š”๋‹ค
extension extensions/usage-reporter Idle UI๋Š” ์žฅ์‹์ด ์•„๋‹ˆ๋ผ ambient status๋‹ค
๋„๊ตฌ ์ถœ๋ ฅ์€ ๋Œ€ํ™” ํ๋ฆ„์„ ์นจ๋ฒ”ํ•˜์ง€ ์•Š๋Š”๋‹ค
extension extensions/user-facing-language User-facing ์ถœ๋ ฅ์€ ํ•œ๊ตญ์–ด๋ฅผ ๊ธฐ๋ณธ์œผ๋กœ ํ•œ๋‹ค
extension extensions/utils TFT Studio๋Š” TFT ๋‹จ๊ณ„๋ฅผ ์ž‘์—… ๋‹จ์œ„ UI๋กœ ๋ฌถ๋Š”๋‹ค
MCP stderr๋Š” TUI ์ถœ๋ ฅ์ด ์•„๋‹ˆ๋‹ค
Read/Edit tool override๋Š” ํ•„์š”ํ•œ ์ฆ๊ฑฐ๋งŒ ํŽผ์นœ๋‹ค
Session export๋Š” ์›๋ณธ์„ ๋ณด์กดํ•˜๋Š” adapter๋ฅผ ๊ฑฐ์นœ๋‹ค
ํ„ฐ๋ฏธ๋„ ์—ฐ๋™์€ host adapter๋กœ ๋‹ค๋ฃฌ๋‹ค
Utils surface๋Š” ์‚ฌ์šฉ์ž ๊ณ„์•ฝ์„ ๋งŒ๋“ค์ง€ ์•Š๋Š”๋‹ค
Working Context Card๋Š” ํฐ ๋งฅ๋ฝ์„ ํ˜„์žฌ slice๋กœ ์••์ถ•ํ•œ๋‹ค
extension extensions/web-access ๊ฒ€ํ†  ์‚ฐ์ถœ๋ฌผ์€ ๋‹ค์‹œ ์—ด ์ˆ˜ ์žˆ์–ด์•ผ ํ•œ๋‹ค
์›น ๊ฒ€์ƒ‰์€ ์Šน์ธ๋œ ์ถœ์ฒ˜ ์„ ํƒ์„ ๊ฑฐ์นœ๋‹ค
Deterministic fallback์€ workflow๋ฅผ ๋ณด์กดํ•œ๋‹ค
Embedded WebView script๋Š” escape ๊ฒฝ๊ณ„๋ฅผ ๋ณด์กดํ•œ๋‹ค
User-facing ์ถœ๋ ฅ์€ ํ•œ๊ตญ์–ด๋ฅผ ๊ธฐ๋ณธ์œผ๋กœ ํ•œ๋‹ค
Live artifact๋Š” local preview first๋‹ค
Web Search curator์™€ ์Šน์ธํ˜• ์š”์•ฝ ํ๋ฆ„
extension extensions/work-context Auto-commit์€ ๋ช…์‹œ ๊ณ„ํš๋งŒ ์‹คํ–‰ํ•œ๋‹ค
Slice ์™„๋ฃŒ๋Š” commit ํ›„๋ณด๋ฅผ ๋งŒ๋“ ๋‹ค
Task overlay๋Š” ์ž‘์—… ๋งต์„ ๋ณด์กดํ•œ๋‹ค
Working Context Card๋Š” ํฐ ๋งฅ๋ฝ์„ ํ˜„์žฌ slice๋กœ ์••์ถ•ํ•œ๋‹ค
extension extensions/workflow-guard Slice ์™„๋ฃŒ๋Š” commit ํ›„๋ณด๋ฅผ ๋งŒ๋“ ๋‹ค
Working Context Card๋Š” ํฐ ๋งฅ๋ฝ์„ ํ˜„์žฌ slice๋กœ ์••์ถ•ํ•œ๋‹ค
๋ฐ˜๋ณต ์›Œํฌํ”Œ๋กœ ์‹คํŒจ๋Š” guard/flow๋กœ ๊ณ ์ •ํ•œ๋‹ค
extension extensions/working-text Editor affordance๋Š” ์ˆจ์€ ์ปจํ…์ŠคํŠธ๊ฐ€ ์•„๋‹ˆ๋‹ค
extension extensions/workspace ํ„ฐ๋ฏธ๋„ ์—ฐ๋™์€ host adapter๋กœ ๋‹ค๋ฃฌ๋‹ค
ํ„ฐ๋ฏธ๋„ workspace ๋ณต์›์€ snapshot๊ณผ host adapter๋ฅผ ๋ถ„๋ฆฌํ•œ๋‹ค
extension extensions/worktree Worker๋Š” readiness ownership์„ ๊ฐ€์ง„๋‹ค
Frame์€ ๋งˆ์ง€๋ง‰์— Plan์„ ํ•ฉ์„ฑํ•œ๋‹ค
Private overlay package๋Š” ํšŒ์‚ฌยท๊ฐœ์ธ ์‹คํ–‰ ๋งฅ๋ฝ์„ ๋‹ด๋Š”๋‹ค
Queued command๋Š” ์‹คํ–‰ ๋ณด์žฅ์ด ์•„๋‹ˆ๋‹ค
์ข…๋ฃŒ๋œ ํฌํฌ๋Š” transcript ์ฃผ์ž…๋ณด๋‹ค revive๊ฐ€ ์šฐ์„ ์ด๋‹ค
์„ธ์…˜ ์‹๋ณ„์ž๋Š” ํŒŒ์ผ๋ช…์ด ์•„๋‹ˆ๋ผ ์‚ฌ๋žŒ์ด ๋ณธ ์ด๋ฆ„์ด๋‹ค
Worktree ์ƒ์„ฑ์€ ํ˜„์žฌ ํŒจ๋„ ๋Œ€ํ™”๊ฐ€ source๋‹ค
Worktree ์˜์กด์„ฑ ์ค€๋น„๋Š” ์กฐ๊ฑด๋ถ€ worker๊ฐ€ ๋งก๋Š”๋‹ค
Worktree๋Š” ์‹คํ–‰ ๊ฒฝ๊ณ„๋‹ค
Worktree ์„ธ์…˜ ์—ฐ์†์„ฑ๊ณผ ์‹๋ณ„์„ฑ ์›์น™
skill skills/ask-user-question-rules AskUserQuestion์€ ์˜์‚ฌ๊ฒฐ์ • ๊ฒŒ์ดํŠธ๋‹ค
AskUserQuestion ์˜ต์…˜์€ ํ–‰๋™ ๋ถ„๊ธฐ๋ฅผ ํ‘œํ˜„ํ•œ๋‹ค
TFT Preference Regression Gate๋Š” ์‚ฌ์šฉ์ž ์„ ํ˜ธ ์—ญ์ „์„ ๋ง‰๋Š”๋‹ค
์ƒ‰์ƒ์€ ์ •๋ณด ์œ„๊ณ„๋‹ค
TUI ์งˆ๋ฌธ์€ ์ž‘์€ ์˜์‚ฌ๊ฒฐ์ • ๊ฒŒ์ดํŠธ๋‹ค
skill skills/ci-ship CI-Ship์€ PR ํ›„ ๊ฒ€์ฆ ์‹คํŒจ ๋Œ€์‘ ๋‹จ๊ณ„๋‹ค
Subagent๋Š” slash command๊ฐ€ ์•„๋‹ˆ๋ผ skill prompt๋ฅผ ์œ„์ž„๋ฐ›๋Š”๋‹ค
skill skills/code-review-and-quality ๋ณ€๊ฒฝ ํ†ตํ•ฉ์€ ์ž‘์€ ๋‹จ์œ„์™€ ๊ฒ€์ฆ์„ ์š”๊ตฌํ•œ๋‹ค
Diff review draft๋Š” PR ์ฝ”๋ฉ˜ํŠธ ์ „ ๋‹จ๊ณ„๋‹ค
๋ณ€๊ฒฝ๋œ ์ค„์€ ์š”์ฒญ์œผ๋กœ ์ถ”์  ๊ฐ€๋Šฅํ•ด์•ผ ํ•œ๋‹ค
๊ฒ€์ฆ ์ค‘ ์ฝ”๋“œ ๋ณ€๊ฒฝ์€ ์ด์ „ ๊ฒ€์ฆ์„ ๋ฌดํšจํ™”ํ•œ๋‹ค
skill skills/db-write DB write๋Š” ์ธ๊ฐ„ ์‹คํ–‰ ๊ฒŒ์ดํŠธ๋ฅผ ๊ฐ€์ง„๋‹ค
Private overlay package๋Š” ํšŒ์‚ฌยท๊ฐœ์ธ ์‹คํ–‰ ๋งฅ๋ฝ์„ ๋‹ด๋Š”๋‹ค
skill skills/db-write-migration DB write๋Š” ์ธ๊ฐ„ ์‹คํ–‰ ๊ฒŒ์ดํŠธ๋ฅผ ๊ฐ€์ง„๋‹ค
Private overlay package๋Š” ํšŒ์‚ฌยท๊ฐœ์ธ ์‹คํ–‰ ๋งฅ๋ฝ์„ ๋‹ด๋Š”๋‹ค
skill skills/debugging-and-error-recovery ์ˆ˜์ • ์ „์— ๊ทผ๋ณธ ์›์ธ์„ ์ขํžŒ๋‹ค
skill skills/decide Architecture friction์€ TFT์˜ ๊ฒ€์ฆ ์ถ•์ด๋‹ค
AskUserQuestion์€ ์˜์‚ฌ๊ฒฐ์ • ๊ฒŒ์ดํŠธ๋‹ค
AskUserQuestion ์˜ต์…˜์€ ํ–‰๋™ ๋ถ„๊ธฐ๋ฅผ ํ‘œํ˜„ํ•œ๋‹ค
๋ฐฑ์—”๋“œ ๋ ˆ์ด์–ด ๋งต์€ Frame์˜ ์ดˆ๊ธฐ ์ดํ•ด ๊ฒŒ์ดํŠธ๋‹ค
Decide๋Š” ์„ ํƒ์„ ํ•œ ๋ฒˆ ๊ณต๊ฒฉํ•œ๋‹ค
Frame๊ณผ Verify๋Š” ๊ตฌ์กฐํ™” ๊ณ„์•ฝ์ด๋‹ค
์ •์ฑ…์ถ• ์Šค์บ”์€ Frame์˜ ์ดˆ๊ธฐ ๊ฒŒ์ดํŠธ๋‹ค
Command shim์€ skill source of truth๋ฅผ ์ง€ํ‚จ๋‹ค
TFT Preference Regression Gate๋Š” ์‚ฌ์šฉ์ž ์„ ํ˜ธ ์—ญ์ „์„ ๋ง‰๋Š”๋‹ค
skill skills/ember-ship Ember Ship์€ knowledge ์ •ํ•ฉ์„ฑ์„ release train์œผ๋กœ ๋‹ซ๋Š”๋‹ค
Knowledge review queue๋Š” PR body์— ๋‚จ๊ธด๋‹ค
skill skills/frame Architecture friction์€ TFT์˜ ๊ฒ€์ฆ ์ถ•์ด๋‹ค
AskUserQuestion์€ ์˜์‚ฌ๊ฒฐ์ • ๊ฒŒ์ดํŠธ๋‹ค
AskUserQuestion ์˜ต์…˜์€ ํ–‰๋™ ๋ถ„๊ธฐ๋ฅผ ํ‘œํ˜„ํ•œ๋‹ค
Atomic evidence workflow๋Š” ์ž‘์€ claim์„ ์ฆ๊ฑฐ๋กœ ๋‹ซ๋Š”๋‹ค
๋ฐฑ์—”๋“œ ๋ ˆ์ด์–ด ๋งต์€ Frame์˜ ์ดˆ๊ธฐ ์ดํ•ด ๊ฒŒ์ดํŠธ๋‹ค
Decide๋Š” ์„ ํƒ์„ ํ•œ ๋ฒˆ ๊ณต๊ฒฉํ•œ๋‹ค
Frame์€ ๋งˆ์ง€๋ง‰์— Plan์„ ํ•ฉ์„ฑํ•œ๋‹ค
Frame identity๋Š” cwd๋ณด๋‹ค ์ž‘์—… ์˜๋„๋ฅผ ์šฐ์„ ํ•œ๋‹ค
TFT Studio๋Š” TFT ๋‹จ๊ณ„๋ฅผ ์ž‘์—… ๋‹จ์œ„ UI๋กœ ๋ฌถ๋Š”๋‹ค
Frame๊ณผ Verify๋Š” ๊ตฌ์กฐํ™” ๊ณ„์•ฝ์ด๋‹ค
์ •์ฑ…์ถ• ์Šค์บ”์€ Frame์˜ ์ดˆ๊ธฐ ๊ฒŒ์ดํŠธ๋‹ค
Slice ์™„๋ฃŒ๋Š” commit ํ›„๋ณด๋ฅผ ๋งŒ๋“ ๋‹ค
Command shim์€ skill source of truth๋ฅผ ์ง€ํ‚จ๋‹ค
TFT Preference Regression Gate๋Š” ์‚ฌ์šฉ์ž ์„ ํ˜ธ ์—ญ์ „์„ ๋ง‰๋Š”๋‹ค
Working Context Card๋Š” ํฐ ๋งฅ๋ฝ์„ ํ˜„์žฌ slice๋กœ ์••์ถ•ํ•œ๋‹ค
์ž‘์—… ์ ˆ์ฐจ์˜ ๋ฌด๊ฒŒ๋Š” ๋ณ€๊ฒฝ ๋ฆฌ์Šคํฌ์— ๋น„๋ก€ํ•ด์•ผ ํ•œ๋‹ค
skill skills/git-workflow-and-versioning ๋ณ€๊ฒฝ ํ†ตํ•ฉ์€ ์ž‘์€ ๋‹จ์œ„์™€ ๊ฒ€์ฆ์„ ์š”๊ตฌํ•œ๋‹ค
๋ณ€๊ฒฝ๋œ ์ค„์€ ์š”์ฒญ์œผ๋กœ ์ถ”์  ๊ฐ€๋Šฅํ•ด์•ผ ํ•œ๋‹ค
Slice ์™„๋ฃŒ๋Š” commit ํ›„๋ณด๋ฅผ ๋งŒ๋“ ๋‹ค
๋ฐ˜๋ณต ๊ฒ€์ฆ ์‹คํŒจ๋Š” baseline cache๋กœ ๋ถ„๋ฆฌํ•œ๋‹ค
skill skills/incremental-implementation Atomic evidence workflow๋Š” ์ž‘์€ claim์„ ์ฆ๊ฑฐ๋กœ ๋‹ซ๋Š”๋‹ค
๋ณ€๊ฒฝ ํ†ตํ•ฉ์€ ์ž‘์€ ๋‹จ์œ„์™€ ๊ฒ€์ฆ์„ ์š”๊ตฌํ•œ๋‹ค
๋ณ€๊ฒฝ๋œ ์ค„์€ ์š”์ฒญ์œผ๋กœ ์ถ”์  ๊ฐ€๋Šฅํ•ด์•ผ ํ•œ๋‹ค
Slice ์™„๋ฃŒ๋Š” commit ํ›„๋ณด๋ฅผ ๋งŒ๋“ ๋‹ค
์ž‘์—… ์ ˆ์ฐจ์˜ ๋ฌด๊ฒŒ๋Š” ๋ณ€๊ฒฝ ๋ฆฌ์Šคํฌ์— ๋น„๋ก€ํ•ด์•ผ ํ•œ๋‹ค
skill skills/interactive-shell Interactive shell์€ bash๊ฐ€ ์•„๋‹Œ ํ„ฐ๋ฏธ๋„ ์„ธ์…˜์ด๋‹ค
skill skills/jira-issue-management ์™ธ๋ถ€ ์ด์Šˆ ์—…๋ฐ์ดํŠธ๋Š” preview gate๋ฅผ ์ง€๋‚œ๋‹ค
Private overlay package๋Š” ํšŒ์‚ฌยท๊ฐœ์ธ ์‹คํ–‰ ๋งฅ๋ฝ์„ ๋‹ด๋Š”๋‹ค
skill skills/pilee-final-check Atomic evidence workflow๋Š” ์ž‘์€ claim์„ ์ฆ๊ฑฐ๋กœ ๋‹ซ๋Š”๋‹ค
Ember Ship์€ knowledge ์ •ํ•ฉ์„ฑ์„ release train์œผ๋กœ ๋‹ซ๋Š”๋‹ค
์ตœ์ข… ๊ฒ€์ฆ์€ ๋ฉ”์ธ ์„ธ์…˜์„ ๋ง‰์ง€ ์•Š๊ณ  ๋ณ‘๋ ฌํ™”ํ•œ๋‹ค
pilee ๋ณ€๊ฒฝ์€ final-check gate๋กœ ๋‹ซ๋Š”๋‹ค
TFT Preference Regression Gate๋Š” ์‚ฌ์šฉ์ž ์„ ํ˜ธ ์—ญ์ „์„ ๋ง‰๋Š”๋‹ค
skill skills/pilee-knowledge ๋‚ฎ์€ confidence ํŒ๋‹จ์€ ์ •ํ•ฉ์„ฑ PR๋กœ ์˜ฌ๋ฆฐ๋‹ค
Ember๋Š” knowledge์˜ ์นœ๊ทผํ•œ ์ž…๊ตฌ๋‹ค
Ember Ship์€ knowledge ์ •ํ•ฉ์„ฑ์„ release train์œผ๋กœ ๋‹ซ๋Š”๋‹ค
Freshness๋Š” ์ง„๋‹จ์„œ๋‹ค
Knowledge ๋ฌธ์„œ ๋‹จ์œ„๋Š” ํŒ๋‹จ ํ•˜๋‚˜๋‹ค
Knowledge review queue๋Š” PR body์— ๋‚จ๊ธด๋‹ค
pilee ์ง€์‹ ๊ณ„์ธต๊ณผ ์ •ํ•ฉ์„ฑ ๊ฐฑ์‹ 
Private journal๊ณผ public doctrine์€ ๋ถ„๋ฆฌํ•œ๋‹ค
README ์ฒ ํ•™ ๋ณ€๊ฒฝ์€ ์‚ฌ์šฉ์ž ํŒ๋‹จ ๊ฒŒ์ดํŠธ๋ฅผ ์ง€๋‚œ๋‹ค
reviewed_commit์€ ๋‚ ์งœ freshness์˜ ๋นˆํ‹ˆ์„ ๋ง‰๋Š”๋‹ค
skill skills/pr-ship Ship๊ณผ PR-Ship์€ ์„œ๋กœ ๋‹ค๋ฅธ ํ†ตํ•ฉ ๋‹จ๊ณ„๋‹ค
Subagent๋Š” slash command๊ฐ€ ์•„๋‹ˆ๋ผ skill prompt๋ฅผ ์œ„์ž„๋ฐ›๋Š”๋‹ค
skill skills/self-healing Worker๋Š” readiness ownership์„ ๊ฐ€์ง„๋‹ค
Self-healing์€ actionable item๋งŒ ์ˆ˜์ •ํ•œ๋‹ค
Codex-first subagent ๋ชจ๋ธ ์šด์šฉ ์ •์ฑ…
Subagent ์œ„์ž„์€ ๊ตฌ์ฒด ํ”„๋กฌํ”„ํŠธ๋ฅผ ์š”๊ตฌํ•œ๋‹ค
skill skills/ship ์ตœ์ข… ๊ฒ€์ฆ์€ ๋ฉ”์ธ ์„ธ์…˜์„ ๋ง‰์ง€ ์•Š๊ณ  ๋ณ‘๋ ฌํ™”ํ•œ๋‹ค
Ship๊ณผ PR-Ship์€ ์„œ๋กœ ๋‹ค๋ฅธ ํ†ตํ•ฉ ๋‹จ๊ณ„๋‹ค
Subagent๋Š” slash command๊ฐ€ ์•„๋‹ˆ๋ผ skill prompt๋ฅผ ์œ„์ž„๋ฐ›๋Š”๋‹ค
skill skills/skill-creator Skill์€ ์žฌ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ์ ˆ์ฐจ๋‹ค
skill skills/start-local-dev ๋กœ์ปฌ ๊ฐœ๋ฐœ ์„œ๋ฒ„ ์‹œ์ž‘์€ ์ง„๋‹จ ๊ฐ€๋Šฅํ•œ ์ ˆ์ฐจ์—ฌ์•ผ ํ•œ๋‹ค
Private overlay package๋Š” ํšŒ์‚ฌยท๊ฐœ์ธ ์‹คํ–‰ ๋งฅ๋ฝ์„ ๋‹ด๋Š”๋‹ค
skill skills/stress-interview Worker๋Š” readiness ownership์„ ๊ฐ€์ง„๋‹ค
Self-healing์€ actionable item๋งŒ ์ˆ˜์ •ํ•œ๋‹ค
Stress Interview๋Š” ๋‹ค์ถ• ๊ฒ€ํ† ๋‹ค
Codex-first subagent ๋ชจ๋ธ ์šด์šฉ ์ •์ฑ…
Subagent ์œ„์ž„์€ ๊ตฌ์ฒด ํ”„๋กฌํ”„ํŠธ๋ฅผ ์š”๊ตฌํ•œ๋‹ค
skill skills/systematic-debugging ์ˆ˜์ • ์ „์— ๊ทผ๋ณธ ์›์ธ์„ ์ขํžŒ๋‹ค
Skill์€ ์žฌ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ์ ˆ์ฐจ๋‹ค
skill skills/tft-guidelines AskUserQuestion์€ ์˜์‚ฌ๊ฒฐ์ • ๊ฒŒ์ดํŠธ๋‹ค
AskUserQuestion ์˜ต์…˜์€ ํ–‰๋™ ๋ถ„๊ธฐ๋ฅผ ํ‘œํ˜„ํ•œ๋‹ค
๋ฐฑ์—”๋“œ ๋ ˆ์ด์–ด ๋งต์€ Frame์˜ ์ดˆ๊ธฐ ์ดํ•ด ๊ฒŒ์ดํŠธ๋‹ค
์ •์ฑ…์ถ• ์Šค์บ”์€ Frame์˜ ์ดˆ๊ธฐ ๊ฒŒ์ดํŠธ๋‹ค
TFT Preference Regression Gate๋Š” ์‚ฌ์šฉ์ž ์„ ํ˜ธ ์—ญ์ „์„ ๋ง‰๋Š”๋‹ค
TFT visual์€ ๊ตฌ์กฐ ๋ณ€ํ™”๋ฅผ ํ•™์Šต ๊ฐ€๋Šฅํ•œ ๊ทธ๋ฆผ์œผ๋กœ ๋ณด์—ฌ์ค€๋‹ค
TUI ์งˆ๋ฌธ์€ ์ž‘์€ ์˜์‚ฌ๊ฒฐ์ • ๊ฒŒ์ดํŠธ๋‹ค
skill skills/to-production To-production์€ source-preserving hotfix ์ด์‹์ด๋‹ค
skill skills/verify Architecture friction์€ TFT์˜ ๊ฒ€์ฆ ์ถ•์ด๋‹ค
AskUserQuestion์€ ์˜์‚ฌ๊ฒฐ์ • ๊ฒŒ์ดํŠธ๋‹ค
AskUserQuestion ์˜ต์…˜์€ ํ–‰๋™ ๋ถ„๊ธฐ๋ฅผ ํ‘œํ˜„ํ•œ๋‹ค
Atomic evidence workflow๋Š” ์ž‘์€ claim์„ ์ฆ๊ฑฐ๋กœ ๋‹ซ๋Š”๋‹ค
๋ฐฑ์—”๋“œ ๋ ˆ์ด์–ด ๋งต์€ Frame์˜ ์ดˆ๊ธฐ ์ดํ•ด ๊ฒŒ์ดํŠธ๋‹ค
Decide๋Š” ์„ ํƒ์„ ํ•œ ๋ฒˆ ๊ณต๊ฒฉํ•œ๋‹ค
์™„๋ฃŒ ์„ ์–ธ์€ ์ฆ๊ฑฐ ๋’ค์—๋งŒ ์˜จ๋‹ค
Frame๊ณผ Verify๋Š” ๊ตฌ์กฐํ™” ๊ณ„์•ฝ์ด๋‹ค
์ •์ฑ…์ถ• ์Šค์บ”์€ Frame์˜ ์ดˆ๊ธฐ ๊ฒŒ์ดํŠธ๋‹ค
๋ณ€๊ฒฝ๋œ ์ค„์€ ์š”์ฒญ์œผ๋กœ ์ถ”์  ๊ฐ€๋Šฅํ•ด์•ผ ํ•œ๋‹ค
Command shim์€ skill source of truth๋ฅผ ์ง€ํ‚จ๋‹ค
TFT Preference Regression Gate๋Š” ์‚ฌ์šฉ์ž ์„ ํ˜ธ ์—ญ์ „์„ ๋ง‰๋Š”๋‹ค
๋ฐ˜๋ณต ๊ฒ€์ฆ ์‹คํŒจ๋Š” baseline cache๋กœ ๋ถ„๋ฆฌํ•œ๋‹ค
๊ฒ€์ฆ ์ค‘ ์ฝ”๋“œ ๋ณ€๊ฒฝ์€ ์ด์ „ ๊ฒ€์ฆ์„ ๋ฌดํšจํ™”ํ•œ๋‹ค
Verify risk lens๋Š” generic core์™€ private overlay๋กœ ๋‚˜๋ˆˆ๋‹ค
skill skills/verify-report Atomic evidence workflow๋Š” ์ž‘์€ claim์„ ์ฆ๊ฑฐ๋กœ ๋‹ซ๋Š”๋‹ค
๋ฐฑ์—”๋“œ ๋ ˆ์ด์–ด ๋งต์€ Frame์˜ ์ดˆ๊ธฐ ์ดํ•ด ๊ฒŒ์ดํŠธ๋‹ค
Deterministic fallback์€ workflow๋ฅผ ๋ณด์กดํ•œ๋‹ค
์™„๋ฃŒ ์„ ์–ธ์€ ์ฆ๊ฑฐ ๋’ค์—๋งŒ ์˜จ๋‹ค
User-facing ์ถœ๋ ฅ์€ ํ•œ๊ตญ์–ด๋ฅผ ๊ธฐ๋ณธ์œผ๋กœ ํ•œ๋‹ค
Live artifact๋Š” local preview first๋‹ค
์ •์ฑ…์ถ• ์Šค์บ”์€ Frame์˜ ์ดˆ๊ธฐ ๊ฒŒ์ดํŠธ๋‹ค
Private overlay package๋Š” ํšŒ์‚ฌยท๊ฐœ์ธ ์‹คํ–‰ ๋งฅ๋ฝ์„ ๋‹ด๋Š”๋‹ค
๊ฒ€์ฆ ์ค‘ ์ฝ”๋“œ ๋ณ€๊ฒฝ์€ ์ด์ „ ๊ฒ€์ฆ์„ ๋ฌดํšจํ™”ํ•œ๋‹ค
Verify Report ์ „์—๋Š” readiness๋ฅผ ๋จผ์ € ์ž ๊ทผ๋‹ค
Verify Report์™€ coverage-aware ์ฆ๊ฑฐ ๊ฒ€์ฆ ํ๋ฆ„
skill skills/verify-report-preflight Verify Report ์ „์—๋Š” readiness๋ฅผ ๋จผ์ € ์ž ๊ทผ๋‹ค
์ž‘์—… ์ ˆ์ฐจ์˜ ๋ฌด๊ฒŒ๋Š” ๋ณ€๊ฒฝ ๋ฆฌ์Šคํฌ์— ๋น„๋ก€ํ•ด์•ผ ํ•œ๋‹ค
agent agents Worker๋Š” readiness ownership์„ ๊ฐ€์ง„๋‹ค
Atomic evidence workflow๋Š” ์ž‘์€ claim์„ ์ฆ๊ฑฐ๋กœ ๋‹ซ๋Š”๋‹ค
Self-healing์€ actionable item๋งŒ ์ˆ˜์ •ํ•œ๋‹ค
Stress Interview๋Š” ๋‹ค์ถ• ๊ฒ€ํ† ๋‹ค
Codex-first subagent ๋ชจ๋ธ ์šด์šฉ ์ •์ฑ…
Subagent ์œ„์ž„์€ ๊ตฌ์ฒด ํ”„๋กฌํ”„ํŠธ๋ฅผ ์š”๊ตฌํ•œ๋‹ค
Worktree ์˜์กด์„ฑ ์ค€๋น„๋Š” ์กฐ๊ฑด๋ถ€ worker๊ฐ€ ๋งก๋Š”๋‹ค
script scripts/check-pilee-final-check.mjs pilee ๋ณ€๊ฒฝ์€ final-check gate๋กœ ๋‹ซ๋Š”๋‹ค
script scripts/knowledge.mjs ๋‚ฎ์€ confidence ํŒ๋‹จ์€ ์ •ํ•ฉ์„ฑ PR๋กœ ์˜ฌ๋ฆฐ๋‹ค
Deterministic action๊ณผ AI review action์€ ๋ถ„๋ฆฌํ•œ๋‹ค
Ember๋Š” knowledge์˜ ์นœ๊ทผํ•œ ์ž…๊ตฌ๋‹ค
Ember Ship์€ knowledge ์ •ํ•ฉ์„ฑ์„ release train์œผ๋กœ ๋‹ซ๋Š”๋‹ค
Freshness๋Š” ์ง„๋‹จ์„œ๋‹ค
Knowledge ๋ฌธ์„œ ๋‹จ์œ„๋Š” ํŒ๋‹จ ํ•˜๋‚˜๋‹ค
Knowledge review queue๋Š” PR body์— ๋‚จ๊ธด๋‹ค
pilee ๋ณ€๊ฒฝ์€ final-check gate๋กœ ๋‹ซ๋Š”๋‹ค
pilee ์ง€์‹ ๊ณ„์ธต๊ณผ ์ •ํ•ฉ์„ฑ ๊ฐฑ์‹ 
Private journal๊ณผ public doctrine์€ ๋ถ„๋ฆฌํ•œ๋‹ค
README๋Š” knowledge coverage map์ด๋‹ค
reviewed_commit์€ ๋‚ ์งœ freshness์˜ ๋นˆํ‹ˆ์„ ๋ง‰๋Š”๋‹ค
Shortcut Atlas๋Š” ๋‹จ์ถ•ํ‚ค ํ‘œ๋ฉด์„ ํ•œ ๋ฒˆ์— ๊ฒ€ํ† ํ•œ๋‹ค
script scripts/tft-regression-audit.mjs TFT Preference Regression Gate๋Š” ์‚ฌ์šฉ์ž ์„ ํ˜ธ ์—ญ์ „์„ ๋ง‰๋Š”๋‹ค
docs docs/knowledge ๋‚ฎ์€ confidence ํŒ๋‹จ์€ ์ •ํ•ฉ์„ฑ PR๋กœ ์˜ฌ๋ฆฐ๋‹ค
Deterministic action๊ณผ AI review action์€ ๋ถ„๋ฆฌํ•œ๋‹ค
Ember๋Š” knowledge์˜ ์นœ๊ทผํ•œ ์ž…๊ตฌ๋‹ค
Freshness๋Š” ์ง„๋‹จ์„œ๋‹ค
Knowledge ๋ฌธ์„œ ๋‹จ์œ„๋Š” ํŒ๋‹จ ํ•˜๋‚˜๋‹ค
pilee ์ง€์‹ ๊ณ„์ธต๊ณผ ์ •ํ•ฉ์„ฑ ๊ฐฑ์‹ 
Private journal๊ณผ public doctrine์€ ๋ถ„๋ฆฌํ•œ๋‹ค
README๋Š” knowledge coverage map์ด๋‹ค
README ์ฒ ํ•™ ๋ณ€๊ฒฝ์€ ์‚ฌ์šฉ์ž ํŒ๋‹จ ๊ฒŒ์ดํŠธ๋ฅผ ์ง€๋‚œ๋‹ค
reviewed_commit์€ ๋‚ ์งœ freshness์˜ ๋นˆํ‹ˆ์„ ๋ง‰๋Š”๋‹ค
Session export๋Š” ์›๋ณธ์„ ๋ณด์กดํ•˜๋Š” adapter๋ฅผ ๊ฑฐ์นœ๋‹ค
concern show-report ๊ฒ€ํ†  ์‚ฐ์ถœ๋ฌผ์€ ๋‹ค์‹œ ์—ด ์ˆ˜ ์žˆ์–ด์•ผ ํ•œ๋‹ค
Live artifact๋Š” local preview first๋‹ค
Verify Report์™€ coverage-aware ์ฆ๊ฑฐ ๊ฒ€์ฆ ํ๋ฆ„
concern web_search ์›น ๊ฒ€์ƒ‰์€ ์Šน์ธ๋œ ์ถœ์ฒ˜ ์„ ํƒ์„ ๊ฑฐ์นœ๋‹ค
User-facing ์ถœ๋ ฅ์€ ํ•œ๊ตญ์–ด๋ฅผ ๊ธฐ๋ณธ์œผ๋กœ ํ•œ๋‹ค
Web Search curator์™€ ์Šน์ธํ˜• ์š”์•ฝ ํ๋ฆ„

Extensions

53๊ฐœ. ๋„๊ตฌ๋ฅผ ๋“ฑ๋กํ•˜์ง€ ์•Š๋Š” ์ต์Šคํ…์…˜(spinner, session-title ๋“ฑ)์€ ํ† ํฐ ์˜ํ–ฅ 0.

extensions/*์™€ scripts/knowledge.mjs์˜ inventory metadata์—์„œ ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค. ๋ณ€๊ฒฝ ํ›„ node scripts/knowledge.mjs --graph๋กœ ๊ฐฑ์‹ ํ•ฉ๋‹ˆ๋‹ค.

์ธํ”„๋ผ

์ด๋ฆ„ ์„ค๋ช…
subagent >> ๋ฐฑ๊ทธ๋ผ์šด๋“œ ์—์ด์ „ํŠธ ์œ„์ž„ โ€” hang ๊ฐ์ง€, auto-retry, ask_master ์—์Šค์ปฌ๋ ˆ์ด์…˜, /subagents TUI
supervisor ๋Œ€ํ™” ๋ฐฉํ–ฅ ๊ฐ์‹œ + ์ž๋™ ์Šคํ‹ฐ์–ด๋ง
cc-system-prompt ์ตœ์†Œ Claude Code system prompt bridge
claude-code-ui Read/Write/Edit/Bash ๋ Œ๋”๋ง ์ปค์Šคํ…€
claude-hooks-bridge Claude hooks ์ด๋ฒคํŠธ ๋ธŒ๋ฆฟ์ง€
mcp-bridge ๊ธฐ์กด MCP server config ๊ธฐ๋ฐ˜ MCP ํ”„๋ก์‹œ
dynamic-agents-md ํŒŒ์ผ ํƒ์ƒ‰ ๊ฒฐ๊ณผ์— ๊ด€๋ จ AGENTS.md ์ž๋™ ์ฃผ์ž…
context-loader ์„ธ์…˜ ์‹œ์ž‘ ์‹œ ํ•„์š”ํ•œ ์ตœ์†Œ ์ปจํ…์ŠคํŠธ ๋กœ๋”ฉ surface
tool-group-renderer ๊ด€๋ จ ๋„๊ตฌ ์ถœ๋ ฅ ๊ทธ๋ฃน/์ถ•์†Œ
tft-commands /frame//decide//verify๋ฅผ pilee SKILL.md ์ธ๋ผ์ธ ์‹คํ–‰์œผ๋กœ ๋ผ์šฐํŒ…
ship-commands /ship//pr-ship//ci-ship์„ pilee SKILL.md ์ธ๋ผ์ธ ์‹คํ–‰์œผ๋กœ ๋ผ์šฐํŒ…ํ•˜๊ณ  PR ๋ฆฌ๋ทฐยทCI ์ปจํ…์ŠคํŠธ๋ฅผ ์ˆ˜์ง‘
frame-studio Glimpse ๊ธฐ๋ฐ˜ TFT Studio shell โ€” Frame/Decide/Verify/Verify Report ํƒญ + ์„ ํƒ UI/์ „๋ฌธ ์ €์žฅ + ๋‹จ์ผ companion WebView(/companion, Ctrl+Shift+G)
user-facing-language ์‚ฌ์šฉ์ž์—๊ฒŒ ๋ณด์ด๋Š” ์ง„ํ–‰/์š”์•ฝ/๋‹ต๋ณ€์€ ์งง์€ ํ•œ๊ตญ์–ด๋ฅผ ๊ธฐ๋ณธ์œผ๋กœ ํ•˜๋Š” system prompt guard
workflow-guard ์š”์ฒญ ์˜๋„ยท์ž‘์—… ๋ฌด๊ฒŒยทauditยท์„ ํƒ ํ›„ ์‹คํ–‰ ํ๋ฆ„์„ turn ๋‹จ์œ„๋กœ ๊ฐ•์ œํ•˜๋Š” guard

์„ธ์…˜ ๊ด€๋ฆฌ

์ด๋ฆ„ ์„ค๋ช…
worktree Git worktree ๋Œ€์‹œ๋ณด๋“œ โ€” backlog/active/done/archive, ํƒœ๊ทธ, ํ•„ํ„ฐ, bootstrapper, ์ „ํ™˜
fork-panel Ghostty ํŒจ๋„ ๋ถ„ํ•  ํฌํฌ + P0/P1/P2 ์‹๋ณ„์ž + parent inbox(/panels) + /handoff//done + /revive//repanel
workspace Ghostty window/tab/split ์ž‘์—…๊ณต๊ฐ„ snapshot ์ €์žฅยทappend ๋ณต์›
continue-clean ํ˜„์žฌ ์„ธ์…˜์˜ ์ตœ์†Œ handoff๋งŒ ์ƒˆ ์„ธ์…˜์— ์ฃผ์ž…ํ•ด ๊นจ๋—ํ•˜๊ฒŒ ์ด์–ด๊ฐ€๊ธฐ
to-production ํ˜„์žฌ worktree ๋ณ€๊ฒฝ์„ source ๋ณด์กด ๋ฐฉ์‹์œผ๋กœ ์ตœ์‹  production ๊ธฐ๋ฐ˜ target worktree/branch์— ์ด์‹
session-title ์„ธ์…˜ ์ œ๋ชฉ ์ž๋™ ์„ค์ •

UI / UX

์ด๋ฆ„ ์„ค๋ช…
footer ์ปค์Šคํ…€ ํ‘ธํ„ฐ โ€” ๋ธŒ๋žœ์น˜, ๋ชจ๋ธ, thinking ๋ ˆ๋ฒจ, ์ปจํ…์ŠคํŠธ ๋ฐ”
custom-style PolishedEditor โ€” >> ๋ชจ๋“œ ํ‘œ์‹œ, ์—๋””ํ„ฐ ํ…Œ๋‘๋ฆฌ, ghost text
prompt-suggest-lite ์ž…๋ ฅ ์ค‘ ํ”„๋กฌํ”„ํŠธ ์ž๋™์™„์„ฑ ์ œ์•ˆ
notify ์ž‘์—… ์™„๋ฃŒ ์‹œ widget ๋ฐ” ํ‘œ์‹œ + macOS ์•Œ๋ฆผ
idle-screensaver ๋น„ํ™œ์„ฑ ์ƒํƒœ์—์„œ ํฌ์ผ“๋ชฌ ์Šคํ”„๋ผ์ดํŠธ + ๋งˆ์ง€๋ง‰ ๋งฅ๋ฝ ํ‘œ์‹œ
spinner ์ŠคํŠธ๋ฆฌ๋ฐ ์ค‘ ์• ๋‹ˆ๋ฉ”์ด์…˜
working-text ์ž‘์—… ์ƒํƒœ ํ…์ŠคํŠธ
queued-messages ๋ฉ”์‹œ์ง€ ํ ์‹œ๊ฐํ™” + idle watchdog
diff-overlay /diff TUI โ€” ์ปค๋ฐ‹ ๋ชจ๋“œ, ํŒŒ์ผ ํŠธ๋ฆฌ, ๊ตฌ๋ฌธ ํ•˜์ด๋ผ์ดํŒ…
timestamp /timestamp TUI โ€” ๋Œ€ํ™” ํƒ€์ž„๋ผ์ธ
archive-to-html Verify/Web Search HTML ์•„์นด์ด๋ธŒ + /archive Artifact Browser(/show-report alias) + companion WebView ์žฌ์‚ฌ์šฉ
shortcut-atlas /shortcuts โ€” ํ„ฐ๋ฏธ๋„/Pi/pilee custom ๋‹จ์ถ•ํ‚ค atlas์™€ ์ถฉ๋Œ ๊ฒ€์‚ฌ

๋„๊ตฌ

์ด๋ฆ„ ์„ค๋ช…
bash-tool-override Bash tool ์ œ๋ชฉ/์ถœ๋ ฅ ๋ Œ๋”๋ง override โ€” ๋ช…๋ น ์˜๋„ ์ค‘์‹ฌ์œผ๋กœ ํ‘œ์‹œ
read-tool-override Read tool ์ถœ๋ ฅ preview/range ๋ Œ๋”๋ง override
edit-tool-override Edit tool ์‚ฌ์ „ diff preview์™€ side-by-side ๊ฒฐ๊ณผ ๋ Œ๋”๋ง override
interactive-shell ์ธํ„ฐ๋ž™ํ‹ฐ๋ธŒ/์žฅ์‹œ๊ฐ„ ์…ธ์„ overlayยทhands-freeยทdispatch ๋ชจ๋“œ๋กœ ์‹คํ–‰
tasks ์˜์—ญ๋ณ„ work-map overlay + ํƒœ์Šคํฌ CRUD + Ctrl+Shift+T/Ctrl+Shift+O
auto-commit ๋ช…์‹œ JSON plan ๊ธฐ๋ฐ˜ commit/push ์‹คํ–‰ ๋„๊ตฌ
tui-ask ํ„ฐ๋ฏธ๋„ overlay ์งˆ๋ฌธ ๋„๊ตฌ โ€” single/multi/text decision gate
web-access Tavily ์›น ๊ฒ€์ƒ‰ + URL ์ฝ˜ํ…์ธ  ์ถ”์ถœ + curator workflow
memory-layer ์žฅ๊ธฐ ๊ธฐ์–ต ์ €์žฅ/๊ฒ€์ƒ‰
ember ๋ถˆ์”จ(/ember) โ€” knowledge ํ›„๋ณด ์ฐพ๊ธฐ/add/check/refresh friendly entrypoint
ember-ship /ember-ship โ€” knowledge stale ํ•ด์†Œ๋ถ€ํ„ฐ generated/history/merge๊นŒ์ง€ ๋‹ซ๋Š” release train
backlog /backlog TUI โ€” ์ž‘์—… ๋ฐฑ๋กœ๊ทธ ๊ด€๋ฆฌ
preflight validation ์‹คํŒจ ๊ด€์ฐฐ + known baseline ์ž๋™ ๋ถ„๋ฆฌ tool
pr-comments PR unresolved review comment๋ฅผ editor์— ๋ถ™์ด๋Š” helper
pr-review-re-request ์Šน์ธ๋˜์ง€ ์•Š์€ PR reviewer/team์—๊ฒŒ review re-request
until ๋ฐ˜๋ณต ์ž‘์—… ์ถ”์ 
usage-analytics ์—์ด์ „ํŠธ/์Šคํ‚ฌ ์‚ฌ์šฉ๋Ÿ‰ ํ†ต๊ณ„
usage-reporter ์‚ฌ์šฉ๋Ÿ‰ ๋ฆฌํฌํŠธ
retro ์ผ๊ฐ„/์ฃผ๊ฐ„/์›”๊ฐ„ ํšŒ๊ณ  Notion ์—ฐ๋™
utils ๊ณต์œ  ๋‚ด๋ถ€ helper โ€” ์‚ฌ์šฉ์ž-facing ๊ณ„์•ฝ์ด ์•„๋‹Œ utility surface

๋ฏธ๋ถ„๋ฅ˜

์ด๋ฆ„ ์„ค๋ช…
work-context TODO: inventory ์„ค๋ช… ํ•„์š”

Skills

27๊ฐœ. ๊ธ€๋กœ๋ฒŒ ์›Œํฌํ”Œ๋กœ ์Šคํ‚ฌ๋งŒ pilee์— ํฌํ•จ. ํ”„๋กœ์ ํŠธ ๊ณ ์œ  ์Šคํ‚ฌ(create-pr, self-review)์€ ํ•ด๋‹น ๋ ˆํฌ/private overlay์— ์œ„์น˜.

skills/*/SKILL.md์™€ scripts/knowledge.mjs์˜ inventory metadata์—์„œ ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค. ๋ณ€๊ฒฝ ํ›„ node scripts/knowledge.mjs --graph๋กœ ๊ฐฑ์‹ ํ•ฉ๋‹ˆ๋‹ค.

ํ•ต์‹ฌ ์‚ฌ์ดํด

์Šคํ‚ฌ ์—ญํ• 
tft-guidelines TFT 4 ์ฒ ์น™ + (๋ช…๋ฐฑ) ํŒจํ„ด + ์–‘๋ฐฉํ–ฅ ํ•ฉ๋ฆฌํ™” ์ฐจ๋‹จ
ask-user-question-rules ์งˆ๋ฌธ ์ž‘์„ฑ ๊ทœ์น™ โ€” ์˜ต์…˜ ์„ค๊ณ„์™€ text-mode fallback์˜ ๊ณตํ†ต prerequisite
frame ๊ตฌํ˜„ ์ „ ๋ชฉํ‘œยท๋ฒ”์œ„ยท๊ฒ€์ฆ ๋ Œ์ฆˆ๋ฅผ ๊ตฌ์กฐํ™”ํ•˜๊ณ  frame data๋ฅผ ์ƒ์„ฑ
decide frame decision ํ์˜ ๋Œ€์•ˆ ๋น„๊ต์™€ challenge ์ฒ˜๋ฆฌ
verify frame data mechanical reader โ€” evidence ๊ธฐ๋ฐ˜ ๊ฒ€์ฆ

๋ฆฌ๋ทฐ

์Šคํ‚ฌ ์—ญํ• 
stress-interview 3 ๋ณ‘๋ ฌ ์—์ด์ „ํŠธ ์ฝ”๋“œ ๋ฆฌ๋ทฐ (verifier + reviewer + challenger)
self-healing stress-interview ๊ฒฐ๊ณผ๋ฅผ actionable fix cycle๋กœ ์—ฐ๊ฒฐ
code-review-and-quality ์ฝ”๋“œ ๋ฆฌ๋ทฐ ํ’ˆ์งˆ ๊ธฐ์ค€

์›Œํฌํ”Œ๋กœ

์Šคํ‚ฌ ์—ญํ• 
interactive-shell dev server/TUI/REPL/log viewer๋ฅผ interactive_shell๋กœ ๋‹ค๋ฃจ๋Š” ์‚ฌ์šฉ ๊ฐ€์ด๋“œ
systematic-debugging ๋ฒ„๊ทธ ๊ทผ๋ณธ์›์ธ ํŒŒ์•… โ†’ ์ˆ˜์ • ํ”„๋กœ์„ธ์Šค
debugging-and-error-recovery ์‹คํŒจํ•œ ํ…Œ์ŠคํŠธ/๋นŒ๋“œ/๋Ÿฐํƒ€์ž„ ์˜ค๋ฅ˜ ๋ณต๊ตฌ
git-workflow-and-versioning Git ์›Œํฌํ”Œ๋กœ์™€ ๋ณ€๊ฒฝ ๋‹จ์œ„ discipline
incremental-implementation ๊ฒ€์ฆ ๊ฐ€๋Šฅํ•œ ์–‡์€ vertical slice๋กœ ์ ์ง„ ๊ตฌํ˜„
skill-creator ์Šคํ‚ฌ ์ƒ์„ฑ/๊ฐœ์„ /ํ‰๊ฐ€ ์›Œํฌํ”Œ๋กœ
pilee-knowledge private history โ†’ public/sanitized knowledge ์Šน๊ฒฉ + ์ •ํ•ฉ์„ฑ ๊ฐฑ์‹ 
ember-ship pilee knowledge stale ํ•ด์†Œยทgenerated/history syncยทmerge๋ฅผ ํ•œ ์‚ฌ์ดํด๋กœ ๋‹ซ๋Š” release train
pilee-final-check pilee ๋ณ€๊ฒฝ ๋งˆ๋ฌด๋ฆฌ ์ „ ๊ตฌ๋ฉ ๋ฆฌ๋ทฐยท์žฌ๊ฒ€์ฆยท๊ธฐ๋ก/push ์ƒํƒœ ์ ๊ฒ€
db-write ์ธ๊ฐ„ ์‹คํ–‰ ๊ฒŒ์ดํŠธ๋ฅผ ๋‘” DB write guidance
db-write-migration ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ์„ค๊ณ„์™€ ๊ฒ€์ฆ guidance
jira-issue-management Jira ์ด์Šˆ ์ž‘์„ฑ/์ˆ˜์ • preview gate
ship PR ์ „ ๋ณ€๊ฒฝ์‚ฌํ•ญ์„ ์˜๋„ ๋‹จ์œ„ ์ปค๋ฐ‹ยท๊ฒ€์ฆยทpush๋กœ ์ •๋ฆฌ
to-production ํ˜„์žฌ worktree ๋ณ€๊ฒฝ์„ source ๋ณด์กด ๋ฐฉ์‹์œผ๋กœ production ๊ธฐ๋ฐ˜ hotfix target์— ์ด์‹
pr-ship PR ๋ฆฌ๋ทฐ ์ฝ”๋ฉ˜ํŠธ ๋Œ€์‘ ํ›„ ์ปค๋ฐ‹ยทpushยท์Šค๋ ˆ๋“œ ๋‹ต๊ธ€ยทreview re-request๊นŒ์ง€ ์ˆ˜ํ–‰ (--push-only ์ง€์›)
ci-ship PR CI ์‹คํŒจ๋ฅผ check/log ๊ธฐ๋ฐ˜์œผ๋กœ ๋ถ„์„ํ•ด ์ˆ˜์ •ยท๊ฒ€์ฆยทpush
verify-report ์บก์ฒ˜/๋„คํŠธ์›Œํฌ/์ฝ˜์†”/์ฝ”๋“œ diff ๊ธฐ๋ฐ˜ ๊ฒ€์ฆ ๋ฆฌํฌํŠธ
verify-report-preflight ๊ฒ€์ฆ ๋ฆฌํฌํŠธ ์ „ readinessยท์ž‘์—… ๋ฌด๊ฒŒยท์ฐจ๋‹จ ์กฐ๊ฑด ์ ๊ฒ€
start-local-dev ๋กœ์ปฌ dev ์„œ๋ฒ„ ๊ตฌ๋™๊ณผ ์ง„๋‹จ

Agents

9๊ฐœ. scripts/sync-agents.mjs (postinstall)๋กœ ~/.pi/agent/agents/์— ์ž๋™ ๋™๊ธฐํ™”.

์„œ๋ธŒ์—์ด์ „ํŠธ (>> ์‹ฌ๋ณผ)

์—์ด์ „ํŠธ ์‹ฌ๋ณผ ๋ชจ๋ธ ์—ญํ• 
worker >> (๊ธฐ๋ณธ) openai-codex/gpt-5.5 ๋ฒ”์šฉ ๊ตฌํ˜„/์ˆ˜์ •
finder >>/ openai-codex/gpt-5.4 ํŒŒ์ผ/์ฝ”๋“œ ํƒ์ƒ‰ (read/grep/find only)
searcher >>? openai-codex/gpt-5.4 ์›น ๋ฆฌ์„œ์น˜/๋ฌธ์„œ ์กฐ์‚ฌ
planner >># openai-codex/gpt-5.5 (thinking:high) ๊ตฌํ˜„ ๊ณ„ํš ์„ค๊ณ„
challenger >>! openai-codex/gpt-5.5 ๊ณ„ํš/์ฝ”๋“œ ๊ฒ€์ฆ, ๊ตฌ๋ฉ ์ฐพ๊ธฐ
browser >>@ openai-codex/gpt-5.5 playwright E2E, UI ํ™•์ธ
bootstrapper ๋‚ด๋ถ€ /wt openai-codex/gpt-5.5 ์˜์กด์„ฑ readiness orchestrator

๋ฆฌ๋ทฐ (/stress-interview)

์—์ด์ „ํŠธ ๊ด€์ 
verifier ๊ตฌํ˜„์ด ์š”๊ตฌ์‚ฌํ•ญ์„ ์ถฉ์กฑํ•˜๋Š”๊ฐ€ (openai-codex/gpt-5.5)
reviewer ์ฝ”๋“œ ํ’ˆ์งˆ, ํŒจํ„ด, ์œ ์ง€๋ณด์ˆ˜์„ฑ (openai-codex/gpt-5.5)

Theme & Prompts

claude-code-dark โ€” ํŒŒ์ด๋ฆฌ ์˜ค๋ Œ์ง€ #d77757 ์•ก์„ผํŠธ ๐Ÿ”ฅ

Prompts:

  • fix-bug โ€” ๋ฒ„๊ทธ ์ˆ˜์ • ํ…œํ”Œ๋ฆฟ
  • jira-format โ€” Jira ์ด์Šˆ ์ž‘์„ฑ ํฌ๋งท

ํ† ํฐ ์ตœ์ ํ™”

Conductor ๋Œ€๋น„ pi + pilee๋Š” ๋งค ํ„ด ~6K ํ† ํฐ ์ถ”๊ฐ€ ์˜ค๋ฒ„ํ—ค๋“œ๊ฐ€ ์žˆ์—ˆ๋‹ค. ์›์ธ๊ณผ ๋Œ€์‘:

์›์ธ ์˜ํ–ฅ ๋Œ€์‘
cc-system-prompt + pi ์‹œ์Šคํ…œ ํ”„๋กฌํ”„ํŠธ ์ด์ค‘ ์ ์žฌ +2K/ํ„ด cc-system-prompt ์ตœ์†Œํ™” โ€” ํ•ต์‹ฌ๋งŒ ๋‚จ๊ธฐ๊ณ  tft-guidelines๋กœ ์ด๊ด€
๋„๊ตฌ 25๊ฐœ+ JSON ์Šคํ‚ค๋งˆ ๋งค ํ„ด ์ „์†ก +3.4K/ํ„ด subagent/supervisor/web-access โ†’ pi config๋กœ ํ•„์š”ํ•  ๋•Œ๋งŒ ํ™œ์„ฑํ™”
๋ฏธ์‚ฌ์šฉ ๋ฒ”์šฉ ์Šคํ‚ฌ 16๊ฐœ +480/ํ„ด ์ œ๊ฑฐ

๋‹จ์ถ•ํ‚ค

ํ‚ค ๋™์ž‘
Ctrl+W ์›ŒํฌํŠธ๋ฆฌ ๋Œ€์‹œ๋ณด๋“œ
Ctrl+Shift+โ†’โ†โ†‘โ†“ fork-panel ๋ฐฉํ–ฅ๋ณ„ ๋ถ„ํ• 
Ctrl+Shift+N fork-panel ์ƒˆ ํƒญ
Ctrl+Shift+T tasks ์—ด๊ธฐ
Ctrl+Shift+O ์šฐ์ƒ๋‹จ tasks overlay ํ‘œ์‹œ/์ˆจ๊น€

๊ตฌ์กฐ

pilee/
โ”œโ”€โ”€ extensions/     # 34๊ฐœ
โ”œโ”€โ”€ skills/         # 19๊ฐœ
โ”œโ”€โ”€ agents/         # 9๊ฐœ
โ”œโ”€โ”€ themes/         # claude-code-dark
โ”œโ”€โ”€ prompts/        # fix-bug, jira-format
โ”œโ”€โ”€ scripts/        # sync-agents.mjs, knowledge.mjs
โ””โ”€โ”€ AGENTS.md       # ํ•ต์‹ฌ ์›์น™

About

custom pi coding agent ๐Ÿ”ฅ

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors