servaltullius/vibe-kit-seed: ๋ฐ”์ด๋ธŒํ‚ท ๋ฐฐํฌ ์šฉ






๋ฐ”์ด๋ธŒ์ฝ”๋”ฉ ํŒ - ๋ฐ”์ด๋ธŒํ‚ท ์ œ์ž‘๊ธฐ - ํŠน์ด์ ์ด ์˜จ๋‹ค ๋งˆ์ด๋„ˆ ๊ฐค๋Ÿฌ๋ฆฌ

์˜ค๋Š˜์ž ๋ฐ”์ด๋ธŒ์„น์Šค ๊ทผํ™ฉ - ํŠน์ด์ ์ด ์˜จ๋‹ค ๋งˆ์ด๋„ˆ ๊ฐค๋Ÿฌ๋ฆฌ


์œ„ 2๊ฐœ ๊ธ€์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•œย 



์ปค์Šคํ…€ ๋ฐ”์ด๋ธŒํ‚ท์ž…๋‹ˆ๋‹ค.


1.0์—์„œย  ย ๊ธฐ์กด ๊ธ€์„ ๋‹ค์‹œ ์žฌ์ ๊ฒ€ ๋ถ„์„ํ•˜์—ฌ


๊ฐœ์„ ํ•œ 1.1 ์—…๋ฐ์ดํŠธ ์ž…๋‹ˆ๋‹ค.




1) ์ด ๋ ˆํฌ๋Š” โ€œ๋ฐฐํฌ/์„ค์น˜โ€์šฉ์ž…๋‹ˆ๋‹ค (์ค‘์š”)
  • vibe-kit-seed๋Š”ย ์•ฑ(UI/์•„ํ‚คํ…์ฒ˜) ์Šคํƒ€ํ„ฐ ํ…œํ”Œ๋ฆฟ์ด ์•„๋‹™๋‹ˆ๋‹ค.
  • ์ด ๋ ˆํฌ๋ฅผ ์„œ๋ธŒ๋ชจ๋“ˆ/์˜์กด์„ฑ์œผ๋กœ โ€œ๋„์ž…โ€ํ•˜๋Š” ๋ฐฉ์‹์ด ์•„๋‹ˆ๋ผ,ย GitHub Releases์— ์˜ฌ๋ผ๊ฐ„ ์‚ฐ์ถœ๋ฌผ(์‹œ๋“œ/์„ค์น˜๊ธฐ/์ฒดํฌ์„ฌ)ย ์„ ๋ฐ›์•„์„œย ๋‚ด ๋ ˆํฌ(target repo)ย ์— ์„ค์น˜ํ•˜๋Š” ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค.
  • ๋ชฉ์ ์€ โ€œ๊ธฐ์ˆ ์Šคํƒ ๊ณ ์ •โ€์ด ์•„๋‹ˆ๋ผ,ย ๋‚ด ๋ ˆํฌ์— ๋งž๊ฒŒ ์ปค์Šคํ…€ ๊ฐ€๋Šฅํ•œ repo-local ๋„๊ตฌ(vibe-kit)ย ๋ฅผ ์‹ฌ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
2) ๋ฐฐํฌ ๋ชจ๋ธ (๊ถŒ์žฅ)
  • Source of truth:ย GitHub Releases (๋ฒ„์ „ ํƒœ๊ทธ + immutable assets)
  • Mirror:ย Google Drive(์„ ํƒ). ํŽธ์˜์šฉ ๋ฏธ๋Ÿฌ์ด๋ฉฐย ํ•ญ์ƒ SHA256์œผ๋กœ ๊ฒ€์ฆํ•ฉ๋‹ˆ๋‹ค.
3) ์„ค์น˜ ํ๋ฆ„ (target repo์—์„œ)

GitHub Releases์˜ ๊ฐ™์€ ๋ฆด๋ฆฌ์ฆˆ์—์„œ ์•„๋ž˜ 3๊ฐœ ํŒŒ์ผ์„ ๋‚ด๋ ค๋ฐ›์Šต๋‹ˆ๋‹ค:

  • VIBEKIT_SEED-<version>-<sha256>.md
  • vibekit_seed_install.py
  • SHA256SUMS

๊ฒ€์ฆ:

  • Linux/macOS:ย sha256sum -c SHA256SUMS
  • Windows(PowerShell):ย Get-FileHash .\\VIBEKIT_SEED-...md -Algorithm SHA256ย (๊ฐ’์„ย SHA256SUMS์™€ ๋น„๊ต)

์„ค์น˜(๊ถŒ์žฅ: dry-run โ†’ apply):

  • dry-run:ย python3 vibekit_seed_install.py install VIBEKIT_SEED-...md --root . --expected-seed-sha256 <sha256>
  • apply:ย python3 vibekit_seed_install.py install VIBEKIT_SEED-...md --root . --expected-seed-sha256 <sha256> --apply

์„ค์น˜ ๊ฒฐ๊ณผ(์š”์•ฝ):

  • target repo์—ย .vibe/ย +ย scripts/vibe.pyย ๋“ฑ์ดย ํŒŒ์ผ๋กœ๋งŒ ์„ค์น˜๋ฉ๋‹ˆ๋‹ค.
  • ์„ค์น˜๊ธฐ๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ ์–ด๋–ค ์Šคํฌ๋ฆฝํŠธ๋„ย ์ž๋™ ์‹คํ–‰ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
  • ๋Ÿฐํƒ€์ž„ ์‚ฐ์ถœ๋ฌผ์€ย .vibe/db/,ย .vibe/reports/ย ๋“ฑ์— ์ƒ์„ฑ๋˜๋ฉฐ ๋ณดํ†ต gitignore๋ฅผ ๊ถŒ์žฅํ•ฉ๋‹ˆ๋‹ค.
vibe-kit ์ฃผ์š” ๊ธฐ๋Šฅ (์„ค์น˜ ํ›„, target repo์—์„œ ์‚ฌ์šฉ)

์„ค์น˜ ํ›„์—๋Š” target repo์—์„œ ์•„๋ž˜์ฒ˜๋Ÿผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค:

  • (๊ถŒ์žฅ) ๋ ˆํฌ ์ž๋™ ์„ค์ •(ํ•œ ๋ฒˆ):ย python3 scripts/vibe.py configure --apply
  • ์ง„๋‹จ/์š”์•ฝ ์ƒ์„ฑ:ย python3 scripts/vibe.py doctor --full
    • ์ถœ๋ ฅ:ย .vibe/context/LATEST_CONTEXT.md,ย .vibe/reports/*ย (gitignore ๊ถŒ์žฅ)
  • ๋ณ€๊ฒฝ ๊ฐ์‹œ(์„ ํƒ):ย python3 scripts/vibe.py watch
  • ์ปจํ…์ŠคํŠธ DB ๊ฒ€์ƒ‰:ย python3 scripts/vibe.py search "<query>"
  • ์˜ํ–ฅ๋„(๊ฐ„๋‹จ) ๋ถ„์„:ย python3 scripts/vibe.py impact <path>
  • (์„ค๊ณ„/๊ฒฝ๊ณ„ ์ ๊ฒ€) ์•„ํ‚คํ…์ฒ˜ ๊ฒฝ๊ณ„ ์œ„๋ฐ˜ ์ฒดํฌ:ย python3 scripts/vibe.py boundariesย (config-driven)
  • (์„ค๊ณ„/๋””์ปคํ”Œ๋ง ๋„์›€) ๋ณ€๊ฒฝ ๊ฒฐํ•ฉ(change coupling):ย python3 scripts/vibe.py coupling
    • (์˜ต์…˜) ๋ฆฌ๋„ค์ž„/์ด๋™ ๋ณด์ •:ย python3 scripts/vibe.py coupling --detect-renames
    • (์˜ต์…˜) ํฌ๋งทํŒ…/๋Œ€๋Ÿ‰ ์ˆ˜์ • ์ปค๋ฐ‹ ๋…ธ์ด์ฆˆ ์™„ํ™”:ย python3 scripts/vibe.py coupling --max-churn-per-commit 5000
    • playbooks ๋ฌธ์„œ:ย .vibe/reports/decoupling_suggestions.md
  • ์—์ด์ „ํŠธ์— ์ฃผ๊ธฐ ์œ„ํ•œ ์š”์•ฝํŒฉ:ย python3 scripts/vibe.py pack --scope=staged|changed|path|recent --out .vibe/context/PACK.md
  • Git hook(์„ ํƒ):ย python3 scripts/vibe.py hooks --installย (pre-commit์—ย .vibe/brain/precommit.pyย ์—ฐ๊ฒฐ)
  • ๋ ˆํฌ๋ณ„ ์ปค์Šคํ…€(์„ ํƒ):ย .vibe/config.json์—์„œย exclude_dirs,ย include_globs,ย quality_gates,ย checksย ๋“ฑ์„ ์กฐ์ •
4) ๋ ˆํฌ๋ณ„ ์ปค์Šคํ…€์˜ ํ•ต์‹ฌ
  • vibe-kit์€ โ€œ์šฐ๋ฆฌ ๋ ˆํฌ ๊ตฌ์กฐ/์Šคํƒโ€์— ๋งž๊ฒŒ ์„ค์ •์„ ๋ฐ”๊ฟ” ์“ฐ๋Š” ๊ฒƒ์ด ์ „์ œ์ž…๋‹ˆ๋‹ค.
  • ๊ธฐ๋ณธ ์ปค์Šคํ…€ ํฌ์ธํŠธ:
    • ์Šค์บ” ๋ฒ”์œ„:ย exclude_dirs,ย include_globs
    • ํ’ˆ์งˆ ๊ฒŒ์ดํŠธ:ย quality_gates.*
    • ์ปค๋งจ๋“œ ๊ธฐ๋ฐ˜ ์ฒดํฌ:ย checks.doctor,ย checks.precommit
    • ๊ฒฝ๊ณ„ ๊ทœ์น™(๊ธˆ์ง€ ์˜์กด์„ฑ):ย architecture rulesย (์˜ˆ: domain์ด infra๋ฅผ ์ง์ ‘ import ๋ชป ํ•˜๊ฒŒ)
5) (์œ ์ง€๋ณด์ˆ˜์ž์šฉ) ์ƒˆ ๋ฆด๋ฆฌ์ฆˆ ๋งŒ๋“œ๋Š” ๋ฒ•

์ด ๋ ˆํฌ์—์„œ ๋ฆด๋ฆฌ์ฆˆ ์‚ฐ์ถœ๋ฌผ ์ƒ์„ฑ:

  • python3 scripts/make_release_assets.py <version> --out-dir dist/<version> --force

๊ทธ ๋‹ค์Œ:

  • GitHub Release๋ฅผ ๋งŒ๋“ค๊ณ (ํƒœ๊ทธ ํฌํ•จ) ์œ„ 3๊ฐœ ํŒŒ์ผ์„ assets๋กœ ์—…๋กœ๋“œ
  • SHA256SUMSย ๋‚ด์šฉ์„ ๋ฆด๋ฆฌ์ฆˆ ๋…ธํŠธ์— ๊ทธ๋Œ€๋กœ ๋ถ™์—ฌ ๋„ฃ๊ธฐ
  • Drive ๋ฏธ๋Ÿฌ๋ฅผ ์“ธ ๊ฒฝ์šฐ: Drive๋Š” ๋ฏธ๋Ÿฌ, GitHub Release SHA256์ด ๊ฒ€์ฆ ๊ธฐ์ค€์ž„์„ ๊ณต์ง€ (์ž์„ธํ•œ ํ…œํ”Œ๋ฆฟ์€ย RELEASE_CHECKLIST.md)