Method Note · Multi-agent
오케스트레이터-워커 패턴의 실행 요건
한 세션이 과제를 하위 작업으로 분해하고 별도 세션에 배정한 뒤 결과를 취합하는 구성이다. 패턴의 원리는 실행 환경과 무관하나 구성 방법은 다르므로, 클로드 코드와 클로드 데스크탑을 각 절에서 병기한다. 생명의학 연구 작업을 예로 든다.
대상 · 다중 에이전트 실행이 처음인 연구자
환경 · Claude Code · Claude Desktop
기준 · 2026-08
01 패턴의 정의와 적용 조건
오케스트레이터-워커는 중앙의 한 세션이 과제를 하위 작업으로 분해하고, 각 하위 작업을 별도 세션에 배정한 다음, 반환된 결과를 하나로 취합하는 구성이다. Anthropic의 에이전트 설계 문서는 이를 중앙 모델이 작업을 동적으로 분해하고 워커 모델에 위임한 뒤 결과를 종합하는 방식으로 규정하고 있다.
단순 병렬 처리와 형태는 유사하나 결정적 차이가 하나 있으므로, 두 구성을 구분해서 선택해야 한다. 병렬 처리에서는 하위 작업이 사전에 정의되는 반면, 오케스트레이터-워커에서는 하위 작업의 수와 성격이 입력에 따라 실행 시점에 결정된다.
적용 조건
착수 시점에 하위 작업의 수와 성격을 예측할 수 없을 때 적용한다. 처리 대상이 몇 건인지, 각각에 어떤 처리가 필요한지가 입력을 확인해야 정해지는 경우가 여기에 해당한다. 대상 목록과 처리 방식이 미리 확정되어 있다면 병렬 처리로 충분하며, 오케스트레이터를 두면 비용만 증가한다.
적용하지 않아야 하는 경우도 명확하다. 작업 단계가 순차 의존 관계에 있어 앞 단계의 출력이 뒤 단계의 입력이 되는 구조라면 분해의 이득이 없으므로 단일 세션에서 처리한다. 작업량이 작을 때에도 마찬가지이며, 분해와 취합에 드는 비용이 실행 비용을 초과한다.
이 절의 내용은 실행 환경과 무관하게 성립한다. 환경에 따라 달라지는 것은 워커를 정의하고 배정하는 방법이므로, 다음 절에서 대조한다.
02 두 환경의 구성 차이
이 노트에서 코드는 터미널에서 실행되는 클로드 코드를, 데스크탑은 데스크탑 앱의 작업 세션을 가리킨다. 차이는 네 지점에 집중되어 있다.
| 항목 | 클로드 코드 | 클로드 데스크탑 |
| 워커 정의 |
정의 파일로 사전 등록한다. .claude/agents/*.md(프로젝트) 또는 ~/.claude/agents/*.md(사용자) |
사전 등록 수단이 없으므로 배정 지시문에 역할을 직접 기술하거나, 역할 파일을 읽도록 지시한다 |
| 도구 제한 |
정의 파일의 tools 또는 disallowedTools로 워커별 도구를 한정한다 |
워커별 도구 한정 수단이 없으므로 쓰기 범위를 지시문으로만 제한한다 |
| 파일 위치 |
워커가 오케스트레이터와 동일한 파일시스템에서 실행되므로 경로 변환이 필요 없다 |
워커 실행 환경과 사용자 파일 위치가 분리되어 있으므로 경로 변환이 필요하다 |
| 쓰기 충돌 차단 |
정의 파일에 isolation: worktree를 지정하면 워커가 독립된 git worktree에서 실행된다 |
격리 수단이 없으므로 디렉토리 분할을 지시문으로 강제한다 |
| 모델 지정 |
정의 파일의 model로 워커마다 지정한다 |
워커별 지정 수단이 없다 |
| 권한 승인 |
설정 파일의 규칙이 워커의 동작에도 적용되며, 워커 자신의 권한 설정은 반영되지 않는다 |
사용자 승인이 오케스트레이터 세션에서 처리된다 |
| 상속되는 맥락 |
CLAUDE.md, MCP 서버 설정, 스킬, git 상태가 워커에 전달된다 |
세션에서 사용 가능한 도구와 스킬이 전달되나, 원격 도구는 워커가 먼저 확보해야 한다 |
| 중첩 깊이 |
최대 3단계까지 허용되며 환경변수로 조정한다 |
문서화된 값이 확인되지 않는다 |
차이를 한 문장으로
클로드 코드에서는 워커의 제약을 정의 파일로 강제하고, 데스크탑에서는 지시문으로 요청한다. 전자는 위반이 차단되는 반면 후자는 위반이 사후에 발견되므로, 데스크탑에서는 쓰기 범위 분할과 산출물 위치 지정을 지시문에서 더 명시적으로 기술해야 한다.
두 환경에서 동일한 것
다음 항목은 환경과 무관하게 성립하므로, 이 노트의 나머지 절 대부분이 양쪽에 그대로 적용된다.
- 워커는 오케스트레이터의 대화 이력을 승계하지 않는다
- 워커의 중간 작업 내역은 오케스트레이터에 전달되지 않고 최종 결과만 요약 형태로 반환된다
- 워커는 오케스트레이터 세션에 종속되므로 세션이 종료되면 복구되지 않는다
- 같은 세션 안에서는 종료된 워커를 이어서 호출하여 대화 맥락을 유지한다
두 번째 항목이 파일 기록을 필수로 만든다. 중간 산출물이 오케스트레이터에 도달하지 않으므로, 워커가 파일로 남기지 않은 내용은 취합 시점에 존재하지 않는 것과 같다.
03 구조적 전제 세 가지
이 구성은 다음 세 조건이 충족될 때에만 의도대로 작동하므로, 실행 전에 각각을 확인해야 한다.
컨텍스트 격리
워커 세션은 오케스트레이터 세션의 대화 이력을 승계하지 않는다. 배정 시점에 지시문으로 전달한 문장과 워커가 직접 읽은 파일만이 워커에 존재하는 정보이며, 오케스트레이터가 앞서 확인한 사실이라도 명시하지 않으면 전달되지 않는다.
이 격리는 결함이 아니라 이 구성을 쓰는 이유이다. 각 워커의 컨텍스트가 자기 작업 단위로만 채워지므로, 단일 세션에서 전체를 처리할 때보다 각 하위 작업에 배정되는 컨텍스트가 넓어진다. 다만 전달 누락이 곧 정보 부재로 이어지므로, 과제 정의서의 완결성이 결과 품질을 직접 좌우한다.
환경별 차이 · 상속되는 맥락
코드 대화 이력은 상속되지 않으나 CLAUDE.md와 MCP 서버 설정, 스킬, git 상태는 워커에 전달되므로, 프로젝트 규약을 CLAUDE.md에 두면 과제 정의서를 그만큼 줄이게 된다.
데스크탑 세션에서 사용 가능한 스킬은 전달되나, 사용자 파일에 접근하는 원격 도구는 워커가 작업 시작 전에 직접 확보해야 하므로 이 절차를 지시문 첫 항목에 둔다.
파일이 유일한 전달 매개
워커가 반환하는 서술 요약은 오케스트레이터의 컨텍스트에 남으나 세션이 종료되면 소실되며, 워커가 수행한 중간 작업은 애초에 반환되지 않는다. 결과를 보존하려면 워커가 파일로 기록해야 하고, 기록 위치는 배정 시점에 지정한다.
환경별 차이 · 경로
코드 워커가 오케스트레이터와 같은 작업 디렉토리에서 실행되므로 상대 경로를 그대로 쓴다. 다만 isolation: worktree를 지정한 경우에는 워커의 변경이 별도 worktree에 기록되므로, 산출물을 공용 디렉토리에 남기려면 그 점을 고려하여 경로를 지정한다.
데스크탑 워커의 실행 환경과 사용자 파일 위치가 분리되어 있으므로 같은 파일이 두 개의 경로로 지칭된다. 지시문에 두 경로를 모두 제시하고 변환 규칙을 명시해야 하며, 워커가 자신의 실행 환경에 파일을 기록하면 그 파일은 사용자에게 도달하지 않는다.
쓰기 범위 분할
워커가 병렬로 실행되므로 두 워커가 같은 파일에 기록하면 결과가 소실된다. 각 워커에 겹치지 않는 디렉토리를 배정하고, 배정 범위 밖은 읽기만 허용한다.
조사 영역의 중복은 이와 구분해야 한다. 두 워커가 같은 대상을 조사하도록 배정하는 것은 결함이 아니며, 두 관측이 어긋날 경우 그 불일치 자체가 확인 대상이 된다. 분리해야 하는 것은 파일 쓰기 범위이지 조사 범위가 아니다.
환경별 차이 · 분할을 강제하는 방법
코드 정의 파일의 tools에서 쓰기 도구를 제외하면 조사 전용 워커가 파일을 수정하는 경로 자체가 차단되고, isolation: worktree를 지정하면 편집 워커 사이의 충돌이 차단된다.
데스크탑 도구 수준의 제한 수단이 없으므로 분할이 지시문 준수에 의존한다. 배정 범위를 한 줄로 명시하고, 취합 시점에 각 워커의 산출물이 배정된 디렉토리에만 생성되었는지 확인한다.
04 실행 절차
절차 자체는 양쪽에서 동일하며, 5단계의 실행 방법만 달라진다.
| 단계 | 수행 내용 | 산출 |
| 1 | 적용 여부를 판정한다. 하위 작업이 사전에 확정되면 병렬 처리로, 순차 의존이 강하면 단일 세션으로 전환한다 | 판정 근거 1행 |
| 2 | 작업 디렉토리를 확정하고 실행 단위 디렉토리를 생성한다 | <날짜>-<주제>/ |
| 3 | 과제 정의서를 작성하고 사용자 승인을 받는다 | BRIEF.md |
| 4 | 작업을 분해하고 배정표를 작성하여 다시 승인을 받는다 | 배정표 |
| 5 | 워커를 전원 병렬로 실행하고 반환된 식별자를 기록한다 | work/NN/ |
| 6 | 산출물을 취합하고 각 항목의 출처를 표시한다 | SUMMARY.md |
| 7 | 결과가 파일에 기록되었는지 확인하고 종료한다 | 실행 기록 1행 |
승인 지점을 두 곳(3단계와 4단계)에 두는 이유는 되돌림 비용의 분포이다. 워커가 실행된 이후에 과제 정의나 배정을 수정하면 이미 소비한 실행 비용이 회수되지 않으므로, 실행 전에 확인 절차를 배치한다.
실행 단위 디렉토리 구조
디렉토리의 논리 구조는 두 환경에서 동일하다. 달라지는 것은 어디에 두는가와 워커에게 어떻게 지시하는가이다.
# 논리 구조 — 양쪽 공통
<프로젝트>/_runs/<YYYYMMDD>-<주제>/
BRIEF.md # 과제 정의서
SUMMARY.md # 취합 결과
work/01-<작업명>/OUTPUT.md # 워커 01 산출물
work/02-<작업명>/OUTPUT.md
work/03-<작업명>/OUTPUT.md
INDEX.md # 실행 이력 누적
디렉토리를 대상 프로젝트 안에 두면 실행 기록이 분석 대상과 함께 보존되므로, 몇 개월 뒤에 결과의 근거를 다시 확인할 때 두 자료를 함께 열람하게 된다.
배치와 경로 표기
| 항목 | 클로드 코드 | 클로드 데스크탑 |
| 위치 |
오케스트레이터의 작업 디렉토리 안에 둔다. 별도 제약이 없다 |
연결된 폴더 안에 두어야 한다. 그 밖에 만든 파일은 사용자에게 도달하지 않는다 |
| 경로 표기 |
상대 경로를 그대로 쓴다
_runs/20260831-대조/work/01/ |
두 경로를 병기한다. 사용자 기준 절대 경로와 워커 실행 환경 기준 경로가 다르다 |
| 정의 파일 |
.claude/agents/에 별도로 둔다. 실행 단위 디렉토리와 분리된다 |
역할 파일을 쓰는 경우 연결된 폴더 안 임의 위치에 둔다 |
| 버전 관리 |
프로젝트가 저장소이면 _runs/의 추적 여부를 먼저 정한다. 워커에 전달되는 git 상태에 실행 기록이 포함된다 |
버전 관리와 무관하게 파일로만 남는다 |
| 재실행 시 정리 |
이전 실행 디렉토리를 삭제하거나 이동한다 |
워커의 파일 삭제가 기본적으로 허용되지 않으므로 날짜로 디렉토리를 분리하고 덮어쓰지 않는다 |
코드 · 격리 설정과 산출물 위치
코드 워커에 isolation: worktree를 지정하면 그 워커의 기록이 독립된 worktree에 남으므로 주 작업 트리의 _runs/에 나타나지 않는다. 취합 단계에서 산출물을 찾지 못하는 원인이 대개 이것이다.
조사 결과를 한곳에 모으는 작업에서는 격리를 지정하지 않는 편이 낫고, 편집 충돌 때문에 격리가 필요하다면 산출물을 어디에서 회수할지 배정 시점에 정해 둔다.
환경별 차이 · 2단계와 5단계
코드 2단계에서 정의 파일을 함께 준비한다. 정의 파일을 .claude/agents/에 두면 버전 관리 대상이 되므로 이후 실행에서 동일한 워커 구성이 재현된다. 5단계에서는 사전 등록한 워커를 이름으로 호출한다.
데스크탑 정의 파일 등록 단계가 없으므로 5단계에서 지시문에 역할 전체를 담는다. 역할 기술이 반복된다면 역할 정의를 별도 파일로 두고 워커가 읽도록 지시하는 방법으로 지시문 길이를 줄인다.
05 과제 정의서에 포함할 항목
워커가 대화 이력을 승계하지 않으므로, 정의서는 그 자체로 완결되어야 한다. 다음 다섯 항목을 포함한다.
| 항목 | 기재 내용 |
| 목표 | 무엇이 확인되면 과제가 종료되는지를 한 문단으로 기술한다 |
| 배경 | 필요한 맥락을 기재하되 확인된 사실과 미확인 전제를 구분하여 적는다 |
| 제약 | 수정을 금지하는 파일, 준수해야 하는 절차, 실행을 허용하지 않는 명령을 명시한다 |
| 완료 조건 | 산출물이 갖추어야 할 형식과 내용을 항목별로 기재한다 |
| 배정표 | 워커 번호, 작업 단위, 쓰기 범위를 표로 정리한다 |
배경을 두 갈래로 나누는 이유는 전제의 전파 때문이다. 정의서에 기재한 내용은 워커에게 검증된 사실로 수용되므로, 오케스트레이터가 확인하지 않은 추정을 사실과 섞어 적으면 모든 워커가 동일한 오류를 공유한 상태에서 작업을 시작하게 된다.
환경별 차이 · 정의서의 분량
코드 프로젝트 공통 규약(코딩 규칙, 디렉토리 구조, 금지 명령)은 CLAUDE.md가 워커에 전달하므로 정의서에서 생략한다. 정의서에는 이번 과제에만 해당하는 내용을 남긴다.
데스크탑 이에 해당하는 자동 전달 경로가 없으므로 공통 규약도 정의서에 포함하거나, 규약 파일을 지정하여 워커가 읽도록 지시한다.
배정 대조
정의서에 등장하는 모든 관심 항목을 나열하고 각각이 어느 워커에 배정되었는지 표로 대조한다. 배정되지 않은 항목은 범위 밖으로 명시하며, 명시하지 않고 누락하면 해당 항목이 처리되지 않았다는 사실 자체가 기록에 남지 않는다.
06 워커 정의와 배정 지시문
이 절이 두 환경에서 가장 크게 갈리는 부분이다. 전달해야 하는 정보는 같으나 전달 경로가 다르다.
클로드 코드 — 정의 파일과 호출
워커의 역할과 제약을 마크다운 파일로 등록하며, 프론트매터에 적용 조건을 기재한다. 프로젝트 스코프인 .claude/agents/가 사용자 스코프인 ~/.claude/agents/보다 우선한다.
# .claude/agents/extractor.md
---
name: extractor
description: 지정된 문서에서 정의된 항목만 추출하여 표로 기록한다
tools: Read, Grep, Glob, Write # 허용 도구를 한정한다
model: sonnet
---
# 이하 본문에 역할 규약을 기술한다
- 배정된 작업 단위 하나만 수행한다
- 산출물은 지정된 디렉토리에만 기록한다
- 확인하지 못한 항목은 미확인으로 표시한다
도구 지정에는 두 방식이 있으므로 목적에 따라 선택한다. tools는 허용 목록을 지정하고 disallowedTools는 금지 목록을 지정하며, 두 필드를 함께 쓰면 금지 목록이 우선 적용된다. 조사 전용 워커에서 쓰기 도구를 제외하면 파일 수정 경로 자체가 차단되므로 지시문 준수에 의존하지 않게 된다.
편집 작업을 병렬로 배정할 경우에는 isolation: worktree를 지정하여 각 워커를 독립된 git worktree에서 실행한다. 변경이 없는 임시 worktree는 자동으로 정리된다.
클로드 데스크탑 — 지시문에 역할을 담는다
사전 등록 수단이 없으므로 다음 요소를 지시문에 순서대로 담으며, 순서를 유지하는 편이 누락을 줄인다.
[1] 역할과 식별자
[2] 실행 환경 준비 # 원격 파일 접근 도구를 먼저 확보하게 한다
[3] 작업 디렉토리 경로 # 사용자 기준 경로와 실행 환경 기준 경로를 모두 제시한다
BRIEF.md 를 먼저 읽도록 지시한다
[4] 작업 단위 # 하나만 배정한다
[5] 쓰기 허용 범위 # work/NN/ 안으로 한정한다
[6] 참조할 절차나 방법론 <명칭 | 없음>
[7] 산출물 형식과 기록 위치
실행 환경 내부에 기록하지 않도록 명시한다
항목 2와 7이 데스크탑에서 추가되는 부분이다. 원격 도구를 확보하지 않은 상태로 파일 접근을 시도하면 작업이 실패하고, 실행 환경 내부에 기록한 파일은 사용자에게 도달하지 않는다.
양쪽에 공통되는 원칙
작업 단위를 하나만 배정하는 것이 중요하다. 두 개 이상을 배정하면 워커가 둘 사이의 우선순위를 자체적으로 결정하며, 그 결정 근거는 산출물에 남지 않는다.
배정 시 확인할 사항
존재하지 않는 절차나 도구의 명칭을 지시문에 기재하면, 워커가 해당 항목의 확보에 실패한 상태로 작업을 계속 진행하는 경우가 발생한다. 명칭을 기재하기 전에 실행 환경에 실제로 존재하는지 확인하고, 배정할 항목이 없으면 없음이라고 명시한다.
권한 처리
코드 설정 파일의 권한 규칙이 워커의 동작에도 동일하게 적용되며, 워커 정의 파일에 기재한 권한 설정은 반영되지 않는다. 따라서 워커가 실행할 명령의 승인 범위는 오케스트레이터 세션 기준으로 정한다.
데스크탑 승인 요청이 오케스트레이터 세션에서 처리되므로, 승인 대기가 발생하면 해당 워커의 진행이 지연된다. 승인이 필요한 동작을 여러 워커에 분산 배정하면 대기가 누적되므로 한 워커로 모으는 편이 낫다.
07 취합 단계의 오류원
분해와 취합을 같은 세션이 담당하므로, 취합물은 워커 산출물과 달리 별도의 대조 절차를 거치지 않는다. 이 구조가 취합 단계를 이 구성의 최대 오류원으로 만들며, 이 점은 두 환경에서 동일하다.
실무적으로 다음 두 가지를 권장한다.
- 취합표의 각 행에 출처를 표시한다. 어느 워커의 어느 절에서 옮겨 온 항목인지를 기재하면, 판정이 옮겨지는 과정에서 변형되었는지를 사후에 확인하게 된다.
- 집계는 파일에서 기계적으로 수행한다. 항목 수를 서술 요약에서 읽어 옮기지 않고 파일을 직접 세면, 요약 과정에서 발생하는 누락이 차단된다.
워커의 서술 요약을 그대로 취합물에 옮기는 것도 오류원이다. 워커가 특정 작업을 수행하지 못하였다고 보고한 경우, 그 사유를 확인하지 않고 기록하면 미확인 진술이 확정된 사실로 전환된다. 파일 부재 진술은 목록 조회로, 시각 진술은 수정 시각 확인으로 각각 대조한다.
08 비용과 한계
| 항목 | 내용 |
| 토큰 소비 | 워커마다 과제 정의서와 참조 자료를 독립적으로 읽으므로 소비량이 워커 수에 비례하여 증가한다. 워커 수는 독립적으로 존재하는 작업 축의 수와 일치시키고, 그 이상으로 늘리지 않는다 |
| 세션 종속성 | 워커는 오케스트레이터 세션에 종속되어 실행되므로 세션이 종료되면 복구되지 않는다. 종료 전에 결론이 파일에 기록되었는지 확인해야 한다 |
| 실행 시간 | 병렬 실행이므로 가장 오래 걸리는 워커의 실행 시간이 곧 전체 소요 시간이 되며, 작업 단위 사이의 분량 편차가 크면 이득이 감소한다 |
| 재현성 | 동일한 정의서로 재실행하여도 산출물이 동일하지 않다. 결론의 근거를 파일에 남겨야 사후 검토가 성립한다 |
워커 수를 정하는 기준을 다시 정리하면, 수를 먼저 정하고 역할을 배정하는 순서가 아니라 독립적인 작업 축을 먼저 식별하고 그 수만큼 워커를 배정하는 순서이다. 축이 명확한 셋이 축이 불분명한 다섯보다 취합하기 쉽다.
환경별 차이 · 비용 조절 수단
코드 정의 파일에서 워커마다 모델을 지정하고 최대 턴 수를 제한하므로, 단순 추출 작업에 경량 모델을 배정하여 비용을 낮추게 된다. 중첩 깊이는 최대 3단계까지 허용되며 환경변수로 조정한다.
데스크탑 워커별 모델 지정과 턴 수 제한 수단이 없으므로, 비용은 워커 수와 각 워커에 전달하는 자료의 분량으로만 조절한다.
09 생명의학 작업 적용 예
다음 세 사례는 하위 작업의 수가 입력을 확인해야 정해지는 경우이므로 이 구성에 해당하며, 두 환경에서 모두 성립한다.
다기관 데이터셋의 변수 정의 대조
기관별 코드북의 수와 각 코드북에서 확인해야 할 변수의 범위가 파일을 열어 봐야 정해진다. 기관 하나를 워커 하나에 배정하고, 각 워커가 자기 코드북에서 대상 변수의 정의와 단위, 결측 코드를 추출하여 기록한다. 취합 단계에서 정의가 상충하는 변수 목록을 작성하면, 통합 분석 전에 조정이 필요한 항목이 특정된다.
이 작업은 원본을 수정하지 않는 조사 작업이므로, 클로드 코드에서는 워커의 허용 도구에서 편집 도구를 제외하여 원본 훼손 경로를 차단하게 된다.
파이프라인 산출물과 방법 기재 내용의 대조
분석 스크립트가 실제로 수행하는 처리와 원고의 방법 절에 기재된 절차가 일치하는지를 확인하는 작업이다. 스크립트 측과 원고 측을 각각 별도 워커에 배정하고, 두 산출물을 취합하여 불일치 항목을 정리한다. 두 워커가 서로의 자료를 읽지 않은 상태에서 각각 추출하므로, 한쪽 서술이 다른 쪽 해석을 유도하는 상황이 발생하지 않는다.
이 배정이 유효한 이유
단일 세션에서 스크립트와 원고를 함께 읽으면 먼저 읽은 자료가 뒤에 읽는 자료의 해석 틀을 형성한다. 두 자료를 분리된 컨텍스트에서 각각 추출한 뒤 대조하면 이 영향이 차단되므로, 대조 작업에서는 분해 자체가 방법론적 이득을 낳는다.
문헌 집합의 항목별 추출
선별을 통과한 논문의 수가 검색 결과를 확인해야 정해지고, 논문마다 추출 가능한 항목의 범위가 다르다. 논문을 분량에 따라 묶어 워커에 배정하고, 각 워커가 정의서에 지정된 항목만 추출하여 동일한 표 형식으로 기록한다. 추출 항목과 표 형식을 정의서에서 고정하지 않으면 취합 단계에서 열 구성이 워커마다 달라지므로, 형식 지정이 특히 중요하다.
적용하지 않는 경우
단일 데이터셋에 대한 통계 분석은 전처리, 모델 적합, 진단, 보고가 순차 의존 관계에 있으므로 이 구성의 대상이 아니다. 반면 동일한 데이터에 서로 다른 모델링 전략을 적용하여 비교하는 작업은 전략마다 독립된 축이 성립하므로 대상이 된다.
10 점검 목록
점검 시점이 둘로 나뉘므로 항목도 나누어 배치한다. 앞의 항목들은 워커를 실행하기 전에 확인하며, 이 시점을 넘기면 되돌림 비용이 실행 비용만큼 발생한다. 뒤의 세 항목은 취합과 종료 시점에 확인한다.
워커를 실행하기 전 · 양쪽 공통
- 하위 작업의 수가 입력에 따라 결정되는 과제인가
- 작업 단계가 순차 의존 관계에 있지 않은가
- 작업 디렉토리와 실행 단위 디렉토리를 생성하였는가
- 과제 정의서의 배경에서 확인된 사실과 미확인 전제를 구분하였는가
- 완료 조건을 산출물 형식 수준까지 기재하였는가
- 배정 대조를 수행하고 미배정 항목을 범위 밖으로 명시하였는가
- 워커별 쓰기 범위가 겹치지 않는가
- 지시문에 기재한 절차와 도구가 실행 환경에 존재하는가
워커를 실행하기 전 · 코드
- 워커 정의 파일의 스코프를 확인하였는가(프로젝트 스코프가 사용자 스코프보다 우선한다)
- 조사 전용 워커의 허용 도구에서 편집 도구를 제외하였는가
- 편집 작업을 병렬로 배정한 경우 격리 설정을 지정하였는가
- 격리를 지정한 워커의 산출물을 어디에서 회수할지 정하였는가
- 실행 단위 디렉토리를 저장소에서 추적할지 정하였는가
- 워커가 실행할 명령이 오케스트레이터 세션의 권한 규칙으로 허용되는가
워커를 실행하기 전 · 데스크탑
- 실행 단위 디렉토리를 연결된 폴더 안에 생성하였는가
- 경로 변환 규칙을 지시문에 명시하였는가
- 원격 파일 접근 도구를 먼저 확보하도록 지시문에 기재하였는가
- 실행 환경 내부에 산출물을 기록하지 않도록 명시하였는가
- 승인이 필요한 동작이 여러 워커에 분산되어 있지 않은가
취합과 종료 시점 · 양쪽 공통
- 취합표의 각 행에 출처를 표시하였는가
- 집계 수치를 서술 요약이 아니라 파일에서 직접 세었는가
- 결론이 파일에 기록되었는가
정리
이 구성의 이득은 병렬 실행 속도가 아니라 컨텍스트 분리에서 발생한다. 각 하위 작업이 독립된 컨텍스트에서 처리되므로 상호 간섭이 차단되며, 대조 성격의 작업에서는 이 분리 자체가 방법론적 요건이 된다. 다만 분리된 결과를 하나로 되돌리는 취합 단계가 남으므로, 그 지점의 출처 표시와 기계적 집계가 결과의 신뢰도를 결정하게 되는 것이다.
참고 — 패턴의 정의와 병렬 처리와의 구분은 Anthropic, Building Effective Agents를 따랐다. 클로드 코드의 워커 정의 파일, 도구 제한, 격리, 권한 상속, 중첩 깊이는 Subagents, Tools reference, Worktrees, Permission modes 문서에서 확인하였다. 데스크탑 측 서술은 실제 실행에서 관측한 동작에 근거하며, 동시 실행 한도는 두 환경 모두 문서에서 확인되지 않았다.