OpenClaw ACP 프로토콜의 서브에이전트 세션 격리가 실현하는 기술적 아키텍처
OpenClaw의 ACP 프로토콜은 서브에이전트의 독립성을 보장하기 위해 채널-바인딩 기반 세션 격리 체계를 구현합니다. ACP는 (channel, accountId, peer) 튜플로 인바운드 메시지를 에이전트 ID로 매핑하며 8단계 우선순위 체계를 적용하여 다중 에이전트 간 메시지 흐름을 체계적으로 관리합니다. 각 서브에이전트는 agent:<agentId>:subagent:<uuid> 세션 식별 포맷을 사용하여 독립 세션 공간에서 실행되고, Fan-Out/Fan-In 패턴을 통해 독립 태스크를 병렬 분산 실행한 후 결과를 부모 채팅 채널로 취합합니다. 결함 격리 체계로 하나의 서브에이전트 실패가 다른 에이전트나 부모 세션에 영향을 주지 않으며, /subagents 엔드포인트로 실시간 추적이 가능합니다.
이 글의 핵심 주장과 근거
ACP 프로토콜의 채널-바인딩 기반 라우팅 구조
ACP 프로토콜은 OpenClaw의 다중 에이전트 간 메시지 라우팅을 관리하는 추상화 레이어로, (channel, accountId, peer) 튜플 기반의 채널-바인딩 메커니즘을 통해 인바운드 메시지를 해당 agentId로 체계적으로 분배합니다. 이 라우팅 체계는 8단계 우선순위 체계를 적용하여 peer 정확한 일치, 부모 peer 일치, 길드Id+역할, 길드Id, 팀Id, 계정Id 일치, 채널 수준 일치, 기본 에이전트 폴백 순서대로 우선순위를 판단합니다. 이러한 다단계 우선순위 체계 덕분에 여러 채널과 에이전트가 공존하는 복잡한 환경에서도 메시지가 정확하게 의도된 수신자에게 전달됩니다.
서브에이전트의 독립 세션 네임스페이스와 최대 5단계 중첩 보장
서브에이전트는 agent:<agentId>:subagent:<uuid> 포맷의 고유 세션 식별자를 부여받아 상위 에이전트와 완전히 독립적인 세션 공간에서 실행됩니다. 이 세션 네임스페이스 구조는 부모 에이전트의 대화 스레드와 격리된 환경에서 별도로 동작하므로, 서브에이전트의 작업이 부모 세션의 대화를 차단하지 않습니다. 중첩 depth는 최대 5단계까지 보장되어 지나친 중첩으로 인한 컨텍스트 분열과 메모리 누수를 사전에 방지합니다. 각 서브에이전트는 독립적인 에이전트 디렉터리와 작업 공간을 소유하며, 파일 시스템 수준에서도 완전한 격리를 경험하게 됩니다.
Fan-Out/Fan-In 패턴에 따른 2단계 병렬 실행 체계
Fan-Out 단계에서는 부모 에이전트가 하나의 큰 태스크를 복수의 독립 서브에이전트로 동시에 분산 실행합니다. 각 서브에이전트는 독립 세션에서 개별적으로 동작하므로 서로를 기다리지 않고 병렬로 작업을 완료합니다. Fan-In 단계에서는 각 서브에이전트가 자신의 작업 결과를 부모 에이전트의 채팅 채널에 직접 포스트백하며, 부모 세션은 실시간으로 각 결과를 수신하여 통합 처리합니다. 이 2단계 실행 체계의 핵심 가치는 순차 실행의 한계를 극복한다는 데 있습니다. 여러 개의 독립 태스크를 완전히 동시에 처리함으로써 전체 처리 속도가 획기적으로 개선되며, 에이전트 협업이 답답한 기다림의 게임에서 생산적인 병렬 처리의 영역으로 전환됩니다.
결함 격리 메커니즘과 백그라운드 태스크 추적 구조
OpenClaw의 결함 격리 체계는 각 서브에이전트를 완전한 격리 실행 단위로 분리하여, 하나의 에이전트가 예기치 않게 실패하더라도 다른 에이전트나 부모 세션 전체에 영향이 전파되지 않도록 설계되어 있습니다. 각 서브에이전트는 자체 에이전트 디렉터리와 고유 세션 저장소를 보유하므로, 실패한 에이전트의 상태가 정상 동작 중인 에이전트에 영향을 미치지 않습니다. 서브에이전트의 실행 상태는 /subagents 엔드포인트를 통해 실시간으로 검사하거나 제어할 수 있으며, 백그라운드에서 실행 중인 작업의 진행 상황을 부모 세션이 투명하게 확인할 수 있습니다. 이 백그라운드 추적 구조는 복잡한 다중 에이전트 작업에서도 안정적인 운영을 가능하게 하는 핵심 기반입니다. > 이 주제의 전체 맥락 방향성은 **바이브코딩에서 오픈클로까지** 원본 글에 세밀하게 정리되어 있습니다. 더 깊게 탐구하고 싶다면 관련 내부 대표 문서(Pillar/Entity)를 참조하세요.