에이전트 하네스는 샌드박스 외부에 위치해야 한다

LLM의 핵심 구동 루프인 '에이전트 하네스'를 샌드박스 외부에 배치하는 아키텍처는 보안 자격 증명(API 키 등) 노출을 방지하고, 수십 명의 엔지니어가 협업하는 멀티 유저 환경에서 자원 효율성과 세션 복원력을 극대화한다.

AI 요약

에이전트 하네스(Agent Harness)는 프롬프트 전송, 도구 호출 실행, 결과 피드백을 반복하며 LLM을 구동하는 핵심 제어 루프입니다. 이 루프를 샌드박스 내부에 두느냐 외부에 두느냐는 보안과 확장성 측면에서 큰 차이를 만듭니다. Claude Code와 같은 단일 사용자 도구는 주로 샌드박스 내부 배치 방식을 사용하지만, 조직 단위의 멀티 유저 환경에서는 하네스를 백엔드(외부)에 두는 것이 필수적입니다. 외부에 배치하면 LLM API 키나 DB 액세스 토큰 같은 중요 자격 증명을 샌드박스로부터 완전히 격리할 수 있으며, 샌드박스를 필요할 때만 호출하고 유휴 시 일시 중지할 수 있어 비용 효율적입니다. 또한, 샌드박스에 장애가 발생하더라도 제어 루프는 살아남아 즉시 새로운 환경을 프로비저닝함으로써 작업의 연속성을 보장합니다.

핵심 인사이트

  • 에이전트 하네스의 역할: 프롬프트 전송, 응답 수신, 모델이 요청한 도구 호출(bash, read, write 등) 실행을 반복하며 작업 완료 시까지 루프를 유지합니다.
  • 보안 격리: 하네스를 외부에 두면 LLM API 키와 사용자 토큰이 샌드박스에 들어가지 않아, 에이전트의 탈옥이나 자격 증명 유출 위험을 원천 차단합니다.
  • 멀티 유저 최적화: 수십 명의 엔지니어가 동일한 에이전트를 공유하는 조직 환경에서 기술(skills)과 기억(memories)을 분산 파일 시스템 문제 없이 공유할 수 있게 합니다.

주요 디테일

  • 샌드박스 내부 방식 (Harness inside): 컨테이너 하나에 루프, 프로세스 트리, 파일 시스템이 공존하며 Claude Code SDK를 활용한 노트북 환경 실행이 대표적인 사례입니다.
  • 샌드박스 외부 방식 (Harness outside): 제어 루프는 백엔드에서 실행되고 도구 실행이 필요할 때만 API를 통해 샌드박스를 호출하는 아키텍처입니다.
  • 자원 효율성: 사고(thinking), API 호출, CI 대기 등 샌드박스가 필요 없는 단계에서는 환경을 일시 중지(Suspend)하여 자원 낭비를 방지합니다.
  • 샌드박스의 '가축화(Cattle)': 하네스 외부 모델에서는 샌드박스가 세션과 동일시되지 않으므로, 실행 중인 컨테이너가 죽어도 새 컨테이너를 프로비저닝하여 세션을 이어갈 수 있습니다.
  • 도구 실행 제어: 모든 도구 호출이 API를 거치므로 권한 모델 적용 및 실행 내역 모니터링이 훨씬 수월합니다.

향후 전망

  • 엔터프라이즈 에이전트 솔루션 시장에서는 보안과 비용 관리를 위해 샌드박스 외부 하네스 아키텍처가 표준으로 자리 잡을 것으로 예상됩니다.
  • 대규모 언어 모델을 활용한 복잡한 워크플로우 제어 시, 샌드박스의 생명주기를 유연하게 관리하는 오케스트레이션 기술이 더욱 중요해질 것입니다.
Share

이것도 읽어보세요

댓글

이 소식에 대한 의견을 자유롭게 남겨주세요.

댓글 (0)

불러오는 중...