SKILL.md
AutoDev Parallel — Codex /goal 병렬 오케스트레이터
사용자가 sub-agents 병렬 실행을 명시적으로 요청했을 때, 여러 Codex worker가 worktree 격리 환경에서 PRD 항목을 병렬 처리한다. 독립적인 항목들을 동시에 진행하여 완료 속도를 극대화. 장기 목표와 완료 조건은 Codex 내장 /goal에 두고, 이 스킬은 병렬 분류와 통합 전략만 담당한다.
핵심 개념
main (또는 현재 브랜치)
│
├── worktree A ── Agent 1: PRD 항목 1
├── worktree B ── Agent 2: PRD 항목 2
├── worktree C ── Agent 3: PRD 항목 3
│
└── Orchestrator (이 스킬)
- 독립 항목 분류 & 배정
- 결과 수집 & 검증
- cherry-pick으로 통합
- 다음 라운드 반복
Phase 0: 설정 수집
goal: "무엇을 달성할 것인가"
done_when: "완료 판단 기준"
prd: "PRD 또는 체크리스트 파일 경로" # 예: "PRD.md"
scope: ["수정 가능한 파일 패턴"]
verify: "검증 명령어"
parallel: 3 # 동시 에이전트 수 (기본 3)
rounds: 5 # 라운드 수 (기본 5)
max_iterations: 100 # 명시적 재개 최대 반복 (기본 100)
시작 시 Codex 세션에 다음 목표를 설정한다:
/goal {goal}; done_when={done_when}; parallel={parallel}; verify={verify}; docs=docs/harness/*
Phase 1: 항목 분류
PRD를 읽고 항목들의 의존성을 분석:
## 독립 항목 (병렬 가능)
- [ ] 항목 A: API 엔드포인트 — src/api/
- [ ] 항목 B: UI 컴포넌트 — src/components/
- [ ] 항목 C: 테스트 작성 — tests/
## 의존 항목 (순차 필요)
- [ ] 항목 D: A 완료 후 → 통합 테스트
Phase 2: 라운드 루프
for round in 1..rounds:
1. SELECT
- 미완료 항목 중 독립적인 것 최대 {parallel}개 선택
- 의존성이 있는 항목은 선행 항목 완료 후에만 선택
2. LAUNCH (병렬)
- {parallel}개의 Codex worker sub-agent를 동시에 호출
- 각 worker는 별도 worktree와 명확한 파일 소유권을 갖는다
- 각 Agent에게 전달하는 프롬프트:
"""
PRD 항목을 구현하라.
항목: {specific_item}
Scope: {scope}
Verify: {verify}
절차:
1. scope 내 파일을 읽고 항목을 구현
2. {verify} 실행으로 검증
3. 실패 시 build-fix 1회 시도
4. 성공 시 git commit -m "[autodev] {item_summary}"
5. 결과를 최종 메시지로 반환:
AUTODEV_RESULT: status={success|fail}, commit={hash}, item="{desc}"
"""
3. COLLECT
- 각 Agent 완료 대기
- 결과 파싱 (status, commit hash)
4. INTEGRATE
- 성공한 Agent의 변경사항을 cherry-pick
- cherry-pick 충돌 시:
- 충돌 해결 시도 (1회)
- 실패 시 해당 항목 다음 라운드로 연기
- PRD에서 완료된 항목을 [x]로 체크
5. VERIFY ALL
- 통합 후 전체 검증: {verify}
- 실패 시 마지막 통합 커밋을 분리하고 사용자에게 상태 보고
6. REPORT (라운드별)
라운드 {round}/{rounds} 완료:
- Agent 1: {status} — {item}
- Agent 2: {status} — {item}
- 남은 미완료 항목: {remaining}
7. CHECK COMPLETION
- 모든 항목 완료? → done_when 충족, docs/harness 갱신, `/goal clear`
- 아니면 → 다음 라운드
Phase 3: 완료 보고
# AutoDev Parallel 완료 보고서
## 요약
- 총 라운드: {rounds}
- 총 항목: {total} (완료: {done}, 실패: {failed})
- 병렬 에이전트: {parallel}
## 라운드별 결과
| 라운드 | 완료 항목 | 실패 | 누적 완료율 |
|--------|----------|------|-----------|
| 1 | A, B | - | 2/10 (20%) |
| 2 | C, D, E | F | 5/10 (50%) |
## 미완료 항목 (있으면)
- [ ] 항목 F: 이유
## 브랜치
autodev/{tag} — main 머지 준비 완료
병렬 수 가이드라인
| 상황 | 권장 parallel |
|---|---|
| 독립적 파일/모듈 | 5 (최대) |
| 같은 파일 내 변경 | 1-2 (충돌 위험) |
| 성능 벤치마크 포함 | 2-3 (리소스 공유) |
| 테스트만 판정 | 3-5 |
안전장치
- worktree 격리: Agent tool의
isolation: "worktree"사용 - cherry-pick만: force push 절대 금지
- 기존 테스트 보호: 통합 후 전체 검증 실패 시 실패 통합을 분리하고 상태 보고
- 의존성 존중: 의존 항목은 선행 항목 완료 후에만 처리
- 라운드 간 동기화: 이전 라운드 통합 완료 후 다음 라운드 시작
- max_iterations: 명시적 재개 루프의 안전 장치
Codex custom agent 활용 (선택)
# agent별 전문 영역 배정
architect: 아키텍처 변경, 모듈 분리
frontend_developer: 프론트엔드 컴포넌트
qa: 사용자 시나리오, 회귀 테스트
code_reviewer: 코드 삭제, 불필요한 추상화 제거
security_reviewer: 시크릿, 권한, 입력 검증
프롬프트에는 Codex custom agent 이름과 파일 소유권을 명확히 포함한다. 팀 역할 Markdown 문서는 설치하지 않는다. 병렬 작업 역할은 Codex-native .codex/agents/*.toml custom agent 설정을 따른다.