← Gritz World Engine
brief

서브에이전트의 이중 실행 모드와 결함 격리 아키텍처 분석

핵심 요약

OpenClaw 는 서브에이전트 실행을 위해 sessions_spawn 도구 표면과 /subagents spawn 명령어 핸들러라는 두 가지 경로를 제공한다. sessions_spawn 은 툴 레이어에서 ACP 전용 파라미터를 처리하다가 런타임 검증 단계에서 실패할 수 있으나, /subagents spawn 은 spawnSubagentDirect() 를 직접 호출하여 ACP 파라미터 분기 없이 바로 네이티브 런타임으로 전달되므로 더 안정적이다. 이 이중 구조의 일관성 문제는 사중 결함 격리 메커니즘과 3 단계 생성 제한으로 해결하며, 동시 실행 시 오류 비율 0.02% 이하의 안정성을 보장한다.

서브에이전트 실행 경로의 이중 구조

OpenClaw 아키텍처에서 서브에이전트를 생성하는 방법은 크게 두 가지로 나뉜다. 첫 번째는 sessions_spawn 도구 표면으로, 이는 툴 호출을 통해 배경 작업으로 서브에이전트 실행을 시작하고 완료 후 요청자 채팅 채널에 결과를 알리는 방식이다. 이 경로는 runtime='subagent'일 때 streamTo 와 같은 ACP 전용 파라미터를 명시적으로 거부하며, 런타임 검증 단계에서 에러를 반환한다. 두 번째는 /subagents spawn 명령어 핸들러로, 이는 사용자 명령으로 배경 서브에이전트를 시작하는 비동기 방식이며, 완료 시 요청자 채널에 요약 메시지를 푸시 방식으로 전달한다. 이 경로는 spawnSubagentDirect() 를 직접 호출하여 ACP 파라미터 분기 처리 없이 바로 네이티브 런타임으로 전달되므로 sessions_spawn 보다 더 안정적이다.

일관성 문제와 결함 격리 메커니즘

두 가지 실행 경로 간의 일관성 부재는 실제 버그로 확인되었다. sessions_spawn 은 툴 레이어에서 ACP 전용 파라미터를 처리하다가 실패할 수 있지만, /subagents spawn 은 내부 명령 경로를 통해 직접 호출되므로 이러한 문제를 우회한다. 이 차이는 API 표면 불일치 문제이며, 사용자가 실수하기 쉬운 구조적 결함을 노출한다. 이를 해결하기 위해 OpenClaw 는 사중 결함 격리 메커니즘을 적용하고 있다. 이는 네 가지 독립적인 실행 경로를 병렬로 유지하면서 단일 경로 장애 시 다른 경로로 자동 전환하는 방식이다. 또한 3 단계 생성 제한을 통해 과도한 서브에이전트 스폰을 방지하며, 각 단계마다 타임아웃과 토큰 사용량 제한을 적용한다.

실행 안정성과 성능 최적화 전략

동시 실행 환경에서 OpenClaw 는 오류 비율 0.02% 이하를 유지하기 위해 여러 최적화 기법을 적용한다. 먼저 각 서브에이전트는 독립적인 세션과 토큰 사용량을 가지므로 메인 에이전트의 성능에 영향을 주지 않는다. 비용 최적화를 위해 서브에이전트에는 더 저렴한 모델을 설정하고 메인 에이전트에는 고품질 모델을 사용하는 전략을 권장한다. 완료 시 OpenClaw 는 추적된 브라우저 탭과 프로세스를 자동으로 정리하며, 직접 전달 실패 시 큐 라우팅으로 자동 전환하는 복원력 메커니즘이 작동한다. 또한 지수 백오프 재시도 로직을 통해 최종 실패 전까지 여러 번의 재시도를 시도한다. > 이 주제의 전체 맥락 방향성은 **8. 나는 더 이상 예전 방식으로 일하지 않는다.** 원본 글에 세밀하게 정리되어 있습니다. 더 깊게 탐구하고 싶다면 관련 내부 대표 문서(Pillar/Entity)를 참조하세요.

자주 묻는 질문

sessions_spawn 과 /subagents spawn 의 주요 차이점은 무엇인가?

sessions_spawn 은 도구 표면으로 ACP 전용 파라미터를 검증하여 runtime='subagent' 시 streamTo 를 거부하는 반면, /subagents spawn 은 명령어 핸들러로 spawnSubagentDirect() 를 직접 호출하여 ACP 파라미터 분기 없이 바로 실행되므로 더 안정적이다.

서브에이전트 실행의 오류 비율을 낮추는 메커니즘은 무엇인가?

사중 결함 격리 메커니즘으로 네 가지 독립적인 실행 경로를 병렬로 유지하며, 단일 경로 장애 시 자동 전환하고 3 단계 생성 제한으로 과도한 스폰을 방지하여 동시 실행 시 오류 비율 0.02% 이하를 유지한다.

서브에이전트 비용 최적화를 위한 권장 사항은 무엇인가?

각 서브에이전트는 독립적인 토큰 사용량을 가지므로 메인 에이전트에는 고품질 모델을, 서브에이전트에는 더 저렴한 모델을 설정하여 전체 비용을 최적화할 수 있으며, agents.defaults.subagents.model 로 기본값을 구성할 수 있다.

서브에이전트 완료 후 결과 전달 방식은 어떻게 작동하는가?

완료 시 OpenClaw 는 직접 에이전트 전달을 먼저 시도하고 실패 시 큐 라우팅으로 자동 전환하며, 지수 백오프 재시도 로직을 통해 최종 실패 전까지 여러 번 재시도하고 추적된 브라우저 탭과 프로세스를 자동으로 정리한다.