서브에이전트 (subagent)
부모 에이전트와 분리된 컨텍스트에서 도는, 용도 특화 자식 에이전트. 큰 태스크를 분업하는 장치.
1줄 정의
부모 에이전트와 분리된 컨텍스트에서 도는, 용도 특화 자식 에이전트. 큰 태스크를 분업하는 장치.
전체 시스템에서 맡는 역할
단일 에이전트로 긴 작업을 시키면 context window 가 부풀어 오르면서 초기 지시가 묻힌다. 이걸 푸는 게 서브에이전트.
부모 에이전트가 “조사해서 보고해” 라고 하면 자식 에이전트가 새 컨텍스트에서 기동해서 조사 → 요약만 부모에 돌려준다. 자식이 쓴 토큰은 자식 컨텍스트로 닫힌다. 부모는 요약만 받는다.
이 분업은 3가지 효과를 만든다.
- 컨텍스트 절약: 부모의 대화 이력에 대량 중간 출력이 섞이지 않음
- 병렬화: 여러 서브에이전트를 동시에 띄울 수 있음
- 전문화: 자식마다 특화 프롬프트·특화 도구를 가질 수 있음
Claude Code 에는 Task 도구로 서브에이전트를 기동하는 기능이 있고, Explore / general-purpose / Plan 같은 용도별 타입이 준비되어 있다.
흔한 오해
- 오해 1: 서브에이전트는 부모와 같은 정보를 공유한다, 라고 여겨지기 쉽다.
– 실제로는 부모가 건넨 지시와 자식이 스스로 찾은 정보만 갖는다. 부모의 전 대화 이력을 물려받지는 않는다. 부모→자식 전달 정보량 설계가 중요.
- 오해 2: 서브에이전트를 쓰면 빨라진다, 라고 기대되기 쉽다.
– 실제로 기동 오버헤드와 토큰 소비가 늘어나는 경우도 있다. 병렬화나 컨텍스트 분리 이득이 큰 태스크에서는 빨라지지만, 단순 1 스텝에서는 비효율이 될 수 있다.
이 용어가 중요한 이유
서브에이전트 설계를 이해하면 대규모 자동화 태스크를 “1 에이전트로 전부” 가 아니라 “부모-자식 분업” 으로 짤 수 있게 된다. 이게 긴 agent 워크플로의 품질을 정한다.
이 용어가 나오는 기사
- Claude Code, 에이전트 설계 관련 기사
다음에 읽을 용어 3개
- agent — 서브에이전트의 부모 개념.
- Claude Code — Task 도구로 서브에이전트를 다루는 대표 예.
- context window — 서브에이전트가 풀려는 제약.