docs: initialize Variet LLM project

This commit is contained in:
Variet-Worker
2026-04-05 00:49:30 +09:00
parent 93f4182384
commit e37f65af80
28 changed files with 44 additions and 879 deletions

View File

@@ -1,40 +0,0 @@
---
phase: 00-System Setup
task: 0
total_tasks: 0
status: paused
last_updated: 2026-03-29T19:40:00Z
---
<current_state>
우리는 `/gsd-new-project` 에 준하는 마스터 부트스트랩 프로젝트 초기화 작업을 완벽하게 끝냈습니다.
모든 SSOT 파일(PROJECT.md, ARCHITECTURE.md, config.json)이 수립되었고, 메인 위협이었던 서브모듈 동기화 문제를 해결할 마스터 허브 통제 스위치(`sync_vendors`)까지 삽입되어 Git에 영구 커밋된 상태입니다. 정확히 1단계 로드맵 구축을 시작하기 직전의 출발선에 서 있습니다.
</current_state>
<completed_work>
- `.planning/PROJECT.md` 제정 (Zero-Pollution 및 Git 원칙 헌법)
- `.planning/codebase/` 내부 아키텍처 및 스택 매핑
- `.agent/scripts/sync_vendors.sh/.bat` (마스터 배포자 유틸) 생성
- 19개의 추출된 최고급 스킬셋을 Git 트래킹에 편입시켜 100% 클론 복제성 확보
</completed_work>
<remaining_work>
- `/gsd-plan-phase 1` 을 실행하여 실제 개발 로드맵 설계 시작
</remaining_work>
<decisions_made>
- **Master-Satellite 배포 위상:** 이 `new_gene` 저장소에서만 오픈소스를 동기화하고, 다른 파생 레포지토리들은 어떤 스크립트도 없이 `git pull` 만으로 무기를 상속받는 완벽한 Zero-Pollution 구조 채택.
- 어떠한 글로벌 패키지도 허용하지 않고 오직 로컬 `.agent/env` 에 모든 기능을 캡슐화.
</decisions_made>
<blockers>
None.
</blockers>
<context>
프로젝트 토대는 더할 나위 없이 단단해졌습니다. 다음 에이전트는 이 파일을 읽자마자 혼란 없이 완벽한 컨텍스트를 흡수한 채, 사용자에게 첫 번째 기능을 묻는 영광스러운 역할을 수행하게 될 것입니다.
</context>
<next_action>
Start with: Ask the user to run `/gsd-plan-phase 1` to define the roadmap.
</next_action>

View File

@@ -1,40 +0,0 @@
---
phase: 00-System Setup
task: 0
total_tasks: 0
status: paused
last_updated: 2026-03-29T19:40:00Z
---
<current_state>
우리는 `/gsd-new-project` 에 준하는 마스터 부트스트랩 프로젝트 초기화 작업을 완벽하게 끝냈습니다.
모든 SSOT 파일(PROJECT.md, ARCHITECTURE.md, config.json)이 수립되었고, 메인 위협이었던 서브모듈 동기화 문제를 해결할 마스터 허브 통제 스위치(`sync_vendors`)까지 삽입되어 Git에 영구 커밋된 상태입니다. 정확히 1단계 로드맵 구축을 시작하기 직전의 출발선에 서 있습니다.
</current_state>
<completed_work>
- `.planning/PROJECT.md` 제정 (Zero-Pollution 및 Git 원칙 헌법)
- `.planning/codebase/` 내부 아키텍처 및 스택 매핑
- `.agent/scripts/sync_vendors.sh/.bat` (마스터 배포자 유틸) 생성
- 19개의 추출된 최고급 스킬셋을 Git 트래킹에 편입시켜 100% 클론 복제성 확보
</completed_work>
<remaining_work>
- `/gsd-plan-phase 1` 을 실행하여 실제 개발 로드맵 설계 시작
</remaining_work>
<decisions_made>
- **Master-Satellite 배포 위상:** 이 `new_gene` 저장소에서만 오픈소스를 동기화하고, 다른 파생 레포지토리들은 어떤 스크립트도 없이 `git pull` 만으로 무기를 상속받는 완벽한 Zero-Pollution 구조 채택.
- 어떠한 글로벌 패키지도 허용하지 않고 오직 로컬 `.agent/env` 에 모든 기능을 캡슐화.
</decisions_made>
<blockers>
None.
</blockers>
<context>
프로젝트 토대는 더할 나위 없이 단단해졌습니다. 다음 에이전트는 이 파일을 읽자마자 혼란 없이 완벽한 컨텍스트를 흡수한 채, 사용자에게 첫 번째 기능을 묻는 영광스러운 역할을 수행하게 될 것입니다.
</context>
<next_action>
Start with: Ask the user to run `/gsd-plan-phase 1` to define the roadmap.
</next_action>

View File

@@ -1,25 +0,0 @@
{
"version": "1.0",
"timestamp": "2026-03-29T19:40:00Z",
"phase": "00-setup",
"phase_name": "Project Initialization",
"phase_dir": ".planning",
"plan": 0,
"task": 0,
"total_tasks": 0,
"status": "paused",
"completed_tasks": [],
"remaining_tasks": [],
"blockers": [],
"human_actions_pending": [],
"decisions": [
{
"decision": "Master-Satellite Deployment",
"rationale": "Ensures downstream repos remain 100% Zero-Pollution by distributing flattened skills natively via Git Push",
"phase": "0"
}
],
"uncommitted_files": [],
"next_action": "Run /gsd-plan-phase 1 to begin roadmap construction",
"context_notes": "Zero-pollution foundation is perfectly solid. Awaiting Phase 1 initialization."
}

View File

@@ -1,49 +0,0 @@
# Project Context: Zero-Pollution Agent Bootstrap Kit
## What This Is
`new_gene`은 향후 모든 AI 에이전트 개발 및 자동화 프로젝트에 포크(Fork)되거나 복제되어 즉각적으로 활용되는 **'완전 자율형·무오염(Zero-Pollution) 부트스트랩 마스터 템플릿'** 입니다.
## Core Value
코딩을 시작할 때 발생하는 세팅 오류, 프롬프트 해킹, 메인 브랜치 훼손, API 키 유출을 원천적으로 막습니다. 누구나 이 저장소만 클론(`git clone`) 받으면 환경 설정이나 별도의 복잡한 스크립트 실행 없이 19개의 최고급 개발 스킬(TDD, Git Worktree)과 GSD 오케스트레이터를 즉시 꺼내 쓸 수 있는 완벽한 턴키(Turn-key) 생태계를 구축합니다.
## Success Criteria
1. 사용자가 단 1개의 글로벌 패키지를 설치하지 않아도 로컬(`.agent/env/node_modules`)만을 통해 100% 작동해야 함.
2. 터미널 명령어나 히스토리에 API 토큰이 노출되지 않고 자동 동기화(Vikunja/Gitea)가 이루어져야 함.
3. 에이전트는 코딩 전 반드시 TDD 가설을 세우고, 서브 브랜치(Worktree)로 격리되어 안전하게 작업해야 함.
4. **[Key Constraint]** 템플릿의 모든 아키텍처는 `git clone`만으로 완전한 작업 흐름이 이어져야 하며, 각 파생 프로젝트들은 `git pull` 명령어 단 한 번만으로 최신 무기와 스킬(Agent 엔진)이 완벽히 업데이트되어야 함.
## Requirements
### Validated
- ✓ [Zero-Pollution] 모든 스킬(`superpowers`, `obsidian-skills`)이 글로벌 영역이 아닌 내부(`.agent/skills/`)로 캡슐화되어 직접 Git 트래킹을 받음.
- ✓ [API Bridge] `sync_wiki.js``sync_vikunja.js`를 통해 토큰 노출 없이 서버와 통신 구조 확보.
- ✓ [Persistence] `claude-mem` (SQLite MCP) 기반의 오답노트 기억 능력 탑재.
### Active
- [x] `git clone`/`git pull`만으로 19개 스킬 즉각 로드 (Master Sync Hub 토폴로지 확립)
- [ ] GSD Phase 계획과 실제 코드 실행 간 오차를 자동으로 검증할 브릿지 시스템 보완
- [ ] `.env.agent`만 셋업하면 모든 것이 알아서 연결되는 완전 자율화 체계 구축 지속
### Out of Scope (배포 제약)
- **하위 프로젝트(Satellite Repo)에서의 오픈소스 서브모듈(Vendor) 직접 업데이트 행위 원천 금지.** (오직 ఈ Master 템플릿의 `sync_vendors` 스크립트만이 서브모듈의 버전을 평탄화 추출/번역하여 100% 검증된 정적 파일(`.agent/skills/`)로 Git 트래킹합니다.)
- 하위 패키지에 글로벌 NPM 패키지 설치 요구 및 부트스트랩 스크립트 실행 강요 금지 (오직 `git pull` 하나만으로 마스터의 스킬셋 변동분을 수동적으로 상속받을 것).
- `/start``/end` 같은 과거 유산(Legacy) 도입 금지
---
*Last updated: 2026-03-29 after Phase 1 initialization*
## Evolution
This document evolves at phase transitions and milestone boundaries.
**After each phase transition** (via `/gsd-transition`):
1. Requirements invalidated? → Move to Out of Scope with reason
2. Requirements validated? → Move to Validated with phase reference
3. New requirements emerged? → Add to Active
4. Decisions to log? → Add to Key Decisions
5. "What This Is" still accurate? → Update if drifted
**After each milestone** (via `/gsd-complete-milestone`):
1. Full review of all sections
2. Core Value check — still the right priority?
3. Audit Out of Scope — reasons still valid?
4. Update Context with current state

View File

@@ -1,11 +0,0 @@
# Roadmap
## Phase 1: Zero-Pollution Pipeline Stabilization
**Status:** Complete (2026-03-30)
**Goal:** Fix the Master-Satellite synchronization pipeline to natively extract GSD skills, UI data, and Python MCP dependencies so that satellite repositories bootstrap via zero-click.
### Requirements
- REQ-01: Bootstrap script must auto-install Python dependencies for MCP tools across satellites.
- REQ-02: Master sync script must invoke `get-shit-done-cc` local installation to native `.agent/skills` and ensure Git tracking.
- REQ-03: Master sync script must invoke `uipro update` and commit changes.
- REQ-04: The `.gitignore` generated by `extract_skills.js` must safely whitelist `/gsd` skill directories.

View File

@@ -1,16 +0,0 @@
# Codebase Architecture (`ARCHITECTURE.md`)
## Conceptual Core
The project employs a **Master-Satellite Zero-Pollution Orchestration Model**.
The architecture is designed to host local environments mapped centrally for LLM / Developer agents so that their capabilities and tracking modules do not leak into the developer's global OS environment.
## Design Patterns & Layers
1. **Master Repository Role (`new_gene`)**: Synchronizes third-party Submodules, flattens them via `.agent/scripts/extract_skills.js` and `.agent/scripts/sync_vendors.bat`, and seeds localized GSD skills via local bin instantiation.
2. **Satellite Project Consumption**: Satellite repositories pull the tracked objects (like `.agent/get-shit-done/` binaries and `.agent/skills/gsd-*/` files), run `bootstrap.bat`, and safely isolate all code environments.
## Execution Entry Points
- Master Sync: `.agent/scripts/sync_vendors.bat/.sh` initializes NPM bounds, installs `uipro`/`get-shit-done-cc` strictly inside `.agent/env/node_modules/`, and runs them from the root via `.agent/env/node_modules/.bin/...` to safely isolate state.
- Satellite Install: `bootstrap.bat/.sh` executes the runtime scripts sequentially (Git modules -> node env -> Python `.requirements` instantiation using a developer-provided `$AGENT_PYTHON_PATH`).
## Data Flow
The data flow travels exclusively via file IO (File reading -> Markdown modification) controlled by the Antigravity Agent framework executing `Task()` components or user IDE plugins. Git actions (add/commit/push) ensure cross-device immutability.

View File

@@ -1,15 +0,0 @@
# Codebase Concerns (`CONCERNS.md`)
## Known Technical Debt & Fragile Areas
1. **UTF-8 Support on PowerShell**:
The `sync_vendors.bat` script utilizes `chcp 65001 >nul` to support symbols and emojis (`🔄`, `⛏️`, `🌐`). However, invoking this `.bat` script directly from the new `powershell.exe` execution layers occasionally mangles the output characters or breaks parsing commands. Developers manually validating `sync_vendors.bat` in Powershell may observe syntax exceptions that don't manifest inside standard CMD executions.
2. **Path Encoding Depth Limitations**:
The GSD implementation maps Deep nested `.agent/vendor/**` repositories and heavily duplicates structure into `.agent/skills/`. For Windows systems overriding 260-character restrictions, this can theoretically introduce silent file truncation if the local `.agent` environment scales beyond expectations.
3. **Submodule Divergences**:
The primary master hook uses `git submodule update --remote --merge`. Tracking upstream mains from multiple open-source repositories means breaking changes authored dynamically by upstream maintainers (e.g., `browser_use` rewriting its setup commands or `obsidian-skills` evolving) could cascade into local logic breaks, requiring a robust `translate_skills.js` sync layer to patch integration shifts.
4. **Environment Abstraction Leaks**:
While Zero-Pollution aims to block system pollution, `bootstrap.bat` utilizes `AGENT_PYTHON_PATH` configured globally to execute `.requirements.txt`. There is an implicit assumption that this python executable is correctly mapped to an isolated virtual environment (`venv`). The architecture relies heavily on Developer compliance to not provide a root Python executable.

View File

@@ -1,14 +0,0 @@
# Codebase Conventions (`CONVENTIONS.md`)
## Code Style & Scripts
- **Shell / Bash**: Ensure standard `$?` exit evaluation handling with `if [ $? -ne 0 ]; then exit 1; fi`.
- **Batch Scripting**: Ensure `%errorlevel%` mapping with `if %errorlevel% neq 0 ( exit /b %errorlevel% )`. Uses `chcp 65001 >nul` for cross-platform UTF-8 emoji support.
- **Node.js Scripts**: Typically wrapped recursively checking properties (`fs.existsSync`, `fs.readdirSync`), enforcing zero-pollution (ignoring flattened dependencies via explicit `fs.writeFileSync`).
## Architectural Patterns
- **Zero-Pollution Rule**: Never install global node_modules (`-g`) or system modifications. Path routing is managed securely using execution strings formatted like `path/to/local/bin` instead of relying on `$PATH`.
- **Idempotency Rule**: The bootstrap processes (`bootstrap.sh`, `bootstrap.bat`) are designed to be run hundreds of times safely, using `if not exist` checks before taking any structural action.
## Error Handling
- Terminal outputs are robust, mapping explicit phases like `[1/5]`, `[2/5]` to terminal stdout.
- Execution halts strictly on critical dependency update failures.

View File

@@ -1,17 +0,0 @@
# Codebase Integrations (`INTEGRATIONS.md`)
## Webhooks & APIs
- Currently, this project relies purely on Git synchronisation and CLI execution. Network activity is limited to downloading external packages (`npm install`, `pip install`, `git clone/pull`).
- Once MCP tools are invoked, `claude-mem` likely interacts with SQLite logic or LLM memory endpoints depending on its runtime schema. `browser-use` interfaces with web targets directly.
## Databases & Persistence
- There are no central RDBMS or NoSQL layers native to this orchestration layer.
- **Knowledge/Memory**: The project serves as an SSOT using markdown (`.planning/*`, `.agent/knowledge/*`).
- **MCP state persistence**: Relies on specific plugin's local DBs (e.g., SQLite for mem logs).
## Third-Party Authentication
- Configured by `.agent/config/.env.agent` which includes API keys (Vikunja Task ID, Gitea instances, etc.), though the current codebase only seeds and checks for its existence without directly invoking the APIs inside the shell scripts.
## Core External Tools
- **Git**: Primary persistence and vendor orchestration transport mechanism.
- **NPM & PIP**: Invoked asynchronously by bootstrap scripts to satisfy AI tool dependencies.

View File

@@ -1,29 +0,0 @@
# Codebase Stack (`STACK.md`)
## Languages
- **Shell / Batch Scripting**: Used heavily for the zero-pollution bootstrap scripts (`bootstrap.bat`, `bootstrap.sh`, `sync_vendors.bat`, `sync_vendors.sh`).
- **JavaScript (Node.js)**: Used for vendor extraction and translation scripts (`extract_skills.js`, `translate_skills.js`).
- **Python**: Required indirectly for running installed Python MCP servers (`browser_use`, `mini-swe`, `claude-mem`) during satellite bootstrapping.
## Runtimes & Frameworks
- **Node.js**: The `.agent/env` isolates local dependencies (e.g. `npm install`, `npx get-shit-done-cc`, `uipro-cli`).
- **Python**: Expected to be provided externally via user's `AGENT_PYTHON_PATH` to isolate plugin Python processes.
- **Agent Engines**: Target runtimes interacting with this environment include Google Gemini CLI / Antigravity, Claude Code, and Copilot.
## Core Dependencies
- **UI & Workflow Generative Frameworks**:
- `get-shit-done-cc`: CLI orchestration framework for generating GSD workflows.
- `uipro-cli`: Generates UI/UX specification data.
- **Git Submodules** (defined in `.gitmodules`):
- `.agent/vendor/superpowers`
- `.agent/knowledge/everything_claude`
- `.agent/knowledge/awesome_claude`
- `.agent/vendor/obsidian-skills`
- `.agent/services/claude-mem`
- `.agent/services/mcp-core`
- `.agent/vendor/browser_use`
- `.agent/vendor/mini-swe`
## Configuration
- `.agent/config/.env.agent`: Developer-specific agent configuration. Uses `.template` fallback.
- `PROJECT.md` & `ROADMAP.md`: Project-level planning and tracker configurations.

View File

@@ -1,19 +0,0 @@
# Codebase Structure (`STRUCTURE.md`)
## Directory Map
- **Root Files**
- `bootstrap.bat` / `bootstrap.sh`: Primary runtime orchestrators for setting up the node/python environment.
- `.gitignore` & `.gitmodules`: Repository definitions protecting the ecosystem from pollution.
- **`.agent/` (The Enclave)**
- `.agent/env/`: The isolated local node environment container. Has its own `package.json` avoiding merging issues with user code.
- `.agent/scripts/`: Home of the Master Sync orchestration rules (`sync_vendors`, `extract_skills.js`, `translate_skills.js`).
- `.agent/skills/`: Holds the flattened markdown files (`SKILL.md`) that agents interpret on system boot. Note `gsd-*/` is whitelisted here.
- `.agent/vendor/`: The raw checked-out git repository targets before any translations/flattening is parsed out of them.
- `.agent/config/`: Runtime configurations specific to the current physical machine (`.env.agent`).
- `.agent/knowledge/`: Stores raw unstructured domain context for explicit queries.
- **`.planning/` (GSD Execution)**
- Manages the Project State (`PROJECT.md`, `ROADMAP.md`, `STATE.md`).
- `phases/`: Artifact history holding individual plans (`01-PLAN.md`) and the verification/summary reports mapping their outcomes.

View File

@@ -1,12 +0,0 @@
# Codebase Testing (`TESTING.md`)
## Structural Verification
Given that this is an AI Framework Infrastructure project (Bootstrap Kit), formal unit testing via Jest/Vitest does not primarily apply to the root structure.
## GSD Audit Testing
Testing is defined strictly through the **Plan-Execute-Verify** cycle of the Get-Shit-Done (GSD) framework:
- **`[Acceptance Criteria]`**: Each phase and subtask has shell commands evaluated by `grep` or file existence checks ensuring conditions are logically provable (e.g. `grep "npx get-shit-done-cc" .agent/scripts/sync_vendors.bat`).
- **Verifiers**: The `.planning/phases/*-VERIFICATION.md` pattern uses dedicated checker agents to automatically validate system goals against the physical outcome on disk.
## Continuous Integration
At the moment, no GitHub Actions or standard CI test runners execute automated validation, as validation strictly hinges on local agent validation (`/gsd-verify-work` or `gsd-plan-checker` routines).

View File

@@ -1,14 +0,0 @@
{
"mode": "yolo",
"granularity": "Standard",
"parallelization": true,
"commit_docs": true,
"model_profile": "balanced",
"workflow": {
"research": true,
"plan_check": true,
"verifier": true,
"nyquist_validation": true,
"auto_advance": true
}
}

View File

@@ -1,57 +0,0 @@
# Phase 1: Zero-Pollution Pipeline Stabilization - Context
**Gathered:** 2026-03-30
**Status:** Ready for planning
**Source:** PRD Express Path (implementation_plan.md)
<domain>
## Phase Boundary
Fix the Master-Satellite synchronization pipeline to natively extract GSD skills, UI updates, and Python dependencies. This ensures that a zero-click `bootstrap.bat/.sh` works flawlessly across new workspaces without violating the Zero-Pollution architecture.
</domain>
<decisions>
## Implementation Decisions
### Zero-Click Python Dependencies
- Modify `bootstrap.bat` and `bootstrap.sh` to auto-detect and pip-install Python dependencies for MCP tools (`browser_use`, `claude-mem`, `mini-swe`).
### Master Sync Pipeline GSD Extraction
- Modify `sync_vendors.bat` and `sync_vendors.sh` to execute `npm update get-shit-done-cc uipro-cli`, `npx uipro update`, and `npx get-shit-done-cc --antigravity --local` inside `.agent/env`.
- Ensure output folders `.agent/get-shit-done/` and `.agent/skills/gsd-*/` are `git add`ed.
### Gitignore Rules for extracted skills
- Modify `.agent/scripts/extract_skills.js` to whitelist `!gsd-*/` in the generated `.gitignore` so Phase planning and GSD execution tools successfully persist to git.
### the agent's Discretion
- The method of Python virtual environment detection vs global python is left to the agent, though leveraging `AGENT_PYTHON_PATH` if specified is preferred.
</decisions>
<canonical_refs>
## Canonical References
**Downstream agents MUST read these before planning or implementing.**
### Zero Pollution Scripts
- `bootstrap.bat`
- `bootstrap.sh`
- `.agent/scripts/sync_vendors.bat`
- `.agent/scripts/sync_vendors.sh`
- `.agent/scripts/extract_skills.js`
</canonical_refs>
<specifics>
## Specific Ideas
- The `npx get-shit-done-cc --antigravity --local` command must be run relative to the project root or precisely routed, otherwise GSD commands won't appear sequentially.
</specifics>
<deferred>
## Deferred Ideas
None — PRD covers phase scope.
</deferred>
---
*Phase: 01-zero-pollution-pipeline-stabilization*
*Context gathered: 2026-03-30 via PRD Express Path*

View File

@@ -1,143 +0,0 @@
---
wave: 1
depends_on: []
files_modified:
- ".agent/scripts/sync_vendors.bat"
- ".agent/scripts/sync_vendors.sh"
- ".agent/scripts/extract_skills.js"
- "bootstrap.bat"
- "bootstrap.sh"
autonomous: true
---
# Phase 1: Zero-Pollution Pipeline Stabilization
## Objective
Fix the Master-Satellite synchronization pipeline to natively extract GSD skills, UI data, and Python MCP dependencies so that satellite repositories bootstrap via zero-click.
## Verification Criteria
- [ ] Running `bootstrap.bat` attempts to install Python `requirements.txt` targets (`browser_use`, `claude-mem`).
- [ ] Running `sync_vendors.bat` successfully runs `get-shit-done-cc` generator and Git tracks `.agent/skills/gsd-*/` and `.agent/get-shit-done/`.
- [ ] `extract_skills.js` generated `.gitignore` whitelists `!gsd-*/`.
## must_haves
- [ ] `sync_vendors.bat` and `sync_vendors.sh` must execute `npm install`, `npx uipro update` and `npx get-shit-done-cc --antigravity --local`.
- [ ] `bootstrap.bat` and `bootstrap.sh` must execute `pip install -r requirements.txt` for Python components if Python env exists.
- [ ] GSD execution binaries and folders must be tracked via `git add .agent/get-shit-done/`.
---
<task>
<read_first>
- .agent/scripts/sync_vendors.bat
- .agent/scripts/sync_vendors.sh
</read_first>
<action>
Add the local GSD extraction and uipro updating mechanism directly inside `sync_vendors.bat` and `sync_vendors.sh`.
For the bash script (`sync_vendors.sh`), under step `[2/5] 패키지 업데이트 및 GSD, UI-UX-PRO-MAX 동기화...`:
Add:
```bash
cd .agent/env
npm install
npm update get-shit-done-cc uipro-cli
npx uipro update
npx get-shit-done-cc --antigravity --local
cd ../..
```
For the batch script (`sync_vendors.bat`), under a new step for package updates:
Add:
```bat
cd .agent\env
call npm install
call npm update get-shit-done-cc uipro-cli
call npx uipro update
call npx get-shit-done-cc --antigravity --local
cd ..\..
```
Also, change the git commit logic to track GSD:
Change `git add .agent/vendor/ .agent/skills/ .gitmodules` to `git add .agent/vendor/ .agent/skills/ .agent/get-shit-done/ .gitmodules`
</action>
<acceptance_criteria>
`grep "npx get-shit-done-cc --antigravity --local" .agent/scripts/sync_vendors.bat` exits 0.
`grep "git add" .agent/scripts/sync_vendors.bat | grep ".agent/get-shit-done/"` exits 0.
`grep "npx get-shit-done-cc --antigravity --local" .agent/scripts/sync_vendors.sh` exits 0.
`grep "git add" .agent/scripts/sync_vendors.sh | grep ".agent/get-shit-done/"` exits 0.
</acceptance_criteria>
</task>
<task>
<read_first>
- .agent/scripts/extract_skills.js
</read_first>
<action>
Modify `extract_skills.js` to whitelist `gsd-*/` skill folders in the generated `.gitignore`.
Find `const gitignoreContent = [` and add `'!gsd-*/',` below `'!mini-swe/',`.
</action>
<acceptance_criteria>
`grep "!gsd-\*/" .agent/scripts/extract_skills.js` exits 0.
</acceptance_criteria>
</task>
<task>
<read_first>
- bootstrap.bat
</read_first>
<action>
Add Python MCP auto-setup logic to `bootstrap.bat` right after the node dependencies step.
Add:
```bat
echo [4/5] Checking and Installing Python MCP Dependencies...
if defined AGENT_PYTHON_PATH (
echo -^> Using AGENT_PYTHON_PATH: %AGENT_PYTHON_PATH%
if exist ".agent\vendor\browser_use\requirements.txt" (
"%AGENT_PYTHON_PATH%" -m pip install -r ".agent\vendor\browser_use\requirements.txt"
)
if exist ".agent\services\claude-mem\requirements.txt" (
"%AGENT_PYTHON_PATH%" -m pip install -r ".agent\services\claude-mem\requirements.txt"
)
if exist ".agent\services\mini-swe\requirements.txt" (
"%AGENT_PYTHON_PATH%" -m pip install -r ".agent\services\mini-swe\requirements.txt"
)
) else (
echo -^> Warning: AGENT_PYTHON_PATH is not defined. Skipping Python dependencies installation.
)
```
Update the final step text `[4/4]` to `[5/5]` appropriately.
</action>
<acceptance_criteria>
`grep "AGENT_PYTHON_PATH" bootstrap.bat` exits 0.
`grep "pip install -r" bootstrap.bat` exits 0.
</acceptance_criteria>
</task>
<task>
<read_first>
- bootstrap.sh
</read_first>
<action>
Add Python MCP auto-setup logic to `bootstrap.sh` right after the node dependencies step.
Add:
```bash
echo "[4/5] Checking and Installing Python MCP Dependencies..."
if [ -n "$AGENT_PYTHON_PATH" ]; then
echo " -> Using AGENT_PYTHON_PATH: $AGENT_PYTHON_PATH"
if [ -f ".agent/vendor/browser_use/requirements.txt" ]; then
"$AGENT_PYTHON_PATH" -m pip install -r ".agent/vendor/browser_use/requirements.txt"
fi
if [ -f ".agent/services/claude-mem/requirements.txt" ]; then
"$AGENT_PYTHON_PATH" -m pip install -r ".agent/services/claude-mem/requirements.txt"
fi
if [ -f ".agent/services/mini-swe/requirements.txt" ]; then
"$AGENT_PYTHON_PATH" -m pip install -r ".agent/services/mini-swe/requirements.txt"
fi
else
echo " -> Warning: AGENT_PYTHON_PATH is not defined. Skipping Python dependencies installation."
fi
```
Update the final step text `[4/4]` to `[5/5]` appropriately.
</action>
<acceptance_criteria>
`grep "AGENT_PYTHON_PATH" bootstrap.sh` exits 0.
`grep "pip install -r" bootstrap.sh` exits 0.
</acceptance_criteria>
</task>

View File

@@ -1,25 +0,0 @@
{
"version": "1.0",
"timestamp": "2026-03-29T19:40:00Z",
"phase": "00-setup",
"phase_name": "Project Initialization",
"phase_dir": ".planning",
"plan": 0,
"task": 0,
"total_tasks": 0,
"status": "paused",
"completed_tasks": [],
"remaining_tasks": [],
"blockers": [],
"human_actions_pending": [],
"decisions": [
{
"decision": "Master-Satellite Deployment",
"rationale": "Ensures downstream repos remain 100% Zero-Pollution by distributing flattened skills natively via Git Push",
"phase": "0"
}
],
"uncommitted_files": [],
"next_action": "Run /gsd-plan-phase 1 to begin roadmap construction",
"context_notes": "Zero-pollution foundation is perfectly solid. Awaiting Phase 1 initialization."
}

View File

@@ -1,38 +1,46 @@
# Project Context: Zero-Pollution Agent Bootstrap Kit
# Variet LLM: Dual-Orchestration AI Assistant
## What This Is
`new_gene`은 향후 모든 AI 에이전트 개발 및 자동화 프로젝트에 포크(Fork)되거나 복제되어 즉각적으로 활용되는 **'완전 자율형·무오염(Zero-Pollution) 부트스트랩 마스터 템플릿'** 입니다.
A high-performance, locally-hosted AI assistant system built on two RTX 3060 12GB GPUs. It uses a "2+0" architecture where Machine A acts as a dedicated inference server running large language models, while Machine B handles the user interface (VS Code, Discord) and tool execution.
## Core Value
코딩을 시작할 때 발생하는 세팅 오류, 프롬프트 해킹, 메인 브랜치 훼손, API 키 유출을 원천적으로 막습니다. 누구나 이 저장소만 클론(`git clone`) 받으면 환경 설정이나 별도의 복잡한 스크립트 실행 없이 19개의 최고급 개발 스킬(TDD, Git Worktree)과 GSD 오케스트레이터를 즉시 꺼내 쓸 수 있는 완벽한 턴키(Turn-key) 생태계를 구축합니다.
## Problem / Core Value
Standard LLM set-ups on a single GPU often struggle with context switching and running multi-tools asynchronously. By dedicating an API server to raw inference (50-80 t/s with Qwen 35B), the system achieves extreme responsiveness for coding while preserving resources for tool execution (Calendar, Mail, Search) on the workstation.
## Success Criteria
1. 사용자가 단 1개의 글로벌 패키지를 설치하지 않아도 로컬(`.agent/env/node_modules`)만을 통해 100% 작동해야 함.
2. 터미널 명령어나 히스토리에 API 토큰이 노출되지 않고 자동 동기화(Vikunja/Gitea)가 이루어져야 함.
3. 에이전트는 코딩 전 반드시 TDD 가설을 세우고, 서브 브랜치(Worktree)로 격리되어 안전하게 작업해야 함.
4. **[Key Constraint]** 템플릿의 모든 아키텍처는 `git clone`만으로 완전한 작업 흐름이 이어져야 하며, 각 파생 프로젝트들은 `git pull` 명령어 단 한 번만으로 최신 무기와 스킬(Agent 엔진)이 완벽히 업데이트되어야 함.
## Target Audience
Single developer working on complex coding tasks alongside daily administrative tasks.
## Key Decisions
| Decision | Rationale | Outcome |
|----------|-----------|---------|
| 2+0 GPU Architecture | Placing both GPUs in Machine A allows Qwen 35B to fully load into VRAM, increasing speed from 30t/s to 50-80t/s. | Machine A: API Server only.<br/>Machine B: All orchestrations & tools. |
| Separation of Agent Logic | Machine A is a pure "brain" (llama-server). Machine B has the "hands and eyes" (VS Code extension and Discord Bot). | Simplified infrastructure; tools execute directly on the workstation. |
| 3-Tier Model Strategy | Need balanced speeds depending on the complexity of the task requested. | Fast: Gemma4 26B (~70t/s)<br/>Balanced: Qwen 35B (~50t/s)<br/>Deep: Qwen 122B (~11t/s) |
## Requirements
### Validated
- ✓ [Zero-Pollution] 모든 스킬(`superpowers`, `obsidian-skills`)이 글로벌 영역이 아닌 내부(`.agent/skills/`)로 캡슐화되어 직접 Git 트래킹을 받음.
- ✓ [API Bridge] `sync_wiki.js``sync_vikunja.js`를 통해 토큰 노출 없이 서버와 통신 구조 확보.
- ✓ [Persistence] `claude-mem` (SQLite MCP) 기반의 오답노트 기억 능력 탑재.
(None yet — ship to validate)
### Active
- [x] `git clone`/`git pull`만으로 19개 스킬 즉각 로드 (Master Sync Hub 토폴로지 확립)
- [ ] GSD Phase 계획과 실제 코드 실행 간 오차를 자동으로 검증할 브릿지 시스템 보완
- [ ] `.env.agent`만 셋업하면 모든 것이 알아서 연결되는 완전 자율화 체계 구축 지속
### Out of Scope (배포 제약)
- **하위 프로젝트(Satellite Repo)에서의 오픈소스 서브모듈(Vendor) 직접 업데이트 행위 원천 금지.** (오직 ఈ Master 템플릿의 `sync_vendors` 스크립트만이 서브모듈의 버전을 평탄화 추출/번역하여 100% 검증된 정적 파일(`.agent/skills/`)로 Git 트래킹합니다.)
- 하위 패키지에 글로벌 NPM 패키지 설치 요구 및 부트스트랩 스크립트 실행 강요 금지 (오직 `git pull` 하나만으로 마스터의 스킬셋 변동분을 수동적으로 상속받을 것).
- `/start``/end` 같은 과거 유산(Legacy) 도입 금지
- [ ] Deploy headless llama-server setup on Machine A.
- [ ] Build a model hot-swap utility (Fast/Balanced/Deep) for Machine A.
- [ ] Develop a VS Code Extension (TypeScript) on Machine B for coding agent loop.
- [ ] Develop a Discord Bot (discord.py) on Machine B for personal assistant tools.
- [ ] Implement MCP tools (SearXNG, Google Calendar, Gmail) securely on Machine B.
### Out of Scope
- [ ] Running inference directly on Machine B (It lacks VRAM/GPU resources in this architecture).
- [ ] Exposing Machine A to the public internet (LAN traffic only).
---
*Last updated: 2026-03-29 after Phase 1 initialization*
*Last updated: 2026-04-05 after initialization*
## Evolution
This document evolves at phase transitions and milestone boundaries.
**After each phase transition** (via `/gsd-transition`):

View File

@@ -1,11 +0,0 @@
# Roadmap
## Phase 1: Zero-Pollution Pipeline Stabilization
**Status:** Complete (2026-03-30)
**Goal:** Fix the Master-Satellite synchronization pipeline to natively extract GSD skills, UI data, and Python MCP dependencies so that satellite repositories bootstrap via zero-click.
### Requirements
- REQ-01: Bootstrap script must auto-install Python dependencies for MCP tools across satellites.
- REQ-02: Master sync script must invoke `get-shit-done-cc` local installation to native `.agent/skills` and ensure Git tracking.
- REQ-03: Master sync script must invoke `uipro update` and commit changes.
- REQ-04: The `.gitignore` generated by `extract_skills.js` must safely whitelist `/gsd` skill directories.

View File

@@ -1,16 +0,0 @@
# Codebase Architecture (`ARCHITECTURE.md`)
## Conceptual Core
The project employs a **Master-Satellite Zero-Pollution Orchestration Model**.
The architecture is designed to host local environments mapped centrally for LLM / Developer agents so that their capabilities and tracking modules do not leak into the developer's global OS environment.
## Design Patterns & Layers
1. **Master Repository Role (`new_gene`)**: Synchronizes third-party Submodules, flattens them via `.agent/scripts/extract_skills.js` and `.agent/scripts/sync_vendors.bat`, and seeds localized GSD skills via local bin instantiation.
2. **Satellite Project Consumption**: Satellite repositories pull the tracked objects (like `.agent/get-shit-done/` binaries and `.agent/skills/gsd-*/` files), run `bootstrap.bat`, and safely isolate all code environments.
## Execution Entry Points
- Master Sync: `.agent/scripts/sync_vendors.bat/.sh` initializes NPM bounds, installs `uipro`/`get-shit-done-cc` strictly inside `.agent/env/node_modules/`, and runs them from the root via `.agent/env/node_modules/.bin/...` to safely isolate state.
- Satellite Install: `bootstrap.bat/.sh` executes the runtime scripts sequentially (Git modules -> node env -> Python `.requirements` instantiation using a developer-provided `$AGENT_PYTHON_PATH`).
## Data Flow
The data flow travels exclusively via file IO (File reading -> Markdown modification) controlled by the Antigravity Agent framework executing `Task()` components or user IDE plugins. Git actions (add/commit/push) ensure cross-device immutability.

View File

@@ -1,15 +0,0 @@
# Codebase Concerns (`CONCERNS.md`)
## Known Technical Debt & Fragile Areas
1. **UTF-8 Support on PowerShell**:
The `sync_vendors.bat` script utilizes `chcp 65001 >nul` to support symbols and emojis (`🔄`, `⛏️`, `🌐`). However, invoking this `.bat` script directly from the new `powershell.exe` execution layers occasionally mangles the output characters or breaks parsing commands. Developers manually validating `sync_vendors.bat` in Powershell may observe syntax exceptions that don't manifest inside standard CMD executions.
2. **Path Encoding Depth Limitations**:
The GSD implementation maps Deep nested `.agent/vendor/**` repositories and heavily duplicates structure into `.agent/skills/`. For Windows systems overriding 260-character restrictions, this can theoretically introduce silent file truncation if the local `.agent` environment scales beyond expectations.
3. **Submodule Divergences**:
The primary master hook uses `git submodule update --remote --merge`. Tracking upstream mains from multiple open-source repositories means breaking changes authored dynamically by upstream maintainers (e.g., `browser_use` rewriting its setup commands or `obsidian-skills` evolving) could cascade into local logic breaks, requiring a robust `translate_skills.js` sync layer to patch integration shifts.
4. **Environment Abstraction Leaks**:
While Zero-Pollution aims to block system pollution, `bootstrap.bat` utilizes `AGENT_PYTHON_PATH` configured globally to execute `.requirements.txt`. There is an implicit assumption that this python executable is correctly mapped to an isolated virtual environment (`venv`). The architecture relies heavily on Developer compliance to not provide a root Python executable.

View File

@@ -1,14 +0,0 @@
# Codebase Conventions (`CONVENTIONS.md`)
## Code Style & Scripts
- **Shell / Bash**: Ensure standard `$?` exit evaluation handling with `if [ $? -ne 0 ]; then exit 1; fi`.
- **Batch Scripting**: Ensure `%errorlevel%` mapping with `if %errorlevel% neq 0 ( exit /b %errorlevel% )`. Uses `chcp 65001 >nul` for cross-platform UTF-8 emoji support.
- **Node.js Scripts**: Typically wrapped recursively checking properties (`fs.existsSync`, `fs.readdirSync`), enforcing zero-pollution (ignoring flattened dependencies via explicit `fs.writeFileSync`).
## Architectural Patterns
- **Zero-Pollution Rule**: Never install global node_modules (`-g`) or system modifications. Path routing is managed securely using execution strings formatted like `path/to/local/bin` instead of relying on `$PATH`.
- **Idempotency Rule**: The bootstrap processes (`bootstrap.sh`, `bootstrap.bat`) are designed to be run hundreds of times safely, using `if not exist` checks before taking any structural action.
## Error Handling
- Terminal outputs are robust, mapping explicit phases like `[1/5]`, `[2/5]` to terminal stdout.
- Execution halts strictly on critical dependency update failures.

View File

@@ -1,17 +0,0 @@
# Codebase Integrations (`INTEGRATIONS.md`)
## Webhooks & APIs
- Currently, this project relies purely on Git synchronisation and CLI execution. Network activity is limited to downloading external packages (`npm install`, `pip install`, `git clone/pull`).
- Once MCP tools are invoked, `claude-mem` likely interacts with SQLite logic or LLM memory endpoints depending on its runtime schema. `browser-use` interfaces with web targets directly.
## Databases & Persistence
- There are no central RDBMS or NoSQL layers native to this orchestration layer.
- **Knowledge/Memory**: The project serves as an SSOT using markdown (`.planning/*`, `.agent/knowledge/*`).
- **MCP state persistence**: Relies on specific plugin's local DBs (e.g., SQLite for mem logs).
## Third-Party Authentication
- Configured by `.agent/config/.env.agent` which includes API keys (Vikunja Task ID, Gitea instances, etc.), though the current codebase only seeds and checks for its existence without directly invoking the APIs inside the shell scripts.
## Core External Tools
- **Git**: Primary persistence and vendor orchestration transport mechanism.
- **NPM & PIP**: Invoked asynchronously by bootstrap scripts to satisfy AI tool dependencies.

View File

@@ -1,29 +0,0 @@
# Codebase Stack (`STACK.md`)
## Languages
- **Shell / Batch Scripting**: Used heavily for the zero-pollution bootstrap scripts (`bootstrap.bat`, `bootstrap.sh`, `sync_vendors.bat`, `sync_vendors.sh`).
- **JavaScript (Node.js)**: Used for vendor extraction and translation scripts (`extract_skills.js`, `translate_skills.js`).
- **Python**: Required indirectly for running installed Python MCP servers (`browser_use`, `mini-swe`, `claude-mem`) during satellite bootstrapping.
## Runtimes & Frameworks
- **Node.js**: The `.agent/env` isolates local dependencies (e.g. `npm install`, `npx get-shit-done-cc`, `uipro-cli`).
- **Python**: Expected to be provided externally via user's `AGENT_PYTHON_PATH` to isolate plugin Python processes.
- **Agent Engines**: Target runtimes interacting with this environment include Google Gemini CLI / Antigravity, Claude Code, and Copilot.
## Core Dependencies
- **UI & Workflow Generative Frameworks**:
- `get-shit-done-cc`: CLI orchestration framework for generating GSD workflows.
- `uipro-cli`: Generates UI/UX specification data.
- **Git Submodules** (defined in `.gitmodules`):
- `.agent/vendor/superpowers`
- `.agent/knowledge/everything_claude`
- `.agent/knowledge/awesome_claude`
- `.agent/vendor/obsidian-skills`
- `.agent/services/claude-mem`
- `.agent/services/mcp-core`
- `.agent/vendor/browser_use`
- `.agent/vendor/mini-swe`
## Configuration
- `.agent/config/.env.agent`: Developer-specific agent configuration. Uses `.template` fallback.
- `PROJECT.md` & `ROADMAP.md`: Project-level planning and tracker configurations.

View File

@@ -1,19 +0,0 @@
# Codebase Structure (`STRUCTURE.md`)
## Directory Map
- **Root Files**
- `bootstrap.bat` / `bootstrap.sh`: Primary runtime orchestrators for setting up the node/python environment.
- `.gitignore` & `.gitmodules`: Repository definitions protecting the ecosystem from pollution.
- **`.agent/` (The Enclave)**
- `.agent/env/`: The isolated local node environment container. Has its own `package.json` avoiding merging issues with user code.
- `.agent/scripts/`: Home of the Master Sync orchestration rules (`sync_vendors`, `extract_skills.js`, `translate_skills.js`).
- `.agent/skills/`: Holds the flattened markdown files (`SKILL.md`) that agents interpret on system boot. Note `gsd-*/` is whitelisted here.
- `.agent/vendor/`: The raw checked-out git repository targets before any translations/flattening is parsed out of them.
- `.agent/config/`: Runtime configurations specific to the current physical machine (`.env.agent`).
- `.agent/knowledge/`: Stores raw unstructured domain context for explicit queries.
- **`.planning/` (GSD Execution)**
- Manages the Project State (`PROJECT.md`, `ROADMAP.md`, `STATE.md`).
- `phases/`: Artifact history holding individual plans (`01-PLAN.md`) and the verification/summary reports mapping their outcomes.

View File

@@ -1,12 +0,0 @@
# Codebase Testing (`TESTING.md`)
## Structural Verification
Given that this is an AI Framework Infrastructure project (Bootstrap Kit), formal unit testing via Jest/Vitest does not primarily apply to the root structure.
## GSD Audit Testing
Testing is defined strictly through the **Plan-Execute-Verify** cycle of the Get-Shit-Done (GSD) framework:
- **`[Acceptance Criteria]`**: Each phase and subtask has shell commands evaluated by `grep` or file existence checks ensuring conditions are logically provable (e.g. `grep "npx get-shit-done-cc" .agent/scripts/sync_vendors.bat`).
- **Verifiers**: The `.planning/phases/*-VERIFICATION.md` pattern uses dedicated checker agents to automatically validate system goals against the physical outcome on disk.
## Continuous Integration
At the moment, no GitHub Actions or standard CI test runners execute automated validation, as validation strictly hinges on local agent validation (`/gsd-verify-work` or `gsd-plan-checker` routines).

16
.planning/config.json Normal file
View File

@@ -0,0 +1,16 @@
{
"project_name": "Variet LLM",
"version": 1,
"mode": "yolo",
"granularity": "standard",
"parallelization": false,
"commit_docs": true,
"model_profile": "quality",
"workflow": {
"research": true,
"plan_check": true,
"verifier": true,
"nyquist_validation": true,
"_auto_chain_active": true
}
}

View File

@@ -1,57 +0,0 @@
# Phase 1: Zero-Pollution Pipeline Stabilization - Context
**Gathered:** 2026-03-30
**Status:** Ready for planning
**Source:** PRD Express Path (implementation_plan.md)
<domain>
## Phase Boundary
Fix the Master-Satellite synchronization pipeline to natively extract GSD skills, UI updates, and Python dependencies. This ensures that a zero-click `bootstrap.bat/.sh` works flawlessly across new workspaces without violating the Zero-Pollution architecture.
</domain>
<decisions>
## Implementation Decisions
### Zero-Click Python Dependencies
- Modify `bootstrap.bat` and `bootstrap.sh` to auto-detect and pip-install Python dependencies for MCP tools (`browser_use`, `claude-mem`, `mini-swe`).
### Master Sync Pipeline GSD Extraction
- Modify `sync_vendors.bat` and `sync_vendors.sh` to execute `npm update get-shit-done-cc uipro-cli`, `npx uipro update`, and `npx get-shit-done-cc --antigravity --local` inside `.agent/env`.
- Ensure output folders `.agent/get-shit-done/` and `.agent/skills/gsd-*/` are `git add`ed.
### Gitignore Rules for extracted skills
- Modify `.agent/scripts/extract_skills.js` to whitelist `!gsd-*/` in the generated `.gitignore` so Phase planning and GSD execution tools successfully persist to git.
### the agent's Discretion
- The method of Python virtual environment detection vs global python is left to the agent, though leveraging `AGENT_PYTHON_PATH` if specified is preferred.
</decisions>
<canonical_refs>
## Canonical References
**Downstream agents MUST read these before planning or implementing.**
### Zero Pollution Scripts
- `bootstrap.bat`
- `bootstrap.sh`
- `.agent/scripts/sync_vendors.bat`
- `.agent/scripts/sync_vendors.sh`
- `.agent/scripts/extract_skills.js`
</canonical_refs>
<specifics>
## Specific Ideas
- The `npx get-shit-done-cc --antigravity --local` command must be run relative to the project root or precisely routed, otherwise GSD commands won't appear sequentially.
</specifics>
<deferred>
## Deferred Ideas
None — PRD covers phase scope.
</deferred>
---
*Phase: 01-zero-pollution-pipeline-stabilization*
*Context gathered: 2026-03-30 via PRD Express Path*

View File

@@ -1,143 +0,0 @@
---
wave: 1
depends_on: []
files_modified:
- ".agent/scripts/sync_vendors.bat"
- ".agent/scripts/sync_vendors.sh"
- ".agent/scripts/extract_skills.js"
- "bootstrap.bat"
- "bootstrap.sh"
autonomous: true
---
# Phase 1: Zero-Pollution Pipeline Stabilization
## Objective
Fix the Master-Satellite synchronization pipeline to natively extract GSD skills, UI data, and Python MCP dependencies so that satellite repositories bootstrap via zero-click.
## Verification Criteria
- [ ] Running `bootstrap.bat` attempts to install Python `requirements.txt` targets (`browser_use`, `claude-mem`).
- [ ] Running `sync_vendors.bat` successfully runs `get-shit-done-cc` generator and Git tracks `.agent/skills/gsd-*/` and `.agent/get-shit-done/`.
- [ ] `extract_skills.js` generated `.gitignore` whitelists `!gsd-*/`.
## must_haves
- [ ] `sync_vendors.bat` and `sync_vendors.sh` must execute `npm install`, `npx uipro update` and `npx get-shit-done-cc --antigravity --local`.
- [ ] `bootstrap.bat` and `bootstrap.sh` must execute `pip install -r requirements.txt` for Python components if Python env exists.
- [ ] GSD execution binaries and folders must be tracked via `git add .agent/get-shit-done/`.
---
<task>
<read_first>
- .agent/scripts/sync_vendors.bat
- .agent/scripts/sync_vendors.sh
</read_first>
<action>
Add the local GSD extraction and uipro updating mechanism directly inside `sync_vendors.bat` and `sync_vendors.sh`.
For the bash script (`sync_vendors.sh`), under step `[2/5] 패키지 업데이트 및 GSD, UI-UX-PRO-MAX 동기화...`:
Add:
```bash
cd .agent/env
npm install
npm update get-shit-done-cc uipro-cli
npx uipro update
npx get-shit-done-cc --antigravity --local
cd ../..
```
For the batch script (`sync_vendors.bat`), under a new step for package updates:
Add:
```bat
cd .agent\env
call npm install
call npm update get-shit-done-cc uipro-cli
call npx uipro update
call npx get-shit-done-cc --antigravity --local
cd ..\..
```
Also, change the git commit logic to track GSD:
Change `git add .agent/vendor/ .agent/skills/ .gitmodules` to `git add .agent/vendor/ .agent/skills/ .agent/get-shit-done/ .gitmodules`
</action>
<acceptance_criteria>
`grep "npx get-shit-done-cc --antigravity --local" .agent/scripts/sync_vendors.bat` exits 0.
`grep "git add" .agent/scripts/sync_vendors.bat | grep ".agent/get-shit-done/"` exits 0.
`grep "npx get-shit-done-cc --antigravity --local" .agent/scripts/sync_vendors.sh` exits 0.
`grep "git add" .agent/scripts/sync_vendors.sh | grep ".agent/get-shit-done/"` exits 0.
</acceptance_criteria>
</task>
<task>
<read_first>
- .agent/scripts/extract_skills.js
</read_first>
<action>
Modify `extract_skills.js` to whitelist `gsd-*/` skill folders in the generated `.gitignore`.
Find `const gitignoreContent = [` and add `'!gsd-*/',` below `'!mini-swe/',`.
</action>
<acceptance_criteria>
`grep "!gsd-\*/" .agent/scripts/extract_skills.js` exits 0.
</acceptance_criteria>
</task>
<task>
<read_first>
- bootstrap.bat
</read_first>
<action>
Add Python MCP auto-setup logic to `bootstrap.bat` right after the node dependencies step.
Add:
```bat
echo [4/5] Checking and Installing Python MCP Dependencies...
if defined AGENT_PYTHON_PATH (
echo -^> Using AGENT_PYTHON_PATH: %AGENT_PYTHON_PATH%
if exist ".agent\vendor\browser_use\requirements.txt" (
"%AGENT_PYTHON_PATH%" -m pip install -r ".agent\vendor\browser_use\requirements.txt"
)
if exist ".agent\services\claude-mem\requirements.txt" (
"%AGENT_PYTHON_PATH%" -m pip install -r ".agent\services\claude-mem\requirements.txt"
)
if exist ".agent\services\mini-swe\requirements.txt" (
"%AGENT_PYTHON_PATH%" -m pip install -r ".agent\services\mini-swe\requirements.txt"
)
) else (
echo -^> Warning: AGENT_PYTHON_PATH is not defined. Skipping Python dependencies installation.
)
```
Update the final step text `[4/4]` to `[5/5]` appropriately.
</action>
<acceptance_criteria>
`grep "AGENT_PYTHON_PATH" bootstrap.bat` exits 0.
`grep "pip install -r" bootstrap.bat` exits 0.
</acceptance_criteria>
</task>
<task>
<read_first>
- bootstrap.sh
</read_first>
<action>
Add Python MCP auto-setup logic to `bootstrap.sh` right after the node dependencies step.
Add:
```bash
echo "[4/5] Checking and Installing Python MCP Dependencies..."
if [ -n "$AGENT_PYTHON_PATH" ]; then
echo " -> Using AGENT_PYTHON_PATH: $AGENT_PYTHON_PATH"
if [ -f ".agent/vendor/browser_use/requirements.txt" ]; then
"$AGENT_PYTHON_PATH" -m pip install -r ".agent/vendor/browser_use/requirements.txt"
fi
if [ -f ".agent/services/claude-mem/requirements.txt" ]; then
"$AGENT_PYTHON_PATH" -m pip install -r ".agent/services/claude-mem/requirements.txt"
fi
if [ -f ".agent/services/mini-swe/requirements.txt" ]; then
"$AGENT_PYTHON_PATH" -m pip install -r ".agent/services/mini-swe/requirements.txt"
fi
else
echo " -> Warning: AGENT_PYTHON_PATH is not defined. Skipping Python dependencies installation."
fi
```
Update the final step text `[4/4]` to `[5/5]` appropriately.
</action>
<acceptance_criteria>
`grep "AGENT_PYTHON_PATH" bootstrap.sh` exits 0.
`grep "pip install -r" bootstrap.sh` exits 0.
</acceptance_criteria>
</task>