[공개용 마스킹본] 원문 중 회사명, 업무 분야, 고객·사례 자료명, 구체 서비스 항목, 개인 로컬 경로를 일반 표현으로 대체했다. Skill명과 코디네이션 구조는 원문 그대로 유지했다. $custom-coordinate-parallel-workers를 적용하여 이 메인 세션을 [비공개 업무 프로젝트]의 유일한 코디네이터로 전환해 주세요. 이번 전환은 새 병렬 작업을 바로 시작하는 일이 아닙니다. 여러 기존 세션이 이미 같은 작업공간에서 조사·문서화·파일 수정을 수행했고 세션 간 작업물 충돌도 있었으므로, 먼저 현재 파일 상태와 기존 세션의 작업을 재구성하고 충돌을 해소한 뒤 워커 assignment를 발행해야 합니다. 최종 사용자 결과: [고객 담당자]가 현장에서 빠르게 이해할 수 있도록, 현재 [기준 자료]의 필수 서비스·지원 항목을 빠짐없이 반영한 고객용 산출물 초안을 제작한다. 사용자는 최종 지시자·승인자이고 해당 산출물 제작은 처음이므로, 코디네이터가 전문적인 권장안과 다음 행동을 먼저 제시한다. ## 절대 원칙 - 이 메인 세션이 목표, 의존성, 작업 분해, 공통 계약, 파일 소유권, 통합 순서, Git 인덱스, 커밋, 최종 검증을 독점 소유합니다. - 기존 세션을 곧바로 워커로 간주하거나 과거 지시를 그대로 재개시키지 않습니다. - 기존 세션의 대화상 완료 주장보다 현재 파일·diff·원본 자료·검증 결과를 우선합니다. - 기존 변경사항은 소유권과 유효성이 확인될 때까지 모두 보존합니다. 정리, 삭제, 되돌리기, 덮어쓰기, stash, reset을 하지 않습니다. - 새 Branch나 Worktree를 만들거나 전환하지 않습니다. - 워커는 stage, commit, deploy, 외부 상태 변경을 하지 않습니다. - 동일 파일은 원칙적으로 한 워커만 소유합니다. 같은 파일을 여러 세션이 이미 수정했다면 먼저 충돌을 재구성하고, 최종 통합 또는 후속 작성자는 한 명만 지정합니다. - AGENTS.md, 프로젝트 목표·현재 결정 기준, 공통 용어, 최종 산출물 구조, 발행 사양, Git 작업은 코디네이터가 소유합니다. - 이 전환 과정에서 합의된 제공 범위·조건을 축소·유료화·재분류하지 않습니다. ## 1단계: 현재 상태 동결과 재구성 새로운 작업 배정이나 파일 수정을 시작하기 전에 다음을 수행하세요. 1. 현재 프로젝트 `AGENTS.md`와 연결된 기준 문서를 다시 읽습니다. 2. 저장소 여부, 현재 Branch, 전체 파일 목록, 수정·추가·삭제 파일, staged diff, unstaged diff, 실행 중인 검사·서버·외부 변경 경계를 확인합니다. 3. staged 항목이 있다면 작성자를 추정하여 건드리지 말고 별도로 보고합니다. 4. 관련된 기존 독립 세션을 모두 조회하되, 우선 최신 요약과 최종 메시지만 읽습니다. 5. 각 세션에 대해 다음을 기록합니다. - 세션 ID와 제목 - 사용자가 해당 세션에서 지시한 최종 결과 - 조사·작성·수정했다고 주장한 항목 - 실제로 변경된 파일 또는 생성된 산출물 - 다른 세션과 겹치는 파일·내용·결정 - stage·commit·외부 변경 여부 - 현재 실행 중인지, 종료됐는지, 사용자 후속 지시가 있었는지 6. 채팅상의 주장과 실제 파일 상태가 다르면 실제 파일 상태를 우선하되, 사용자 의도는 별도로 보존합니다. 7. 기존 세션 결과를 다음 중 하나로 분류합니다. - `INTEGRATED`: 현재 기준 문서와 파일에 이미 검증되어 반영됨 - `REFERENCE_ONLY`: 참고할 조사·판단이지만 직접 채택되지 않음 - `SUPERSEDED`: 이후 사용자 결정이나 최신 자료로 대체됨 - `NEEDS_VERIFICATION`: 유용할 수 있으나 원본·현재 파일과 대조 필요 - `CONFLICTING`: 다른 세션이나 현재 기준과 충돌하여 통합 결정 필요 8. 세션 대화를 장황하게 재생하지 말고, 충돌이나 공백을 해결하는 데 필요한 최소 범위만 추가로 읽습니다. ## 2단계: 충돌 대장 작성과 통합 판단 기존 작업물의 충돌을 다음 단위로 구분하세요. - 동일 파일 충돌 - 같은 문서의 인접하거나 중복된 영역 - 약속된 내용·횟수·조건 충돌 - [비공개 조직]의 사실·수치·실적 충돌 - 자료별 권한 순서 충돌 - 산출물 구조·표현 방향 충돌 - 이미지 사용 권한·실사진/AI 구분 충돌 - 현재 상태와 과거 세션 완료 주장 간 충돌 - 사용자 직접 지시의 시점별 충돌 각 충돌마다 다음을 결정하세요. - 현재 실제 상태 - 관련 세션과 파일 - 우선해야 할 원본 자료 또는 최신 사용자 지시 - 보존할 내용 - 폐기하지 않고 보류할 내용 - 최종 작성자 - 코디네이터가 직접 통합해야 하는지 - 사용자 결정이 실제로 필요한지 - 잘못 선택했을 때 최종 산출물에 미치는 영향 사용자 결정을 요청하기 전에 원본 자료와 현재 파일로 해결할 수 있는 충돌은 코디네이터가 권장안을 제시하고 해결하세요. 결과를 바꾸는 사업적 선택만 사용자에게 요청하세요. ## 3단계: coordination run 초기화 상태 재구성과 충돌 분류를 마친 뒤에만 coordination run을 초기화하세요. - 이 메인 세션 ID를 `coordinator_target`으로 사용합니다. - coordination 상태와 보고서는 저장소 밖 coordination state root에 둡니다. - 현재 단계, 활성 slice, 다음 행동, 기준 문서를 checkpoint에 기록합니다. - 현재 dirty tree를 기존 공유 상태로 취급하고 인위적인 clean baseline을 만들지 않습니다. - 새 세션을 임의로 만들지 말고 기존 관련 세션을 우선 채택합니다. - 기존 세션이 더 이상 적합하지 않거나 독립 작업이 부족한 경우에만 새 워커 필요성과 정확한 소유 경로를 사용자에게 보고합니다. ## 4단계: 기존 세션을 워커로 재채택 기존 세션은 다음 조건을 충족한 경우에만 활성 워커로 전환하세요. 1. 현재 수행할 독립적인 결과가 남아 있습니다. 2. 정확한 쓰기 경로를 다른 워커와 겹치지 않게 지정할 수 있습니다. 3. 기존에 만든 변경사항과 새 assignment의 관계를 설명할 수 있습니다. 4. 보호할 공통 계약과 금지 효과를 명시할 수 있습니다. 5. 해당 세션에 현재 assignment와 스킬 사용 지시를 실제로 전달할 수 있습니다. 각 채택 워커에게 다음 내용을 전달하세요. - 이 스킬 경로: `$CODEX_HOME/skills/custom-coordinate-parallel-workers/SKILL.md` - workspace - run ID - task ID - task-local 사용자 결과 - 정확한 writable paths - read-only dependencies - 다른 task 의존성 - task 안에서 변경 가능한 결정 - 변경할 수 없는 공통 계약 - stage·commit·deploy·외부 상태 변경 금지 - assignment와 활성 AGENTS.md를 먼저 읽을 것 - 첫 mutation 전에 `check-mutation`을 실행할 것 - 기존에 자신이 만든 변경도 자동 소유로 간주하지 말 것 - 정확히 배정된 경로만 수정할 것 - scoped check만 실행할 것 - 완료 후 terminal report를 발행하고 report-ready pointer를 정확히 한 번만 보낼 것 - 보고 발행 후 추가 저장소 수정을 중단할 것 기존 세션에 이미 사용자가 직접 내린 지시는 다음과 같이 처리하세요. - 현재 assignment 안의 task-local 지시이면 결과와 보고서에 반영 - 파일 소유권, 공통 계약, 다른 task 우선순위, 외부 효과를 바꾸는 지시이면 자동 실행하지 말고 `BLOCKED` 또는 새 assignment로 재조정 - terminal report 이후의 변경 지시이면 기존 보고서를 몰래 수정하지 말고 immutable change request로 기록 ## 5단계: 기존 충돌 작업 처리 기존 세션들이 동일 파일을 수정했거나 의미가 겹치는 경우 다음 원칙을 적용하세요. - 어느 세션에도 해당 파일의 새 병렬 쓰기 권한을 즉시 주지 않습니다. - 실제 diff를 기준으로 각 변경의 출처와 유효성을 재구성합니다. - 서로 독립적인 hunk가 아니거나 formatter·문서 전체 구조에 영향을 주면 코디네이터가 직렬 통합합니다. - 한 변경이 최신 사용자 지시나 원본 자료에 의해 대체됐다면 `SUPERSEDED`로 분류하되, 확인 없이 파일에서 제거하지 않습니다. - 현재 파일에 여러 세션의 유효한 내용이 섞여 있다면 코디네이터가 기준 문서와 원본을 대조해 하나의 후보로 통합합니다. - 통합 후보가 안정되기 전에는 동일 파일을 워커에게 다시 배정하지 않습니다. - 공통 문서의 작성 책임은 한 명에게만 부여하고, 다른 워커는 read-only 의존성으로 참조하게 합니다. ## 권장 작업 분해 아래 분해는 기본안일 뿐입니다. 실제 기존 diff와 세션 소유권을 확인한 뒤 겹치지 않을 때만 채택하세요. ### 콘텐츠 워커 - 결과: [기준 자료]를 기준으로 필수 내용, 제공 조건, 고객 혜택, 원본 근거와 반영 상태 정리 - 권장 단독 소유: `[콘텐츠 기준 문서]` - 보호 계약: 합의된 범위·조건을 축소·유료화·재분류하지 않음 ### 자료·조직정보 워커 - 결과: [최신 참고자료]·[일반 조직자료]·[사례자료 A]·[사례자료 B]의 사실, 출처, 최신성, 활용 가능 정보, 사용 금지 정보를 검증 - 권장 단독 소유: `[출처 기준 문서]` - 보호 계약: 최신 자료를 조직정보 기준으로 사용하되 변동 수치는 발행 전 재검증하고 사례별 조건을 범용 산출물에 혼입하지 않음 ### 이미지·자산 워커 - 결과: 기존 원본 자료의 재사용 가능 자산과 부족 이미지를 분류하고 사용 권한·식별정보·화질·실사진/AI 상태 정리 - 권장 단독 소유: `[자산 기준 문서]` - 보호 계약: AI 이미지를 실제 [비공개 조직]의 현장·고객·성과·작업 전후 기록으로 표현하지 않음 ## 코디네이터 전용 항목 - `AGENTS.md` - 프로젝트 목표와 현재 의사결정 기준 - 기존 세션 충돌 대장과 채택 결정 - 공통 용어와 핵심 메시지 - 최종 산출물 구조와 흐름 - 발행 사양 - 워커 보고서 검토·통합 - Git stage·commit - 최종 렌더링과 발행 전 검증 - 외부 상태 변경 ## 워커 보고 수신과 통합 - 워커의 진행 메시지는 받지 않습니다. - terminal report의 report-ready pointer만 한 번 받습니다. - pointer가 도착해도 현재 atomic slice와 checkpoint를 먼저 마칩니다. - 보고서를 열기 전에 assignment, terminal 상태, worker mutation 중단 여부를 확인합니다. - 실제 diff와 보고된 경로를 대조합니다. - 보고서의 `사용자 직접 지시`와 post-terminal change request를 반드시 확인합니다. - 워커 scoped check를 전체 통합 검증으로 간주하지 않습니다. - release 후보가 안정될 때 integration freeze를 적용하고 전체 검증은 한 번 수행합니다. - 정확한 경로 또는 hunk만 stage하며 broad add를 사용하지 않습니다. - 보고서 하나가 끝났다는 이유만으로 자동 커밋하지 않습니다. - 커밋이 필요하면 같은 독립적 결과에 속하는 변경을 통합·검증한 뒤 프로젝트 규칙에 맞는 커밋으로 기록합니다. ## 초기 전환 완료 보고 형식 초기 재구성·충돌 분류·run 초기화·assignment 발행이 끝난 뒤 사용자에게 다음을 보고하세요. - run ID - 확인한 기존 관련 세션 - 각 세션의 분류 - 실제 발견된 파일·내용 충돌 - 충돌별 권장 통합 결정 - 활성 워커로 채택한 세션과 task ID - 각 워커의 결과와 단독 writable paths - 직렬화하거나 보류한 작업 - 코디네이터가 직접 통합할 파일 - 메인 세션이 바로 진행할 첫 atomic slice - 사용자 결정이 반드시 필요한 실제 쟁점 - staged·running process·외부 효과 등 남은 위험 이 단계는 코디네이션 체제 전환 완료일 뿐 최종 산출물 제작 완료가 아닙니다. 기존 세션의 채팅상 완료 주장만으로 작업을 완료·통합·검증됐다고 표현하지 마세요.