코드 위임 에이전트의 세션 격리와 컨텍스트 관리 아키텍처 마스터 가이드
OpenClaw의 ACP 아키텍처는 sessions_spawn로 생성된 서브에이전트가 독립 네임스페이스에서 실행되도록 격리하고, 채널바인딩 8단계 우선순위 체계로 다중 에이전트 환경에서도 컨텍스트 분열 없이 결정적 메시지 라우팅을 보장한다. 각 서브에이전트는 agent:<agentId>:subagent:<uuid> 형식의 고유 식별자를 가지며 워크스페이스 격리 설계가 동시 파일 수정 경합을 차단하고, Gateway의 WebSocket 기반 세션 관리 레이어가 10개 동시 세션과 30초 하트비트를 제어한다.
이 글의 핵심 주장과 근거
서브에이전트 세션 격리의 물리적 메커니즘
OpenClaw의 sessions_spawn 명령어는 단일 부모 세션에서 최대 8개의 서브에이전트를 동시에 배경 세션에 격리 생성할 수 있는 병렬 처리 메커니즘이다. 각 서브에이전트는 agent:<agentId>:subagent:<uuid> 형식의 독립 네임스페이스에서 실행되며, 이는 부모 세션의 LLM 컨텍스트와 물리적으로 완전히 분리된 환경을 의미한다. 각 서브에이전트는 고유한 컨텍스트 저장소와 메시지 큐를 보유하며, 오직 sessions_send로 전달된 태스크 프롬프트 내용만 인식할 수 있다. 이러한 격리는 워크스페이스 격리 설계와 결합되어 서로 다른 서브에이전트가 동일한 파일을 동시에 수정하는 경합 조건을 원천 차단한다. 결과적으로 개별 에이전트의 실패나 비정상 출력이 전체 시스템에 파급되지 않도록 각 에이전트의 실행 영역을 독립적 네임스페이스에서 격리 실행하는 결함 격리 설계 원칙이 실현된다.
ACP 채널바인딩과 8단계 우선순위 라우팅 체계
ACP 세션은 channel:<id> 형식의 영구 식별자로 특정 통신 채널에 연결하여 메시지 라우팅 경로를 결정적으로 설정한다. 이 채널바인딩 메커니즘은 8단계 우선순위 체계를 통해 LLM 토큰 비용 없이 결과를 자동 라우팅하며, 세션 격리와 결합하여 세션 응집력을 보장한다. 동일 채널 우선 매칭부터 폴백 기본값에 이르기까지 8단계로 상위 우선순위에서 실패 시 하위로 전환하며 각 단계에서 LLM 추론 비용이 발생하지 않는 결정적 배포 방식을 적용한다. OpenClaw Gateway의 WebSocket 기반 세션 관리 및 메시지 라우팅 코어 레이어는 세션 수명주기 관리, 메시지 큐링, 동시성 제어(최대 10개 동시 세션, 30초 하트비트)를 담당하며 8단계 우선순위 라우팅 규칙을 실행한다. 이 체계는 다중 서브에이전트가 병렬로 실행되어도 결과 메시지가 부모의 올바른 채널로 결정적으로 라우팅되어 세션의 논리적 일관성이 유지되도록 한다.
세션 수명주기와 ContextEngine의 통합 관리
ACP Harness는 서브에이전트의 세션을 Spawn→Run→Pause/Resume→Terminate의 4단계로 명시적으로 관리하는 런타임 거버넌스 체계를 제공한다. 각 단계에서 세션 ID, 채널 식별자, PTY 상태가 부모의 채널 등록 정보에 연결되어 deleteAfterRun 플래그를 통한 자동 정리를 보장한다. ContextEngine은 서브에이전트의 컨텍스트를 수집·조립·압축의 3단계 라이프사이클 훅으로 관리하는 모듈로, ACP 메시지 라우팅과 통합되어 검색 에이전트의 병렬 검색 결과와 수집 에이전트의 종합 결과가 동일한 채널 체계를 통해 부모에게 도달하도록 보장한다. ACP 무상태 설계는 Pause/Resume 단계에서 세션 상태를 명시적 경로에 저장하여, 비정상 종료 상황에서도 Stateless Reconnect가 가능하고 deleteAfterRun 플래그로 고아 프로세스 없이 리소스가 자동 정리되는 설계 철학을 구현한다.
오케스트레이션과 인지 부담 분산 아키텍처
OpenClaw의 Fan-Out 단계에서 오케스트레이터는 원본 작업을 분석하여 동적으로 분해하고, 서브에이전트에게 역할별 태스크를 위임하는 중앙 조정자 역할을 수행한다. 리프 작업은 절대 수행하지 않으며 위임과 종합만 담당한다. 이 설계는 단일 개발자나 단일 AI가 모든 인지적 판단을 담당하는 구조를 벗어나, 오케스트레이터가 전략적 판단을, 서브에이전트가 세부 실행을, 자동 합성 엔진이 결과 통합을 분담하여 3단계로 분리함으로써 인지 부담 수준을 체계적으로 분산한다. sessions_send를 통한 에이전트 간 메시징은 agentTurn 유형의 페이로드가 서브에이전트에 전송되어 작업을 실행하고 stdout/stderr를 채널로 스트리밍하는 양방향 통신 체계를 제공한다. > 이 주제의 전체 맥락 방향성은 **바이브코딩에서 오픈클로까지** 원본 글에 세밀하게 정리되어 있습니다. 더 깊게 탐구하고 싶다면 관련 내부 대표 문서(Pillar/Entity)를 참조하세요.