AX LABS
← 블로그 에이전트 제품 설계

Subagent는 context 방화벽이다

장기 작업은 기억을 나누지 않으면 무너진다

현장에서 Claude Code를 오래 쓰는 팀은 같은 문제를 반복해서 만난다. 처음에는 모델 성능이 좋아 보인다. 파일을 읽고, 로그를 보고, 계획을 세우고, 수정까지 한다. 그런데 작업이 길어질수록 대화창은 조사 흔적, 실패한 명령, 임시 판단, 폐기된 가설로 가득 찬다. 이후 에이전트는 중요한 요구사항과 지나간 노이즈를 같은 무게로 다룬다.

이 문제는 프롬프트를 더 길게 쓴다고 해결되지 않는다. context를 더 넣는 방식도 오래가지 않는다. 장기 작업에는 기억의 분리가 필요하다.

Subagent의 본질은 병렬화가 아니라 격리다

Anthropic은 2026년 4월 7일 Claude Code Subagents 가이드에서 subagent를 “자기 context window를 가진 격리된 Claude instance”로 설명한다. 작업을 받아 수행하고 결과만 반환한다. 공식 문서도 같은 원칙을 말한다. side task가 검색 결과, 로그, 파일 내용을 main conversation에 쏟아부을 때 subagent가 그 일을 별도 context에서 처리하고 summary만 돌려준다. https://claude.com/blog/subagents-in-claude-code, https://code.claude.com/docs/en/sub-agents

이 말의 운영적 의미는 분명하다. Subagent는 더 많은 일을 시키는 장치가 아니다. main thread를 오염시키지 않기 위한 방화벽이다.

장기 작업의 실패 원인은 context 부족보다 context 혼합이다.

AX Ops 관점에서 subagent 설계는 역할 분장이 아니라 context 경계 설계다. 어떤 정보가 main conversation에 남아야 하는지, 어떤 정보는 폐기 가능한 중간 산출물인지 먼저 정해야 한다.

모든 작업을 나누면 오히려 느려진다

Subagent를 많이 만들수록 체계적으로 보인다. 실제 운영에서는 반대다. 경계가 흐린 subagent는 main agent보다 더 많은 설명과 재작업을 요구한다.

작업 유형 main conversation Subagent
빠른 수정 적합 과함
요구사항 조율 적합 부적합
대량 파일 탐색 오염 위험 적합
로그·검색 결과 분석 오염 위험 적합
독립 모듈 조사 조건부 적합
서로 대화해야 하는 agent 작업 부적합 Agent Teams 검토

공식 문서도 같은 기준을 제시한다. main conversation은 잦은 왕복, planning→implementation→testing처럼 context가 이어지는 작업, 빠른 변경에 적합하다. Subagent는 verbose output이 main context에 남을 필요가 없고, self-contained summary로 끝나는 작업에 적합하다. Subagents는 서로 직접 대화하지 못하며, nested delegation이 필요하면 main conversation에서 chain하거나 Agent Teams를 써야 한다. https://code.claude.com/docs/en/sub-agents

따라서 좋은 질문은 “몇 개로 나눌까”가 아니다. “무엇을 main memory에 남기지 않을까”다.

좋은 Subagent는 산출물 계약이 짧다

Claude Code의 custom subagent는 Markdown file과 YAML frontmatter로 정의된다. description, prompt, tools, model, permissionMode, MCP server, hooks, memory 같은 설정을 가진다. 프로젝트 단위 .claude/agents/에 두면 팀이 version control로 공유할 수 있고, 사용자 단위 ~/.claude/agents/에 두면 개인 작업 전반에서 재사용한다. https://code.claude.com/docs/en/sub-agents

하지만 파일을 만든다고 설계가 끝나지 않는다. AX Ops에서 subagent 정의는 네 줄 계약으로 시작한다.

  • 입력: 무엇을 보고 시작하는가
  • 금지: 무엇을 읽거나 수정하지 않는가
  • 판정 기준: 성공·실패를 어떻게 말하는가
  • 반환 형식: main agent에 무엇만 돌려주는가

예를 들어 code-reviewer subagent는 “전 파일을 훑고 의견을 많이 내라”가 아니라 “수정 없이 Read/Grep/Glob만 사용하고, blocker와 non-blocker를 분리해 반환하라”로 정의한다. researcher subagent는 “자료를 찾아라”가 아니라 “폐기한 후보를 main context로 올리지 말고 채택 근거와 불확실성만 반환하라”로 정의한다.

이때 tool restriction은 품질 장치다. 읽기 전용 subagent는 편집 사고를 줄인다. MCP 접근도 업무별로 좁힌다. 2025년 10월 Anthropic은 Claude Code plugins가 slash commands, agents, MCP servers, hooks를 묶어 배포할 수 있다고 발표했다. 즉 subagent는 개인 편의 설정이 아니라 팀의 agent harness로 운영할 수 있다. https://www.anthropic.com/news/claude-code-plugins

참고와 다음 행동은 경계 정의에서 시작한다

Subagent 도입의 첫 단계는 agent 목록 작성이 아니다. 장기 작업 transcript를 보고 main conversation을 더럽힌 정보를 표시하는 일이다. 그 정보가 반복적으로 등장하면 subagent 후보가 된다.

참고:

Subagent는 Claude 기능 설명으로 끝나면 장난감이 된다. context 경계, tool 권한, 반환 계약, 관찰 지표까지 묶어야 운영 설계가 된다. AX LABS는 이 층위를 AX Ops의 agent-design 작업으로 다룬다. AX Ops 방법론 →