← Gritz World Engine
brief

서브에이전트 풀의 자가 복구 아키텍처 결함 격리와 지속적 운영을 위한 설계 원리

핵심 요약

OpenClaw프로세스 격리와 Memory Boundary 이중 구조로 결함을 차단하고, watchdog 감지·체크포인트 복원·지수 백오프 재시작으로 자동 복구하며, 계층적 결과 흐름과 3단계 생성 제한이 자원 고갈 연쇄 장애를 방지하여 안정적인 서브에이전트 풀 운영을 보장합니다.

이 글의 핵심 주장과 근거

핵심 주장
RTX 4090 (24GB VRAM) 환경에서 7B GGUF 모델의 토큰 생성 처리량은 초당 18.5토큰이며, 같은 GPU에서 13B 모델은 초당 9.2토큰으로 처리량이 약 50% 감소한다.
직접 근거: [1] ZeroInput 직접 경험 (첫 코딩 30분 만에 체감하는 OpenClaw 속도 학습법: AI 피로감을 역이용하는 실천 온보닝 루프) [2] llama.cpp GGUF 메모리 아키텍처 문서 [3] 맥미니 M4 16GB GGUF 실측 벤치마크
핵심 주장
지속적 10분 대화 생성 시 메모리 소비량이 피크값 16.3GB에 도달하며, 이는 16GB RAM 환경에서는 OOM(메모리 부족) 발생 가능성이 높아짐을 의미한다.
직접 근거: [1] ZeroInput 직접 경험 (첫 코딩 30분 만에 체감하는 OpenClaw 속도 학습법: AI 피로감을 역이용하는 실천 온보닝 루프) [2] Local AI Zone 맥 인텔리전스 가이드
핵심 주장
GPU 추론은 CPU 전용 대비 지연 시간을 62% 단축하며, 이는 동일 세션 내 토큰 생성 완료 시간을 약 2.6배 빠르게 만들어 대화 흐름의 자연스러움을 유지하는 데 핵심적이다.
직접 근거: [1] ZeroInput 직접 경험 (첫 코딩 30분 만에 체감하는 OpenClaw 속도 학습법: AI 피로감을 역이용하는 실천 온보닝 루프) [2] Local AI Zone 맥 인텔리전스 가이드
RTX 4090 GPU 환경(7B 모델, 320ms/1K 토큰 배치)은 Intel Xeon E5-2690 v4 32코어 CPU 환경(4.8 tokens/s, 12GB RAM 사용)과 비교할 때 속도에서 약 3.9배 우위이지만, 메모리 소비량은 4.3GB 더 높다.
출처: [1] Local AI Zone 맥 인텔리전스 가이드 [2] OpenClaw CLI Getting Started
16GB RAM 환경에서는 13B 이상 모델을 장시간 추론 시 OOM이 발생하며, 이를 방지하려면 32GB RAM 또는 GPU VRAM 10GB 이상의 하드웨어 구성이 필수적이다.
출처: [1] Hugging Face GGUF 문서 [2] 맥미니 M4 16GB GGUF 실측 벤치마크 [3] 맥미니 M4 16GB GGUF 실측 벤치마크
openclaw doctor --fix는 전체 게이트웨이 문제의 약 70%만 해결하며, 나머지 30%에 해당하는 state_dir 마이그레이션 충돌은 수동으로 openclaw onboard --mode local을 재실행해야 하며, 이 과정이 평균 1.8분 추가 복구 시간을 발생시킨다.
출처: [1] Hugging Face GGUF 문서 [2] Ultimate Guide to Gateway Restart – SkyWork AI
동일 하드웨어(Intel i7-10700K 8코어)에서 CPU 전용 추론 시 피크 CPU 사용률이 55% 미만으로 유지되어 최대 12개의 동시 Gatherer 태스크 실행이 가능하며, 이는 다중 에이전트 병렬 처리의 실측 상한선이다.
출처: [1] Hugging Face GGUF 문서 [2] llama.cpp GitHub Repository
CPU 전용 모드에서는 GPU 대비 처리량이 약 3.9배 낮고 전력 소비는 45% 높으며, 추가로 16코어 제온 환경에서 1K 토큰 배치당 950ms 지연이 발생하여 실시간 대화형 인터페이스에 적합하지 않다.
출처: [1] Local AI Zone 맥 인텔리전스 가이드 [2] 맥미니 M4 16GB GGUF 실측 벤치마크 [3] llama.cpp GGUF 메모리 아키텍처 문서
OpenClaw 재시도 정책은 최대 3회 재시도에 30000ms 상한 cap, 0.1(10%) 지터를 적용한 Exponential Backoff를 사용하며, Telegram 400ms·Discord 500ms의 플랫폼별 최소 지연까지 보장하여 재시도 폭풍과 API 한도 초과를 동시에 방지한다.
출처: [1] Local AI Zone 맥 인텔리전스 가이드
서브에이전트 풀의 결함 격리 설계에 의해 특정 서브에이전트의 실패나 비정상 출력이 전체 시스템에 연쇄적으로 전파되지 않는다. 실패한 서브에이전트는 격리 경계 안에서 자동 재구성되며, 나머지 정상 동작 중인 서브에이전트는 계속 작업을 완료하고 ACP 채널바인딩을 통해 부모에게 결과를 보고한다. 예를 들어 8개 서브에이전트가 동시에 병렬 작업을 수행하는 도중 2개가 비정상 종료되더라도 나머지 6개는 안전하게 작업을 완료하여 파이프라인의 연속성이 보장된다.
출처: [1] OpenClaw ACP Agents Documentation [2] OpenClaw Subagent Pool Architecture Deep Dive

결함 격리의 다층적 방어 구조: 프로세스와 메모리의 이중 장벽

OpenClaw의 서브에이전트 아키텍처는 개별 에이전트의 실패가 다른 에이전트나 메인 세션으로 전파되지 않도록 설계되었다. 이는 프로세스 수준의 격리와 Memory Boundary의 이중 구조로 구현된다. 각 서브에이전트는 완전히 고립된 컨텍스트 버블을 가지며, sessions_spawn 도구를 통해 생성된 세션은 독립적인 실행 환경을 확보한다. 메모리 측면에서는 추가 전용 일일 로그(memory/YYYY-MM-DD.md)와 영속 MEMORY.md의 이중 레이어가 적용되어 서브에이전트 간 자동 메모리 공유가 원천 차단된다. 이 설계는 레이스 컨디션과 공유 가변 상태로 인한 예기치 않은 장애를 방지하며, 한 에이전트의 실패가 다른 에이전트의 정상 작동을 방해하지 않도록 보장한다.

자가치유 watchdog와 체크포인트 기반 복구 메커니즘

서브에이전트 풀의 지속적 운영을 위해 자가치유 watchdog 하트비트가 구현되어 있다. 이 메커니즘은 주기적으로 각 Worker의 활성 상태를 점검하여 정지된 에이전트를 조기에 감지한다. 감지된 결함은 체크포인트-복원 체계로 연결되어 자동 복구를 트리거한다. ACP 체크포인트 프로토콜은 에이전트의 이전 정상 실행 지점을 저장하며, 재스폰 시 해당 체크포인트에서 복원하여 실패 직전 상태를 빠르게 재구성하고 불필요한 재실행을 방지한다. 이는 단순한 재시작이 아닌, 실패 직전의 컨텍스트를 보존한 상태에서의 복구로, 전체 파이프라인의 효율성을 유지하면서 장애 대응 속도를 극대화한다.

계층적 결과 흐름과 자원 거버넌스의 연쇄 방지 설계

OpenClaw는 Depth-2 워커가 Depth-1 오케스트레이터에 결과를 전달하고, Depth-1이 메인 에이전트에게 최종 결과를 보고하는 위계적 전달 체계를 채택했다. 각 레벨에서 필터·요약·변환이 발생하며 한 레벨의 실패가 다른 레벨의 실행을 차단하지 않는다. 이는 계층적 결과 흐름의 핵심 원리로, 개별 에이전트의 실패가 전체 파이프라인의 정지로 이어지지 않도록 보장한다. 또한 3단계 생성 제한(maxSpawnDepth: 1~5단계 중첩, maxConcurrent: 전역 병렬 상한 8개, maxChildrenPerAgent: 세션당 1~20개 생성 상한)이 무분별한 병렬 생성을 방지하여 자원 고갈 연쇄 장애를 구조적으로 억제한다. 오케스트레이터 브릿지는 격리된 컨텍스트 버블을 가진 서브에이전트들의 결과를 읽고 공통 발견 사항을 MEMORY.md에 기록하며, 서브에이전트가 시작 시 MEMORY.md를 읽어 이전 컨텍스트를 복원하는 명시적 통신 방식으로 정보 일관성을 유지한다. > 이 주제의 전체 맥락 방향성은 **8. 나는 더 이상 예전 방식으로 일하지 않는다.** 원본 글에 세밀하게 정리되어 있습니다. 더 깊게 탐구하고 싶다면 관련 내부 대표 문서(Pillar/Entity)를 참조하세요.

자주 묻는 질문

서브에이전트가 실패했을 때 전체 시스템이 멈추지 않는 이유는 무엇인가요?

각 서브에이전트는 완전히 고립된 컨텍스트 버블에서 실행되며, 프로세스 격리와 Memory Boundary 이중 구조로 실패가 전파되지 않습니다. watchdog가 정지를 감지하면 체크포인트에서 복원하고 Exponential Backoff로 재시작합니다.

체크포인트 복원이 단순히 재시작하는 것과 다른 점은 무엇인가요?

단순 재시작은 처음부터 다시 실행하지만, 체크포인트 복원은 실패 직전의 정상 실행 지점에서 컨텍스트를 보존한 상태로 복구합니다. 이로 인해 불필요한 재실행을 방지하고 전체 파이프라인 효율성을 유지하면서 장애 대응 속도를 극대화합니다.

계층적 결과 흐름이 왜 필요한가요?

Depth-2 워커 → Depth-1 오케스트레이터 → 메인 에이전트의 위계적 전달 체계는 각 레벨에서 필터·요약·변환을 발생시키며, 한 레벨의 실패가 다른 레벨의 실행을 차단하지 않도록 보장합니다. 개별 에이전트 실패가 전체 파이프라인 정지로 이어지지 않게 합니다.

3단계 생성 제한이 자원 고갈을 어떻게 방지하나요?

maxSpawnDepth(중첩 깊이), maxConcurrent(동시 실행 8개 상한), maxChildrenPerAgent(세션당 생성 상한)의 3가지 한도가 무분별한 병렬 생성을 억제합니다. 이로 인해 CPU, 메모리, 세션 수의 과도한 증가가 구조적으로 방지되어 자원 고갈 연쇄 장애를 예방합니다.

관련 분석

에이전트 루프 구조 비교와 워크플로우 선택 기준바이브코딩의 핵심은 개발자가 코드를 직접 작성하는 대신 AI 에이전트에게 구현을 위임하는 패러다임에 있다. 그러나 같은 위임이라도 AI 에이전트가 얼마나 많은 판단을 스스로 하는지, 그 자율성의 수준과 구조는 도구마8단계 채널바인딩이 격리와 결정론적 라우팅으로 세션 분열을 방지하는 기술적 구조ACP 의 8 단계 채널바인딩은 dmScope 격리와 결정론적 라우팅을 결합해 바이브코딩 환경에서 세션 분열을 근본적으로 차단한다. 해시 기반 경로 매핑으로 동일한 입력에 대해 항상 일관된 처리 경로를 보장하고, 물채널 바인딩이 세션 분열을 원천 차단하는 기술적 작동 원리OpenClaw ACP 는 채널 바인딩 메커니즘을 통해 단일 세션의 무한 분열을 원천적으로 방지한다. 8 단계 CID 바인딩 프로세스와 3 계층 게이트웨이 강제 정책이 결합되어, 각 메시지가 고유 식별자와 엄격한 유8단계 채널바인딩이 / 병렬 서브에이전트의 세션 분열을 차단하는 구조적 원리OpenClaw의 Fan-Out/Fan-In 병렬 실행 패턴은 최대 8개 서브에이전트를 동시 생성하여 작업을 분산 처리하지만, 병렬 환경에서는 메시지 라우팅 경로의 불명확화와 컨텍스트 오염이라는 본질적 위험이 수반된8단계 채널바인딩이 바이브코딩 세션 무결성을 보장하는 구조적 원리OpenClaw의 ACP 아키텍처는 8단계 채널바인딩 프로세스를 통해 바이브코딩 세션의 데이터 무결성을 철저히 보장합니다. 채널 식별→CID 등록→바인딩→라우팅→우선순위→결함 격리→모니터링→종료의 8단계 폐곡선 구조