servaltullius/vibe-kit-seed: ๋ฐ์ด๋ธํท ๋ฐฐํฌ ์ฉ
๋ฐ์ด๋ธ์ฝ๋ฉ ํ - ๋ฐ์ด๋ธํท ์ ์๊ธฐ - ํน์ด์ ์ด ์จ๋ค ๋ง์ด๋ ๊ฐค๋ฌ๋ฆฌ
์ค๋์ ๋ฐ์ด๋ธ์น์ค ๊ทผํฉ - ํน์ด์ ์ด ์จ๋ค ๋ง์ด๋ ๊ฐค๋ฌ๋ฆฌ
์ 2๊ฐ ๊ธ์ ๊ธฐ๋ฐ์ผ๋ก ํย
์ปค์คํ ๋ฐ์ด๋ธํท์ ๋๋ค.
1.0์์ย ย ๊ธฐ์กด ๊ธ์ ๋ค์ ์ฌ์ ๊ฒ ๋ถ์ํ์ฌ
๊ฐ์ ํ 1.1 ์ ๋ฐ์ดํธ ์ ๋๋ค.
- vibe-kit-seed๋ย ์ฑ(UI/์ํคํ ์ฒ) ์คํํฐ ํ ํ๋ฆฟ์ด ์๋๋๋ค.
- ์ด ๋ ํฌ๋ฅผ ์๋ธ๋ชจ๋/์์กด์ฑ์ผ๋ก โ๋์ โํ๋ ๋ฐฉ์์ด ์๋๋ผ,ย GitHub Releases์ ์ฌ๋ผ๊ฐ ์ฐ์ถ๋ฌผ(์๋/์ค์น๊ธฐ/์ฒดํฌ์ฌ)ย ์ ๋ฐ์์ย ๋ด ๋ ํฌ(target repo)ย ์ ์ค์นํ๋ ๋ฐฉ์์ ๋๋ค.
- ๋ชฉ์ ์ โ๊ธฐ์ ์คํ ๊ณ ์ โ์ด ์๋๋ผ,ย ๋ด ๋ ํฌ์ ๋ง๊ฒ ์ปค์คํ ๊ฐ๋ฅํ repo-local ๋๊ตฌ(vibe-kit)ย ๋ฅผ ์ฌ๋ ๊ฒ์ ๋๋ค.
- Source of truth:ย GitHub Releases (๋ฒ์ ํ๊ทธ + immutable assets)
- Mirror:ย Google Drive(์ ํ). ํธ์์ฉ ๋ฏธ๋ฌ์ด๋ฉฐย ํญ์ SHA256์ผ๋ก ๊ฒ์ฆํฉ๋๋ค.
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๋ฅผ ๊ถ์ฅํฉ๋๋ค.
์ค์น ํ์๋ 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ย ๋ฑ์ ์กฐ์
- vibe-kit์ โ์ฐ๋ฆฌ ๋ ํฌ ๊ตฌ์กฐ/์คํโ์ ๋ง๊ฒ ์ค์ ์ ๋ฐ๊ฟ ์ฐ๋ ๊ฒ์ด ์ ์ ์ ๋๋ค.
- ๊ธฐ๋ณธ ์ปค์คํ
ํฌ์ธํธ:
- ์ค์บ ๋ฒ์:ย exclude_dirs,ย include_globs
- ํ์ง ๊ฒ์ดํธ:ย quality_gates.*
- ์ปค๋งจ๋ ๊ธฐ๋ฐ ์ฒดํฌ:ย checks.doctor,ย checks.precommit
- ๊ฒฝ๊ณ ๊ท์น(๊ธ์ง ์์กด์ฑ):ย architecture rulesย (์: domain์ด infra๋ฅผ ์ง์ import ๋ชป ํ๊ฒ)
์ด ๋ ํฌ์์ ๋ฆด๋ฆฌ์ฆ ์ฐ์ถ๋ฌผ ์์ฑ:
- 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)
๋๊ธ 0