DeepSeek Harness란 무엇인가
DeepSeek Harness는 AI 에이전트를 실제 환경에서 동작시키기 위한 플러그인 기반 에이전트 런타임 프레임워크로, 현재 개발자 프리뷰 단계에 있다. 핵심 철학은 단순하다. "모든 것은 플러그인이다(Everything is a plugin)". 모델, 도구, 스킬, 세션, 샌드박스, 스토리지, 스케줄링, UI까지 에이전트의 모든 구성 요소가 플러그인으로 추상화되어 있어, 소스 코드를 직접 수정하지 않고도 설정(configuration)만으로 각 요소를 교체하거나 확장할 수 있다.
백엔드 개발자 관점에서 이 구조는 매우 친숙한 개념이다. Spring의 Bean 등록 및 DI(Dependency Injection) 메커니즘처럼, Cordis 커널이 플러그인의 마운트·언마운트·의존성을 관리하며 플러그인 간 통신은 서비스와 이벤트로 처리된다. 특정 구현체에 강하게 결합되지 않고 인터페이스 기반으로 능력을 조합한다는 점에서 확장성과 유지보수성 모두를 고려한 설계라 할 수 있다.
플러그인 아키텍처와 실무 적용 관점
Cordis 커널을 중심으로 한 플러그인 시스템은 다음과 같은 구성 요소로 이루어진다.
- Models: 추론을 담당하는 LLM 플러그인
- Tools: 외부 API 호출, 파일 시스템 접근 등 도구 실행
- Skills: 복합 작업 단위의 고수준 능력
- Sessions: 에이전트의 대화 컨텍스트 관리
- Sandboxes: 코드 실행 등 격리 환경
- Loops / Scheduling: 에이전트 실행 흐름 제어
- Storage / UI: 상태 저장 및 인터페이스
# 빠른 시작 (npx 사용)
$ npx @deepseek-ai/dsh web
# 소스 클론
$ git clone https://github.com/deepseek-ai/deepseek-harness
실무에서 이 구조가 갖는 의미는 크다. 예를 들어, 특정 LLM 모델을 교체하거나 새로운 도구를 추가할 때 코어 로직을 건드리지 않아도 된다. 이는 사내 에이전트 시스템을 구축할 때 팀별로 서로 다른 플러그인을 독립적으로 개발·배포할 수 있음을 의미한다. MSA(Microservice Architecture)에서 각 서비스가 독립적으로 배포되는 것과 유사한 개발 경험을 에이전트 레이어에서도 가져갈 수 있다.
추적 가능성(Traceability)과 운영 신뢰성
DeepSeek Harness의 또 다른 핵심 설계 원칙은 **"모든 실행은 추적 가능하다(Every run is traceable)"**는 것이다. 모델이 받은 시스템 프롬프트, 추론 결과, 도구 호출 및 결과, 서브에이전트 스케줄링, 컨텍스트 주입까지 모든 정보가 append-only 세션 로그에 기록된다.
백엔드 시스템에서 운영 안정성을 위해 감사 로그(audit log)나 이벤트 소싱(event sourcing)을 도입하는 것과 같은 맥락이다. Trajectory 뷰를 통해 각 기록을 소스별로 검사할 수 있으며, 실행 결과를 재현(resume)하거나 특정 시점에서 분기(fork)하는 것도 가능하다. 이는 에이전트 시스템을 프로덕션에 도입할 때 디버깅과 장애 대응 측면에서 매우 중요한 기능이다. 블랙박스처럼 동작하던 에이전트 실행 흐름을 투명하게 관찰할 수 있다는 점은 실무 도입의 신뢰성을 높이는 핵심 요인이다.
정리
- DeepSeek Harness는 Cordis 커널 기반의 플러그인 아키텍처로, 모델·도구·스케줄링 등 모든 에이전트 능력을 설정만으로 교체·확장할 수 있다.
- Append-only 세션 로그와 Trajectory 뷰를 통해 에이전트의 모든 실행 과정을 추적·재현할 수 있어 프로덕션 운영 신뢰성을 확보한다.
- 플러그인 기반 설계는 팀별 독립 개발 및 배포를 가능하게 하여, 대규모 에이전트 시스템 구축 시 유지보수성과 확장성을 동시에 확보할 수 있다.