분산 워크플로우
Need User FeedbackREAP는 여러 개발자나 AI 에이전트가 동일한 프로젝트에서 병렬로 작업하는 협업 환경을 위한 분산 워크플로우를 지원합니다 — 중앙 서버 없이. Git이 유일한 전송 계층입니다.
⚠ 분산 워크플로우는 현재 초기 단계이며 추가 테스트가 필요합니다. 프로덕션 환경에서는 주의하여 사용하세요. 사용자 피드백을 적극적으로 수집하고 있습니다 — 이슈나 제안은 GitHub Issues
작동 방식
각 개발자나 에이전트가 자신의 브랜치와 Generation에서 독립적으로 작업합니다. 결합할 때 REAP가 genome 우선 전략으로 merge를 조율합니다.
- Machine A가 branch-a에서 gen-046-a를 완료 → /reap.push
- Machine B가 branch-b에서 gen-046-b를 완료 → /reap.push
- Machine A가 /reap.pull branch-b 실행 → fetch + 전체 merge generation 라이프사이클
핵심 원칙
git pull/push는 항상 정상적으로 동작합니다. REAP 명령어는 추가적입니다 — 분산 워크플로우를 언제 사용할지 선택할 수 있습니다.
소스 merge 전에 genome 충돌을 먼저 해결합니다. 법률을 업데이트하기 전에 헌법을 수정하는 것과 같습니다.
모든 것이 로컬 + Git입니다. 외부 서비스도, 중앙 조율도 없습니다.
각 Generation이 해시 기반 ID(gen-046-a3f8c2)로 부모를 참조하여 방향성 비순환 그래프를 형성합니다. 자연스럽게 병렬 작업을 지원합니다.
사용 시나리오
서로 다른 개발자나 에이전트가 별도 머신에서 작업하고 원격 브랜치에 push합니다. /reap.push로 게시하고, /reap.pull <branch>로 fetch 및 merge합니다.
/reap.push → /reap.pull branch-b여러 AI 에이전트가 git worktree를 사용하여 동일 머신에서 병렬로 작업합니다. 각 worktree에 자체 브랜치와 Generation이 있습니다. /reap.merge.start로 직접 결합합니다 — fetch 불필요.
/reap.merge.start worktree-branch일부는 로컬(worktree), 일부는 원격(다른 머신). 원격 브랜치에는 /reap.pull, 로컬 브랜치에는 /reap.merge.start를 필요에 따라 결합합니다.
Pull & Push (원격)
/reap.pull <branch>는 /reap.evolve의 분산 버전입니다. 원격을 fetch하고, 새 Generation을 감지하고, Detect부터 Completion까지 전체 merge generation 라이프사이클을 실행합니다.
/reap.push는 현재 REAP 상태를 검증(진행 중인 Generation이 있으면 경고)하고 현재 브랜치를 원격에 push합니다.
Merge (로컬 / Worktree)
/reap.merge.start <branch>는 로컬 브랜치에서 직접 merge generation을 생성합니다 — fetch가 필요 없는 worktree 기반 병렬 개발에 이상적입니다. /reap.merge.evolve로 전체 merge 라이프사이클을 실행하거나, 각 단계를 수동으로 진행할 수 있습니다.
Git Ref 기반 읽기
merge 전에 대상 브랜치의 genome과 lineage를 git ref(git show, git ls-tree)로 읽습니다 — checkout 불필요. 원격과 로컬 브랜치 모두에서 동작합니다.
