4.4 KiB
4.4 KiB
Agent Harness (에이전트 하네스)
📌 Brief Summary
Agent Harness는 에이전트(LLM)가 독립적으로 동작하지 않고, 시스템 자원(파일, 네트워크, 도구)에 접근하고, 상태를 유지하며, 외부와 소통할 수 있도록 감싸는 **'실행 런타임이자 거버넌스 계층'**이다. 에이전트에게는 외부 세계와 소통하는 인터페이스를 제공하고, 시스템에게는 에이전트의 행동을 통제하고 관찰하는 보안 및 운영 경계를 제공한다. 최근에는 이를 **'Agent OS'**라고도 부른다.
📖 Core Content
- 6대 구성 요소 (Standard Architecture):
- C-component (Context Manager): 컨텍스트 조립 및 압축 관리.
- E-component (Execution Loop): 에이전트의 사고-행동 반복 루프 제어.
- L-component (Lifecycle Hooks): 이벤트 인터셉터 및 정책 강제 계층.
- S-component (State Store): 단기/장기 메모리 및 지식 지속성 관리.
- T-component (Tool Registry): 외부 도구 연결 및 실행 표준화(MCP 등).
- V-component (Evaluation Interface): 결과 검증 및 피드백 루프.
- 시스템 자원 추상화: 에이전트가 직접 OS API를 호출하는 대신, 하네스가 제공하는 가상화된 파일 시스템, 네트워크 게이트웨이, 도구 셋을 통해 안전하게 상호작용하도록 한다.
- 보안 및 격리 (Sandboxing): 에이전트의 실행 환경을 호스트 시스템과 격리하여, 프롬프트 인젝션이나 악성 코드 실행으로 인한 피해가 확산되는 것을 방지한다.
- 상태 보존 및 복구: 작업 중단 시 현재의 컨텍스트와 메모리 상태를 저장하고, 나중에 동일한 지점에서 작업을 재개할 수 있는 스냅샷 기능을 제공한다.
- 관측 가능성 (Observability): 에이전트의 모든 사고 과정(Thought), 도구 호출 로그, 데이터 흐름을 기록하여 디버깅과 감사가 가능하게 한다.
⚖️ Trade-offs & Caveats
- 추상화 오버헤드: 하네스 계층이 두꺼워질수록 에이전트의 반응 속도(Latency)가 느려질 수 있다.
- 유연성과 통제의 균형: 하네스가 너무 엄격하면 에이전트의 창의적 문제 해결이 제한될 수 있고, 너무 느슨하면 보안 리스크가 발생한다.
- 복잡한 동기화: 다중 에이전트 환경에서 여러 하네스 간의 상태 일관성을 유지하는 것은 매우 어려운 공학적 과제이다.
🔗 Knowledge Connections
Related Concepts
- Agent OS
- 연결 이유: 에이전트 하네스의 개념이 확장되어 운영체제 수준의 자원 관리를 수행하는 상위 개념이다.
- MCP (Model Context Protocol)
- 연결 이유: 하네스의 T-component가 외부 도구와 통신하기 위해 채택하는 표준 프로토콜이다.
- Execution Environment (Sandbox)
- 연결 이유: 하네스가 에이전트를 실제로 실행시키는 물리적/가상적 격리 공간이다.
Deeper Research Questions
- 하네스의 각 구성 요소(C/E/L/S/T/V) 간의 의존성을 최소화하면서도 고성능 데이터 파이프라인을 구축하는 마이크로커널 아키텍처는 어떻게 설계해야 하는가?
- 에이전트가 하네스의 제약을 인지하고 이를 우회하려 할 때(Jailbreaking), 하네스 계층에서 이를 실시간으로 탐지하는 하드웨어 수준의 감시 기법은 무엇인가?
- 하네스가 여러 모델(Multi-model)을 동시에 지원하며, 작업별로 최적의 모델에게 서브 태스크를 할당하는 '동적 라우팅' 기능을 어떻게 최적화하는가?
Practical Application Contexts
- Implementation: Python의 LangGraph나 JS의 LangChain 등을 활용하여 기본적인 하네스 루프를 구축하고, 커스텀 미들웨어(L-component)를 추가하여 보안 정책을 적용한다.
- System Design: 기업용 에이전트 플랫폼 구축 시, Docker나 WASM 기반의 샌드박스를 하네스 하단에 배치하여 에이전트의 코드 실행 권한을 엄격히 제한한다.
Last updated: 2026-05-01