본문 바로가기

Subagent란?

Subagent(서브에이전트)는 별도의 컨텍스트를 가진, 특정 역할에 특화된 작은 클로드입니다. 메인 세션에서 특정 작업을 서브에이전트에게 위임하면, 그 작업은 독립된 컨텍스트 안에서 처리되고 결과만 메인으로 돌아옵니다.

1. 서브에이전트의 진짜 강점: 별도 컨텍스트

서브에이전트를 단순히 "역할(페르소나)을 부여한 AI" 정도로 생각하기 쉽지만, 그게 핵심이 아닙니다.

사실 여러 연구에서 "당신은 전문가입니다" 같은 역할 부여 프롬프트가 성능에 큰 도움이 되지 않거나, 오히려 떨어뜨리기도 한다는 결과가 보고되었습니다.

서브에이전트의 가장 강력한 부분은 각 에이전트가 별도의 컨텍스트를 유지한다는 점입니다. 5장에서 배웠듯, 컨텍스트가 길어지면 답변 품질이 떨어집니다. 서브에이전트에게 작업을 위임하면, 그 작업에 필요한 탐색·시행착오가 메인 세션의 컨텍스트를 더럽히지 않습니다. 결과 요약만 메인으로 돌아오므로 메인 컨텍스트가 깨끗하게 유지됩니다.

2. 서브에이전트의 구성 요소

각 서브에이전트는 다음을 독립적으로 가질 수 있습니다.

요소설명
별도 컨텍스트 윈도우메인과 분리된 작업 공간
커스텀 시스템 프롬프트이 에이전트의 역할·지침
도구 접근 권한사용할 수 있는 도구를 제한/지정

3. 언제 서브에이전트를 쓸까?

  • 탐색이 많은 작업: 코드베이스를 광범위하게 뒤져 답을 찾는 작업(탐색 과정이 메인을 어지럽히지 않음)
  • 반복적인 검증: 작업 후 코드 단순화, E2E 테스트 등
  • 병렬 처리: 여러 영역을 동시에 독립적으로 처리
  • 특화된 검토: 보안 리뷰, 성능 리뷰 등 관점이 분명한 작업
서브에이전트 예시역할
code-simplifier작업 완료 후 코드 단순화
verify-app앱 동작 E2E 검증
security-reviewer보안 취약점 점검

Skill vs Subagent

  • Skill: "이 작업은 이렇게 처리하라"는 매뉴얼. 같은 세션·컨텍스트 안에서 작동.
  • Subagent: "이 작업을 통째로 맡아서 처리하라"는 외주 담당자. 별도 컨텍스트에서 작동.

둘은 함께 쓸 수 있습니다. 서브에이전트가 작업하면서 관련 Skill을 활용할 수도 있습니다.

다음 장에서는 서브에이전트를 직접 만들고 활용하는 방법을 살펴봅니다.