Skip to content

kyago/pylon

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

380 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Pylon

์‚ฌ๋žŒ์€ ์š”๊ตฌ์‚ฌํ•ญ๋งŒ ์ „๋‹ฌํ•˜๊ณ , AI ์—์ด์ „ํŠธ ํŒ€์ด ์•Œ์•„์„œ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

Pylon์€ Claude Code ๊ธฐ๋ฐ˜ ๋ฉ€ํ‹ฐ๋„๋ฉ”์ธ AI ์˜ค์ผ€์ŠคํŠธ๋ ˆ์ดํ„ฐ์ž…๋‹ˆ๋‹ค. pylon์„ ์‹คํ–‰ํ•˜๋ฉด Claude Code TUI ์„ธ์…˜์ด ์ง์ ‘ ์‹œ์ž‘๋˜๊ณ , ๋ฃจํŠธ ์—์ด์ „ํŠธ(PO)๊ฐ€ ์‚ฌ์šฉ์ž์˜ ์š”๊ตฌ์‚ฌํ•ญ์„ ๋ถ„์„ํ•˜์—ฌ ์ ์ ˆํ•œ ๋„๋ฉ”์ธ(์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ, ๋ฆฌ์„œ์น˜, ์ฝ˜ํ…์ธ  ์ œ์ž‘, ๋งˆ์ผ€ํŒ…)๊ณผ ์›Œํฌํ”Œ๋กœ์šฐ๋ฅผ ์ž๋™ ์„ ํƒํ•˜๊ณ  ์ „๋ฌธ ์—์ด์ „ํŠธ ํŒ€์„ ์˜ค์ผ€์ŠคํŠธ๋ ˆ์ด์…˜ํ•ฉ๋‹ˆ๋‹ค.

์š”๊ตฌ ์‚ฌํ•ญ

๋„๊ตฌ ์šฉ๋„ ์„ค์น˜
Go 1.24+ ๋นŒ๋“œ https://go.dev/dl/
git ๋ฒ„์ „ ๊ด€๋ฆฌ ๊ธฐ๋ณธ ์„ค์น˜
gh GitHub PR ์ƒ์„ฑ brew install gh
Claude Code AI ์—์ด์ „ํŠธ ๋ฐฑ์—”๋“œ https://docs.anthropic.com/en/docs/claude-code

pylon doctor๋กœ ์„ค์น˜ ์ƒํƒœ๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์„ค์น˜

Pylon์€ CalVer(YYYY.M.SEQ, ์˜ˆ: 2026.6.3) ๋ฒ„์ „ ์ฒด๊ณ„๋ฅผ ์‚ฌ์šฉํ•˜๋ฉฐ, ํ”Œ๋žซํผ๋ณ„ ์‚ฌ์ „ ๋นŒ๋“œ ๋ฐ”์ด๋„ˆ๋ฆฌ๋ฅผ GitHub Releases๋กœ ๋ฐฐํฌํ•ฉ๋‹ˆ๋‹ค.

1) ์‚ฌ์ „ ๋นŒ๋“œ ๋ฐ”์ด๋„ˆ๋ฆฌ (๊ถŒ์žฅ)

Releases์—์„œ ํ”Œ๋žซํผ์— ๋งž๋Š” ์•„์นด์ด๋ธŒ๋ฅผ ๋ฐ›์Šต๋‹ˆ๋‹ค. ํŒŒ์ผ๋ช… ํ˜•์‹: pylon_<๋ฒ„์ „>_<OS>_<ARCH>.tar.gz (Windows๋Š” .zip).

# ์˜ˆ์‹œ: macOS arm64, ์ตœ์‹  ๋ฒ„์ „์ด 2026.6.3์ธ ๊ฒฝ์šฐ
curl -L -o pylon.tar.gz \
  https://github.com/kyago/pylon/releases/latest/download/pylon_2026.6.3_darwin_arm64.tar.gz
tar -xzf pylon.tar.gz
sudo mv pylon /usr/local/bin/    # ๋˜๋Š” PATH์— ํฌํ•จ๋œ ์ž„์˜ ๋””๋ ‰ํ† ๋ฆฌ๋กœ ์ด๋™
pylon version

์ดํ›„ ์—…๋ฐ์ดํŠธ๋Š” pylon update ํ•œ ์ค„๋กœ ๋๋‚ฉ๋‹ˆ๋‹ค (์•„๋ž˜ ์—…๋ฐ์ดํŠธ ์ฐธ๊ณ ).

2) go install

go install github.com/kyago/pylon/cmd/pylon@latest

์ฐธ๊ณ : ๋ฆด๋ฆฌ์Šค ํƒœ๊ทธ(2026.6.3)๋Š” Go ๋ชจ๋“ˆ ๋ฒ„์ „ ํ˜•์‹(vX.Y.Z)์ด ์•„๋‹ˆ๋ฏ€๋กœ go install์€ ํ•ญ์ƒ main ์ตœ์‹  ์ปค๋ฐ‹์„ ๋นŒ๋“œํ•˜๋ฉฐ @<๋ฒ„์ „> ์ง€์ •์€ ๋™์ž‘ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด ๊ฒฝ์šฐ pylon version์€ ๋ฆด๋ฆฌ์Šค ๋ฒˆํ˜ธ ๋Œ€์‹  ์ปค๋ฐ‹ ๊ธฐ๋ฐ˜ ์˜์‚ฌ ๋ฒ„์ „์„ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค. ํŠน์ • ๋ฆด๋ฆฌ์Šค๊ฐ€ ํ•„์š”ํ•˜๋ฉด ์‚ฌ์ „ ๋นŒ๋“œ ๋ฐ”์ด๋„ˆ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜์„ธ์š”.

go install์€ ๋ฐ”์ด๋„ˆ๋ฆฌ๋ฅผ $GOPATH/bin(๊ธฐ๋ณธ๊ฐ’: ~/go/bin)์— ์„ค์น˜ํ•ฉ๋‹ˆ๋‹ค. ํ•ด๋‹น ๋””๋ ‰ํ† ๋ฆฌ๊ฐ€ PATH์— ํฌํ•จ๋˜์–ด ์žˆ๋Š”์ง€ ํ™•์ธํ•˜์„ธ์š”: export PATH="$PATH:$(go env GOPATH)/bin"

3) ์†Œ์Šค ๋นŒ๋“œ

git clone https://github.com/kyago/pylon.git
cd pylon
make build    # bin/pylon ์ƒ์„ฑ
make install  # $(go env GOPATH)/bin/pylon ์„ค์น˜

์—…๋ฐ์ดํŠธ

pylon update (๊ถŒ์žฅ)

์„ค์น˜๋œ ๋ฐ”์ด๋„ˆ๋ฆฌ๋Š” ๋‚ด์žฅ ๋ช…๋ น์œผ๋กœ GitHub Releases์˜ ์ตœ์‹ /ํŠน์ • ๋ฆด๋ฆฌ์Šค๋ฅผ ๋ฐ›์•„ ์Šค์Šค๋กœ ๊ต์ฒดํ•ฉ๋‹ˆ๋‹ค:

pylon update              # ์ตœ์‹  ๋ฒ„์ „ ์„ค์น˜
pylon update 2026.6.3     # ํŠน์ • ๋ฒ„์ „ ์„ค์น˜ (CalVer)

pylon update๋Š” ํ”Œ๋žซํผ์— ๋งž๋Š” ๋ฐ”์ด๋„ˆ๋ฆฌ๋ฅผ ๋‚ด๋ ค๋ฐ›์•„ ํ˜„์žฌ ์‹คํ–‰ ํŒŒ์ผ์„ ๊ต์ฒดํ•œ ๋’ค, ์ž๋™์œผ๋กœ pylon doctor๋ฅผ ์‹คํ–‰ํ•˜์—ฌ ์›Œํฌ์ŠคํŽ˜์ด์Šค์˜ ๋‚ด์žฅ ๋ฆฌ์†Œ์Šค(์—์ด์ „ํŠธ/์Šคํ‚ฌ/์ปค๋งจ๋“œ/์Šคํฌ๋ฆฝํŠธ)์™€ ์„ค์ • ๊ธฐ๋ณธ๊ฐ’์„ ์ตœ์‹  ์ƒํƒœ๋กœ ๋™๊ธฐํ™”ํ•ฉ๋‹ˆ๋‹ค.

Windows๋Š” ์‹คํ–‰ ์ค‘์ธ ๋ฐ”์ด๋„ˆ๋ฆฌ ์ž๋™ ๊ต์ฒด๋ฅผ ์ง€์›ํ•˜์ง€ ์•Š์œผ๋ฏ€๋กœ Releases์—์„œ ์ˆ˜๋™์œผ๋กœ ๋ฐ›์œผ์„ธ์š”.

์†Œ์Šค ๋นŒ๋“œ๋กœ ์„ค์น˜ํ•œ ๊ฒฝ์šฐ

cd pylon
git pull origin main
make build
make install

์—…๋ฐ์ดํŠธ ํ›„ ํ™•์ธ

pylon version    # ๋ฒ„์ „ ํ™•์ธ
pylon doctor     # ์˜์กด์„ฑ + ์›Œํฌ์ŠคํŽ˜์ด์Šค ๋ฆฌ์†Œ์Šค ๋™๊ธฐํ™” ์ƒํƒœ ํ™•์ธ

๊ธฐ์กด ์›Œํฌ์ŠคํŽ˜์ด์Šค ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜: ๋ ˆ๊ฑฐ์‹œ ๋ฐ์ดํ„ฐ(SQLite ๋ฉ”๋ชจ๋ฆฌ, Fossil ์ด๋ ฅ)๋Š” ์ƒˆ ๋ฒ„์ „์œผ๋กœ ์ด์ „๋˜์ง€ ์•Š๊ณ  ์‚ญ์ œ๋ฉ๋‹ˆ๋‹ค. ์Šฌ๋ž˜์‹œ ์ปค๋งจ๋“œ /pl:migrate๊ฐ€ ๋ ˆ๊ฑฐ์‹œ ํŒŒ์ผ ํ๊ธฐ ์ ˆ์ฐจ๋ฅผ ์•ˆ๋‚ดํ•ฉ๋‹ˆ๋‹ค. ์ƒˆ ๋ฉ”๋ชจ๋ฆฌ(.pylon/memory/)์™€ ์ด๋ ฅ(.pylon/history/pipelines/)์€ ๋นˆ ์ƒํƒœ๋กœ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค.

๋น ๋ฅธ ์‹œ์ž‘

1. ์›Œํฌ์ŠคํŽ˜์ด์Šค ์ดˆ๊ธฐํ™”

mkdir my-workspace && cd my-workspace
pylon init

2. ํ”„๋กœ์ ํŠธ ์ถ”๊ฐ€

pylon add-project https://github.com/user/my-app.git

3. ์‹คํ–‰

pylon

Permission Mode๋ฅผ ์„ ํƒํ•˜๋ฉด Claude Code TUI ์„ธ์…˜์ด ์‹œ์ž‘๋ฉ๋‹ˆ๋‹ค.

Permission Mode ์„ ํƒ
Claude Code ์‹คํ–‰ ๊ถŒํ•œ์„ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค

> default โ€” ๋งค๋ฒˆ ๊ถŒํ•œ ํ™•์ธ
  acceptEdits โ€” ํŒŒ์ผ ํŽธ์ง‘ ์ž๋™ ํ—ˆ์šฉ
  bypassPermissions โ€” ๋ชจ๋“  ๊ถŒํ•œ ์ž๋™ ํ—ˆ์šฉ

4. ํŒŒ์ดํ”„๋ผ์ธ ์‹คํ–‰

TUI ์„ธ์…˜์—์„œ ์Šฌ๋ž˜์‹œ ์ปค๋งจ๋“œ ๋˜๋Š” ์ž์—ฐ์–ด๋กœ ์š”๊ตฌ์‚ฌํ•ญ์„ ์ „๋‹ฌํ•ฉ๋‹ˆ๋‹ค:

> /pl:pipeline ๋กœ๊ทธ์ธ ๊ธฐ๋Šฅ ๊ตฌํ˜„ํ•ด์ค˜

๋˜๋Š” ์ง์ ‘ ๋Œ€ํ™”:

> ๋กœ๊ทธ์ธ ๊ธฐ๋Šฅ ๊ตฌํ˜„ํ•ด์ค˜

PO: ๋ช‡ ๊ฐ€์ง€ ํ™•์ธ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.
  1. ์ธ์ฆ ๋ฐฉ์‹์€ JWT์™€ ์„ธ์…˜ ์ค‘ ์–ด๋–ค ๊ฒƒ์„ ์„ ํ˜ธํ•˜์‹œ๋‚˜์š”?
  2. ์†Œ์…œ ๋กœ๊ทธ์ธ๋„ ํ•„์š”ํ•œ๊ฐ€์š”?
  ...

Claude Code TUI๊ฐ€ LLM-as-Orchestrator๋กœ ๋™์ž‘ํ•˜๋ฉฐ, ์Šฌ๋ž˜์‹œ ์ปค๋งจ๋“œ์™€ ์…ธ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์กฐํ•ฉํ•˜์—ฌ ์ „์ฒด ํŒŒ์ดํ”„๋ผ์ธ(๋ถ„์„ โ†’ ์„ค๊ณ„ โ†’ ๊ตฌํ˜„ โ†’ PR)์„ ์ž๋™ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

๋™์ž‘ ๋ฐฉ์‹

์•„ํ‚คํ…์ฒ˜

์‚ฌ์šฉ์ž โ†โ†’ Claude Code TUI (LLM-as-Orchestrator)
              โ”‚
              โ”œโ”€โ”€ ์Šฌ๋ž˜์‹œ ์ปค๋งจ๋“œ (.pylon/commands/)
              โ”‚   โ”œโ”€โ”€ /pl:pipeline โ”€ ์ „์ฒด ํŒŒ์ดํ”„๋ผ์ธ
              โ”‚   โ”œโ”€โ”€ /pl:architect โ”€ ์•„ํ‚คํ…์ฒ˜ ๋ถ„์„
              โ”‚   โ”œโ”€โ”€ /pl:breakdown โ”€ PM ํƒœ์Šคํฌ ๋ถ„ํ•ด
              โ”‚   โ”œโ”€โ”€ /pl:execute โ”€โ”€โ”€ ์—์ด์ „ํŠธ ๋ณ‘๋ ฌ ์‹คํ–‰
              โ”‚   โ”œโ”€โ”€ /pl:verify โ”€โ”€โ”€ ๋นŒ๋“œ/ํ…Œ์ŠคํŠธ/๋ฆฐํŠธ ๊ฒ€์ฆ
              โ”‚   โ”œโ”€โ”€ /pl:pr โ”€โ”€โ”€โ”€โ”€โ”€โ”€ PR ์ƒ์„ฑ
              โ”‚   โ”œโ”€โ”€ /pl:status โ”€โ”€โ”€ ํŒŒ์ดํ”„๋ผ์ธ ์ƒํƒœ ์กฐํšŒ
              โ”‚   โ”œโ”€โ”€ /pl:cancel โ”€โ”€โ”€ ์ทจ์†Œ ๋ฐ ์ •๋ฆฌ
              โ”‚   โ”œโ”€โ”€ /pl:index โ”€โ”€โ”€ ์ฝ”๋“œ๋ฒ ์ด์Šค ์ธ๋ฑ์‹ฑ
              โ”‚   โ”œโ”€โ”€ /pl:project-list โ”€ ํ”„๋กœ์ ํŠธ ๋ชฉ๋ก ์กฐํšŒ
              โ”‚   โ”œโ”€โ”€ /pl:add-project โ”€ ํ”„๋กœ์ ํŠธ ์ถ”๊ฐ€
              โ”‚   โ””โ”€โ”€ /pl:migrate โ”€โ”€โ”€ ๋ ˆ๊ฑฐ์‹œ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ์•ˆ๋‚ด
              โ”‚
              โ””โ”€โ”€ ์…ธ ์Šคํฌ๋ฆฝํŠธ (.pylon/scripts/bash/)
                   โ”œโ”€โ”€ init-pipeline.sh
                   โ”œโ”€โ”€ run-verification.sh
                   โ”œโ”€โ”€ create-pr.sh
                   โ””โ”€โ”€ ... (์›์ž์  ์ž‘์—…)

Pylon์€ Go CLI๊ฐ€ ์›Œํฌ์ŠคํŽ˜์ด์Šค๋ฅผ ์ค€๋น„ํ•œ ๋’ค, Claude Code๋ฅผ ์ง์ ‘ ์‹คํ–‰(syscall.Exec)ํ•ฉ๋‹ˆ๋‹ค. Claude Code TUI๋Š” LLM-as-Orchestrator ํŒจํ„ด์œผ๋กœ ๋™์ž‘ํ•˜๋ฉฐ, ์Šฌ๋ž˜์‹œ ์ปค๋งจ๋“œ์™€ ์…ธ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์กฐํ•ฉํ•˜์—ฌ ํŒŒ์ดํ”„๋ผ์ธ์„ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค. ํŒŒ์ผ ๊ธฐ๋ฐ˜ ์ƒํƒœ(artifact ์กด์žฌ = ๋‹จ๊ณ„ ์™„๋ฃŒ)๋กœ ์ง„ํ–‰์„ ์ถ”์ ํ•ฉ๋‹ˆ๋‹ค.

ํ•ต์‹ฌ ๊ฐœ๋…

๊ฐœ๋… ์„ค๋ช…
.pylon/ ์›Œํฌ์ŠคํŽ˜์ด์Šค ์†Œ์Šค ์˜ค๋ธŒ ํŠธ๋ฃจ์Šค (์„ค์ •, ์—์ด์ „ํŠธ ์ •์˜, ๋„๋ฉ”์ธ ์ง€์‹)
.claude/ pylon ์‹คํ–‰ ์‹œ .pylon/์—์„œ ๋™์  ์ƒ์„ฑ๋˜๋Š” Claude Code ์„ค์ • (agents ์‹ฌ๋งํฌ, commands, hooks)
CLAUDE.md ๋ฃจํŠธ ์—์ด์ „ํŠธ์˜ ์‹œ์Šคํ…œ ํ”„๋กฌํ”„ํŠธ (์‹คํ–‰๋งˆ๋‹ค ์ž๋™ ๊ฐฑ์‹ )
์Šฌ๋ž˜์‹œ ์ปค๋งจ๋“œ AI๊ฐ€ ์‚ฌ์šฉํ•˜๋Š” ๋‚ด๋ถ€ ์Šคํ‚ฌ (.pylon/commands/)
ํŒŒ์ดํ”„๋ผ์ธ ํŒŒ์ผ ๊ธฐ๋ฐ˜ ์›Œํฌํ”Œ๋กœ์šฐ (์‚ฐ์ถœ๋ฌผ ์กด์žฌ = ๋‹จ๊ณ„ ์™„๋ฃŒ)
ํ”„๋กœ์ ํŠธ ๋ฉ”๋ชจ๋ฆฌ .pylon/memory/ ๋งˆํฌ๋‹ค์šด ํŒŒ์ผ ๊ธฐ๋ฐ˜ ์ง€์‹ ์ €์žฅ์†Œ (git ์ถ”์ )

ํŒŒ์ดํ”„๋ผ์ธ ํ๋ฆ„

/pl:pipeline "๋กœ๊ทธ์ธ ๊ธฐ๋Šฅ ๊ตฌํ˜„"
    โ”‚
    โ”œโ”€ [1] init-pipeline.sh โ”€โ”€โ”€โ”€โ”€โ”€ requirement.md
    โ”œโ”€ [2] PO ๋ถ„์„ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ requirement-analysis.md
    โ”œโ”€ [3] Architect ๋ถ„์„ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ architecture.md
    โ”œโ”€ [4] PM ํƒœ์Šคํฌ ๋ถ„ํ•ด โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ tasks.json
    โ”œโ”€ [5] Agent ๋ณ‘๋ ฌ ์‹คํ–‰ โ”€โ”€โ”€โ”€โ”€โ”€โ”€ execution-log.json
    โ”œโ”€ [6] run-verification.sh โ”€โ”€โ”€ verification.json
    โ”œโ”€ [7] create-pr.sh โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ pr.json
    โ””โ”€ ์™„๋ฃŒ ๋ณด๊ณ 

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

TUI ์„ธ์…˜ ๋‚ด์—์„œ AI๊ฐ€ ์‚ฌ์šฉํ•˜๋Š” ๋‚ด๋ถ€ ์Šคํ‚ฌ์ž…๋‹ˆ๋‹ค:

์ปค๋งจ๋“œ ์„ค๋ช…
/pl:pipeline ์ „์ฒด ํŒŒ์ดํ”„๋ผ์ธ ์‹คํ–‰ (์š”๊ตฌ์‚ฌํ•ญ โ†’ ๋ถ„์„ โ†’ ์„ค๊ณ„ โ†’ ๊ตฌํ˜„ โ†’ PR)
/pl:architect ์•„ํ‚คํ…์ฒ˜ ๋ถ„์„ ๋‹จ๋… ์‹คํ–‰
/pl:breakdown PM ํƒœ์Šคํฌ ๋ถ„ํ•ด
/pl:execute ์—์ด์ „ํŠธ ๋ณ‘๋ ฌ ์‹คํ–‰
/pl:verify ๋นŒ๋“œ/ํ…Œ์ŠคํŠธ/๋ฆฐํŠธ ๊ต์ฐจ ๊ฒ€์ฆ
/pl:pr PR ์ƒ์„ฑ
/pl:status ํŒŒ์ดํ”„๋ผ์ธ ์ƒํƒœ ์กฐํšŒ (ํŒŒ์ผ ๊ธฐ๋ฐ˜)
/pl:cancel ํŒŒ์ดํ”„๋ผ์ธ ์ทจ์†Œ ๋ฐ ์ •๋ฆฌ
/pl:index ํ”„๋กœ์ ํŠธ ์ฝ”๋“œ๋ฒ ์ด์Šค ์ธ๋ฑ์‹ฑ
/pl:project-list ํ”„๋กœ์ ํŠธ ๋ชฉ๋ก ๋ฐ ์ธ๋ฑ์‹ฑ ์ƒํƒœ ์กฐํšŒ
/pl:add-project ํ”„๋กœ์ ํŠธ๋ฅผ ์›Œํฌ์ŠคํŽ˜์ด์Šค์— cloneํ•˜์—ฌ ์ถ”๊ฐ€
/pl:migrate ๋ ˆ๊ฑฐ์‹œ ์›Œํฌ์ŠคํŽ˜์ด์Šค(SQLite/Fossil) ํ๊ธฐยท์ด์ „ ์ ˆ์ฐจ ์•ˆ๋‚ด

๋‚ด์žฅ ์—์ด์ „ํŠธ (38์ข…)

pylon init ์‹œ .pylon/agents/์— ์„ค์น˜๋ฉ๋‹ˆ๋‹ค. pylon sync-agents๋กœ ์ตœ์‹  ๋ฒ„์ „์œผ๋กœ ๊ฐฑ์‹ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. PO๊ฐ€ ์š”๊ตฌ์‚ฌํ•ญ์„ ๋ถ„์„ํ•˜์—ฌ ์ ์ ˆํ•œ ๋„๋ฉ”์ธ์˜ ์—์ด์ „ํŠธ๋ฅผ ์ž๋™ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ (23์ข…)

์—์ด์ „ํŠธ ์—ญํ• 
po ํ”„๋กœ๋•ํŠธ ์˜ค๋„ˆ (์š”๊ตฌ์‚ฌํ•ญ ๋ถ„์„, ๋„๋ฉ”์ธ ๋ผ์šฐํŒ…)
pm ํ”„๋กœ์ ํŠธ ๋งค๋‹ˆ์ € (ํƒœ์Šคํฌ ๋ถ„ํ•ด, ์กฐ์œจ)
architect ์•„ํ‚คํ…ํŠธ (๊ธฐ์ˆ  ๋ฐฉํ–ฅ์„ฑ, ์˜์กด์„ฑ ๋ถ„์„)
analyst ๋ถ„์„๊ฐ€ (์š”๊ตฌ์‚ฌํ•ญ ๋ถ„์„)
backend-dev ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ž
frontend-dev ํ”„๋ก ํŠธ์—”๋“œ ๊ฐœ๋ฐœ์ž
designer UI/UX ๋””์ž์ด๋„ˆ
test-engineer ํ…Œ์ŠคํŠธ ์—”์ง€๋‹ˆ์–ด
code-reviewer ์ฝ”๋“œ ๋ฆฌ๋ทฐ์–ด
code-simplifier ์ฝ”๋“œ ๋‹จ์ˆœํ™”
debugger ๋””๋ฒ„๊ฑฐ
devops DevOps ์—”์ง€๋‹ˆ์–ด
explorer ์ฝ”๋“œ๋ฒ ์ด์Šค ํƒ์ƒ‰
git-master Git ์›Œํฌํ”Œ๋กœ
perf-engineer ์„ฑ๋Šฅ ์—”์ง€๋‹ˆ์–ด
refactorer ๋ฆฌํŒฉํ† ๋ง
researcher ๋ฆฌ์„œ์น˜
security-reviewer ๋ณด์•ˆ ๋ฆฌ๋ทฐ
tech-writer ๊ธฐ์ˆ  ๋ฌธ์„œ ์ž‘์„ฑ
doc-specialist ์™ธ๋ถ€ ๋ฌธ์„œ ์ „๋ฌธ๊ฐ€
tracer ์ถ”์ /๋””๋ฒ„๊น…
verifier ๊ฒ€์ฆ
critic ๋น„ํ‰/๋ฆฌ๋ทฐ

๋ฆฌ์„œ์น˜/์กฐ์‚ฌ (5์ข…)

์—์ด์ „ํŠธ ์—ญํ• 
lead-researcher ๋ฆฌ์„œ์น˜ ๋ฆฌ๋” (์กฐ์‚ฌ ๊ณ„ํš, ํŒ€ ์กฐ์œจ)
web-searcher ์›น ๊ฒ€์ƒ‰ ์ „๋ฌธ๊ฐ€
academic-analyst ํ•™์ˆ  ์ž๋ฃŒ ๋ถ„์„๊ฐ€
fact-checker ํŒฉํŠธ ์ฒด์ปค (๊ต์ฐจ ๊ฒ€์ฆ)
report-writer ๋ณด๊ณ ์„œ ์ž‘์„ฑ์ž

์ฝ˜ํ…์ธ  ์ œ์ž‘ (5์ข…)

์—์ด์ „ํŠธ ์—ญํ• 
content-strategist ์ฝ˜ํ…์ธ  ์ „๋žต๊ฐ€
writer ์ฝ˜ํ…์ธ  ์ž‘๊ฐ€
editor ํŽธ์ง‘์ž
seo-specialist SEO ์ „๋ฌธ๊ฐ€
content-reviewer ์ฝ˜ํ…์ธ  QA ๋ฆฌ๋ทฐ์–ด

๋งˆ์ผ€ํŒ… (5์ข…)

์—์ด์ „ํŠธ ์—ญํ• 
market-researcher ์‹œ์žฅ ์กฐ์‚ฌ ๋ถ„์„๊ฐ€
copywriter ์นดํ”ผ๋ผ์ดํ„ฐ
campaign-planner ์บ ํŽ˜์ธ ๊ธฐํš์ž
data-analyst ๋งˆ์ผ€ํŒ… ๋ฐ์ดํ„ฐ ๋ถ„์„๊ฐ€
brand-strategist ๋ธŒ๋žœ๋“œ ์ „๋žต๊ฐ€

CLI ๋ช…๋ น์–ด

Go ๋ฐ”์ด๋„ˆ๋ฆฌ๊ฐ€ ์ œ๊ณตํ•˜๋Š” ์œ ํ‹ธ๋ฆฌํ‹ฐ ๋ช…๋ น์ž…๋‹ˆ๋‹ค. ๋ฃจํŠธ ์—์ด์ „ํŠธ๊ฐ€ ํŒŒ์ดํ”„๋ผ์ธ ์ œ์–ด์™€ ๋ฉ”๋ชจ๋ฆฌ ์ ‘๊ทผ์— ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

๊ธฐ๋ณธ ๋ช…๋ น

๋ช…๋ น์–ด ์„ค๋ช…
pylon Claude Code TUI ์„ธ์…˜ ์‹คํ–‰ (๊ธฐ๋ณธ ๋™์ž‘)
pylon init ์›Œํฌ์ŠคํŽ˜์ด์Šค ์ดˆ๊ธฐํ™”
pylon doctor ํ•„์ˆ˜ ๋„๊ตฌ(git/gh/claude) ํ™•์ธ + ์›Œํฌ์ŠคํŽ˜์ด์Šค ๋ฆฌ์†Œ์Šคยท์„ค์ • ๋™๊ธฐํ™” (--fix-excludes)
pylon version ๋ฒ„์ „ ์ •๋ณด
pylon update [version] ์ตœ์‹ /ํŠน์ • ๋ฆด๋ฆฌ์Šค ๋ฐ”์ด๋„ˆ๋ฆฌ๋กœ ์ž์ฒด ์—…๋ฐ์ดํŠธ
pylon add-project <url> ํ”„๋กœ์ ํŠธ๋ฅผ ์›Œํฌ์ŠคํŽ˜์ด์Šค์— cloneํ•˜์—ฌ ์ถ”๊ฐ€
pylon delete-project <name> ํ”„๋กœ์ ํŠธ ๋“ฑ๋ก ํ•ด์ œ (--purge๋กœ ๋””๋ ‰ํ„ฐ๋ฆฌ๊นŒ์ง€ ์‚ญ์ œ, --force๋กœ ํ™•์ธ ์ƒ๋žต)
pylon add-agent <name> ์ปค์Šคํ…€ ์—์ด์ „ํŠธ ์ถ”๊ฐ€ (--domain, --role)
pylon add-skill <name> ์ปค์Šคํ…€ ์Šคํ‚ฌ ์ถ”๊ฐ€
pylon status ํŒŒ์ดํ”„๋ผ์ธ ๋ฐ ์—์ด์ „ํŠธ ์ƒํƒœ ์กฐํšŒ
pylon cancel [pipeline-id] ์ง„ํ–‰ ์ค‘์ธ ํŒŒ์ดํ”„๋ผ์ธ ์ทจ์†Œ
pylon uninstall ์›Œํฌ์ŠคํŽ˜์ด์Šค ์™„์ „ ์ œ๊ฑฐ

ํ”„๋กœ์ ํŠธ ๋ฉ”๋ชจ๋ฆฌ

์—์ด์ „ํŠธ๊ฐ€ ํ”„๋กœ์ ํŠธ ์ง€์‹์„ ์ €์žฅ/๊ฒ€์ƒ‰ํ•  ๋•Œ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค:

pylon mem list --project <name>                        # ๋ฉ”๋ชจ๋ฆฌ ๋ชฉ๋ก
pylon mem search --project <name> --query "๊ฒ€์ƒ‰์–ด"      # ํ† ํฐ ๋งค์นญ ๊ฒ€์ƒ‰
pylon mem store --project <name> --key "ํ‚ค" --content "๋‚ด์šฉ"  # ์ €์žฅ (--category ์ง€์ • ๊ฐ€๋Šฅ)
pylon mem delete --project <name> --key "ํ‚ค"            # ์‚ญ์ œ (--category, --dry-run ์ง€์›)

๋™๊ธฐํ™”

๋ช…๋ น์–ด ์„ค๋ช…
pylon sync-agents ๋‚ด์žฅ ์—์ด์ „ํŠธ ์ •์˜๋ฅผ ์›Œํฌ์ŠคํŽ˜์ด์Šค์— ๋™๊ธฐํ™” (--force๋กœ ๋ฎ์–ด์“ฐ๊ธฐ)
pylon sync-memory ์„ธ์…˜ ํ•™์Šต ๋‚ด์šฉ์„ ํ”„๋กœ์ ํŠธ ๋ฉ”๋ชจ๋ฆฌ์— ๋™๊ธฐํ™”

์ž‘์—… ์ด๋ ฅ

Pylon์€ .pylon/history/pipelines/<pipeline-id>/<phase>/ ๋””๋ ‰ํ† ๋ฆฌ ์Šค๋ƒ…์ƒท์— ์„ ๋ณ„๋œ ์ž‘์—… ์ด๋ ฅ์„ ๊ธฐ๋กํ•ฉ๋‹ˆ๋‹ค. ํŒŒ์ดํ”„๋ผ์ธ๋งˆ๋‹ค ๊ณ„ํš ์™„๋ฃŒ, ์‹คํ–‰ ์™„๋ฃŒ, ์ตœ์ข… ์™„๋ฃŒ์˜ ์„ธ ์ฒดํฌํฌ์ธํŠธ๊ฐ€ ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค.

pylon history log --pipeline <pipeline-id>
pylon history show <pipeline-id>/<phase>
pylon history diff <from-ref> <to-ref>
pylon history export <pipeline-id>/<phase> --output <new-directory>

๋ชจ๋“  ๋ช…๋ น์— --json ํ”Œ๋ž˜๊ทธ๋ฅผ ์ถ”๊ฐ€ํ•˜๋ฉด JSON ํ˜•์‹์œผ๋กœ ์ถœ๋ ฅ๋ฉ๋‹ˆ๋‹ค.

์›Œํฌ์ŠคํŽ˜์ด์Šค ๊ตฌ์กฐ

workspace/
โ”œโ”€โ”€ .pylon/                    # ์†Œ์Šค ์˜ค๋ธŒ ํŠธ๋ฃจ์Šค (git ์ถ”์ )
โ”‚   โ”œโ”€โ”€ config.yml             # ์›Œํฌ์ŠคํŽ˜์ด์Šค ์„ค์ •
โ”‚   โ”œโ”€โ”€ agents/                # ์—์ด์ „ํŠธ ์ •์˜ (38์ข…)
โ”‚   โ”œโ”€โ”€ skills/                # ์—์ด์ „ํŠธ ์Šคํ‚ฌ
โ”‚   โ”œโ”€โ”€ domain/                # ํŒ€ ๋„๋ฉ”์ธ ์ง€์‹ (์œ„ํ‚ค)
โ”‚   โ”œโ”€โ”€ commands/              # ํŒŒ์ดํ”„๋ผ์ธ ์Šฌ๋ž˜์‹œ ์ปค๋งจ๋“œ
โ”‚   โ”‚   โ”œโ”€โ”€ pl-pipeline.md
โ”‚   โ”‚   โ”œโ”€โ”€ pl-architect.md
โ”‚   โ”‚   โ””โ”€โ”€ ...
โ”‚   โ”œโ”€โ”€ scripts/bash/          # ํŒŒ์ดํ”„๋ผ์ธ ์…ธ ์Šคํฌ๋ฆฝํŠธ
โ”‚   โ”‚   โ”œโ”€โ”€ common.sh
โ”‚   โ”‚   โ”œโ”€โ”€ init-pipeline.sh
โ”‚   โ”‚   โ””โ”€โ”€ ...
โ”‚   โ”œโ”€โ”€ tasks/                 # ํ™•์ •๋œ ํƒœ์Šคํฌ ์ŠคํŽ™
โ”‚   โ”œโ”€โ”€ memory/                # ํ”„๋กœ์ ํŠธ ๋ฉ”๋ชจ๋ฆฌ (git ์ถ”์ )
โ”‚   โ”‚   โ””โ”€โ”€ {project}/          # ํ”„๋กœ์ ํŠธ๋ณ„ <category>/<slug>.md + INDEX.md
โ”‚   โ”œโ”€โ”€ runtime/               # (git ๋ฌด์‹œ)
โ”‚   โ”‚   โ”œโ”€โ”€ {pipeline-id}/     # ํŒŒ์ดํ”„๋ผ์ธ๋ณ„ ์‚ฐ์ถœ๋ฌผ
โ”‚   โ”‚   โ””โ”€โ”€ sessions/          # ์„ธ์…˜ ์ƒํƒœ
โ”‚   โ”œโ”€โ”€ conversations/         # ๋Œ€ํ™” ์ด๋ ฅ (git ๋ฌด์‹œ)
โ”‚   โ””โ”€โ”€ history/               # ํŒŒ์ผ ๊ธฐ๋ฐ˜ ์ž‘์—… ์ด๋ ฅ (git ๋ฌด์‹œ)
โ”‚       โ””โ”€โ”€ pipelines/         # {pipeline-id}/{phase}/ ๋””๋ ‰ํ† ๋ฆฌ ์Šค๋ƒ…์ƒท
โ”‚
โ”œโ”€โ”€ .claude/                   # ๋™์  ์ƒ์„ฑ (git ๋ฌด์‹œ)
โ”‚   โ”œโ”€โ”€ agents/                # .pylon/agents/ ์‹ฌ๋งํฌ
โ”‚   โ”œโ”€โ”€ commands/              # ์Šฌ๋ž˜์‹œ ์ปค๋งจ๋“œ ์‹ฌ๋งํฌ
โ”‚   โ””โ”€โ”€ settings.json          # Claude Code hooks ์„ค์ •
โ”‚
โ”œโ”€โ”€ CLAUDE.md                  # ๋ฃจํŠธ ์—์ด์ „ํŠธ ์‹œ์Šคํ…œ ํ”„๋กฌํ”„ํŠธ (๋™์  ์ƒ์„ฑ)
โ”‚
โ”œโ”€โ”€ project-a/                 # ํ”„๋กœ์ ํŠธ ๋””๋ ‰ํ† ๋ฆฌ
โ”‚   โ””โ”€โ”€ .pylon/context.md      # ํ”„๋กœ์ ํŠธ ์ปจํ…์ŠคํŠธ
โ””โ”€โ”€ project-b/                 # ํ”„๋กœ์ ํŠธ ๋””๋ ‰ํ† ๋ฆฌ

์„ค์ •

.pylon/config.yml:

version: "0.1"

runtime:
  backend: claude-code         # AI ๋ฐฑ์—”๋“œ
  max_concurrent: 5            # ๋™์‹œ ์—์ด์ „ํŠธ ์ˆ˜
  max_turns: 50                # Claude ์ตœ๋Œ€ ํ„ด ์ˆ˜
  max_attempts: 2              # ๊ฒ€์ฆ ์žฌ์‹œ๋„ ํšŸ์ˆ˜
  task_timeout: 30m            # ํƒœ์Šคํฌ ํƒ€์ž„์•„์›ƒ
  permission_mode: acceptEdits # default | acceptEdits | bypassPermissions
  env:                         # Claude Code ํ”„๋กœ์„ธ์Šค์— ์ฃผ์ž…ํ•  ํ™˜๊ฒฝ ๋ณ€์ˆ˜
    CLAUDE_AUTOCOMPACT_PCT_OVERRIDE: "80"  # ์ž๋™ ์ปดํŒฉํŠธ ์ž„๊ณ„๊ฐ’(%)
    CLAUDE_CODE_EFFORT_LEVEL: high         # ์ถ”๋ก  ๊ฐ•๋„

git:
  branch_prefix: task          # ์ž‘์—… ๋ธŒ๋žœ์น˜ ์ ‘๋‘์‚ฌ
  default_base: main           # ๊ธฐ๋ณธ ๋ฒ ์ด์Šค ๋ธŒ๋žœ์น˜
  auto_push: true              # ์ž๋™ ํ‘ธ์‹œ
  worktree:
    enabled: true              # git worktree ๊ฒฉ๋ฆฌ
    auto_cleanup: true         # ์™„๋ฃŒ ํ›„ ์ž๋™ ์ •๋ฆฌ
  pr:
    draft: false
    reviewers: []

wiki:
  auto_update: true            # ์œ„ํ‚ค ์ž๋™ ๊ฐฑ์‹ 
  update_on:
    - task_complete
    - pr_merged

memory:
  proactive_injection: true
  proactive_max_tokens: 2000
  retention_days:        # ์นดํ…Œ๊ณ ๋ฆฌ๋ณ„ ๋ณด์กด ์ผ์ˆ˜ โ€” ๋ฏธ์ง€์ •/0 ์ดํ•˜ = ์˜๊ตฌ ๋ณด์กด, {} = ์ „์ฒด ์˜๊ตฌ ๋ณด์กด
    learning: 30

skills:
  enabled: true                # ์—์ด์ „ํŠธ ์Šคํ‚ฌ ์ฃผ์ž… ํ™œ์„ฑํ™”
  preload_to_agents: true      # .claude/agents/ ์ƒ์„ฑ ์‹œ ์Šคํ‚ฌ ์ฃผ์ž…
  progressive_disclosure: true # ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋งŒ ์ฃผ์ž…(true) vs ์ „์ฒด ๋ณธ๋ฌธ ์ฃผ์ž…(false)

๋ชจ๋“  ์„ค์ •์—๋Š” ๊ธฐ๋ณธ๊ฐ’์ด ์žˆ์œผ๋ฏ€๋กœ version ํ•„๋“œ๋งŒ ํ•„์ˆ˜์ž…๋‹ˆ๋‹ค. ์œ„ ์˜ˆ์‹œ๋Š” ์ „์ฒด ํ•„๋“œ์™€ ๊ธฐ๋ณธ๊ฐ’์„ ๋ณด์—ฌ์ฃผ๋ฉฐ, ๋ช…์‹œํ•˜์ง€ ์•Š์€ ํ•„๋“œ๋Š” ๋กœ๋“œ ์‹œ ์ฝ”๋“œ ๊ธฐ๋ณธ๊ฐ’์œผ๋กœ ์ž๋™ ์ฑ„์›Œ์ง‘๋‹ˆ๋‹ค. pylon init์ด ์ฒ˜์Œ ์ƒ์„ฑํ•˜๋Š” config.yml์€ ์ตœ์†Œ ํ•„๋“œ(runtime์˜ backend/max_concurrent/max_turns/permission_mode)๋งŒ ํฌํ•จํ•˜๊ณ , ์ดํ›„ pylon doctor๊ฐ€ ๋ˆ„๋ฝ๋œ ํ•„๋“œ๋ฅผ ๊ฐ์ง€ํ•ด ๊ธฐ๋ณธ๊ฐ’์œผ๋กœ ๋™๊ธฐํ™”ํ•ฉ๋‹ˆ๋‹ค.

๊ฐœ๋ฐœ

make build       # ๋นŒ๋“œ
make test        # ํ…Œ์ŠคํŠธ
make lint        # ๋ฆฐํŠธ
make clean       # ์ •๋ฆฌ

๊ธฐ์ˆ  ์Šคํƒ

์˜์—ญ ๊ธฐ์ˆ 
์–ธ์–ด Go
CLI ํ”„๋ ˆ์ž„์›Œํฌ Cobra
TUI ์ปดํฌ๋„ŒํŠธ charmbracelet/huh
ํ”„๋กœ์„ธ์Šค ์‹คํ–‰ syscall.Exec (์ตœ์†Œ ๋Ÿฐ์ฒ˜) + Claude Code Agent ๋„๊ตฌ (์„œ๋ธŒ์—์ด์ „ํŠธ)
ํŒŒ์ดํ”„๋ผ์ธ ์ž‘์—… Shell Scripts (์›์ž์  ์ž‘์—…)
AI ๋ฐฑ์—”๋“œ Claude Code CLI
์ €์žฅ์†Œ ๋งˆํฌ๋‹ค์šด/JSON ํŒŒ์ผ (.pylon/memory, .pylon/history)
๋ฉ”๋ชจ๋ฆฌ ๊ฒ€์ƒ‰ ํ† ํฐ ๋งค์นญ + INDEX.md ์ฃผ์ž…
์ž‘์—… ์ด๋ ฅ ๋””๋ ‰ํ† ๋ฆฌ ์Šค๋ƒ…์ƒท (.pylon/history/pipelines)

๋ผ์ด์„ ์Šค

MIT

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages