Claude Code Agent Teams 완전 가이드【2026년 최신】16개의 AI가 10만 줄 C 컴파일러를 구축한 구조

Claude Code Agent Teams는 2026년 2월 Claude Opus 4.6과 동시에 출시된 실험적 기능이다. 여러 Claude Code 세션을 “팀”으로 협업시켜 하나의 프로젝트에 대해 병렬로 작업을 진행할 수 있다. Anthropic의 Nicholas Carlini는 이 기능을 사용해 16개의 AI 에이전트에게 10만 줄의 Rust 기반 C 컴파일러를 2주 만에 구축하게 했다. 이 글에서는 Claude Code Agent Teams의 구조, 사용법, 기존 Subagent와의 차이를 공식 문서를 바탕으로 해설한다.

Claude Code Agent Teams란? — Subagent와의 근본적인 차이

Claude Code에는 이전부터 “Subagent”라는 병렬 처리 기능이 있었다. 메인 세션 내에서 서브 프로세스를 생성하고 결과만 받는 구조다. Agent Teams는 이와 설계 사상이 다르다.

비교 항목 Subagent Agent Teams
컨텍스트 메인 세션 내에서 동작 완전히 독립된 Claude Code 인스턴스
통신 모델 메인 에이전트에만 결과를 반환 팀원끼리 직접 메시지를 보낼 수 있음
태스크 관리 메인이 모든 작업을 관리 공유 태스크 리스트에서 팀원이 자율적으로 태스크를 가져감
적용 상황 결과만 필요한 집중적 태스크 토론·상호 리뷰·자기 조정이 필요한 복잡한 프로젝트
비용 낮음 (결과 요약만) 높음 (각 멤버가 풀 인스턴스)

공식 문서(code.claude.com/docs/en/agent-teams)에 따르면, Agent Teams는 “여러 Claude Code 세션을 협업시키는 오케스트레이션 기능”으로 정의되어 있다. 팀원은 서로의 존재를 인식하고, 발견하고, 메시지를 보내며, 서로의 성과에 이의를 제기할 수도 있다.

Claude Code Agent Teams의 아키텍처 — 4가지 구성 요소

Agent Teams의 내부는 4가지 요소로 구성되어 있다.

1. Team Lead (팀 리드)

메인 Claude Code 세션. 팀 생성, 멤버 생성, 태스크 할당, 최종 성과 통합을 담당한다.

2. Teammates (팀원)

독립된 Claude Code 인스턴스로 동작한다. 각각 자신의 컨텍스트 윈도우를 가지며, 스폰 시 CLAUDE.md·MCP 서버·스킬 등 프로젝트의 컨텍스트를 읽어 들인다. 리드의 대화 이력은 이어받지 않는다.

3. Shared Task List (공유 태스크 리스트)

팀 전체에서 공유되는 태스크 큐. 각 태스크는 pending → in-progress → completed의 상태 전이를 가지며, 의존 관계를 정의할 수 있다. 선행 태스크가 완료되면 후속 태스크가 자동으로 언블록된다. 파일 잠금을 통해 여러 팀원이 동일 태스크를 가져가는 경합을 방지한다.

4. Mailbox (메일박스)

에이전트 간 메시징 시스템. message 명령으로 특정 팀원에게 직접 전송, broadcast로 전원에게 일괄 전송할 수 있다. broadcast는 팀 인원수만큼의 비용이 발생하므로 공식 문서에서는 절제된 사용을 권장하고 있다.

Claude Code Agent Teams 셋업 절차 — 도해 워크플로

STEP 1
환경 변수 설정
CLAUDE_CODE_EXPERIMENTAL
_AGENT_TEAMS=1
STEP 2
CLAUDE.md 최적화
모듈 경계
파일 소유권 정의
STEP 3
팀 기동
자연어로
태스크·구성을 지시
STEP 4
Delegate Mode
Shift+Tab으로 활성화
4명 이상 팀에 필수
STEP 5
Plan Approval
팀원의 계획을
승인 or 거부
STEP 6
Hooks로 품질 게이트
TaskCompleted
TeammateIdle
팀이 자율적으로 태스크를 가져가고·실행·리뷰 → 리드가 최종 통합
✅ 베스트 프랙티스
• 팀원은 3~5명이 최적
• 1인당 5~6개 태스크 할당
• 파일 소유권을 CLAUDE.md에 명기
• broadcast는 절제하여 사용 (비용 증가)
⚠️ 흔한 실수
• Delegate Mode 미사용으로 작업 충돌
• 테스트 검증기의 정밀도 부족
• 모놀리식 태스크로 병렬화 불가
• 출력이 너무 많아 컨텍스트 오염

Claude Code Agent Teams의 비용 비교 — Subagent·팀 규모별

Agent Teams 도입 판단에서 가장 중요한 지표가 비용이다. 각 팀원이 독립된 Claude Code 인스턴스로 동작하기 때문에 토큰 소비는 팀 규모에 거의 비례한다. 아래는 동일 프로젝트(중규모 리팩토링, 약 2시간 작업)를 기준으로 한 대략적인 수치다.

구성 입력 토큰 기준 출력 토큰 기준 대략 비용 (Opus) 대략 비용 (Sonnet 혼합) 적용 상황
Subagent × 3 ~500K ~50K ~$3.75 조사·검색·단순 태스크
Agent Teams 3명 ~1.5M ~150K ~$11.25 ~$5.50 PR 리뷰·버그 조사
Agent Teams 5명 ~2.5M ~250K ~$18.75 ~$9.00 모듈 병렬 구현
Agent Teams 10명 ~5M ~500K ~$37.50 ~$18.00 대규모 프로젝트
C 컴파일러 사례 (16명×2주) 2B 140M $20,000 풀 스케일 개발

※ Sonnet 혼합: 리드만 Opus, 팀원은 Sonnet을 사용하는 구성. 공식 문서에서 권장하는 비용 최적화 패턴.

비용 비교 (동일 태스크·Opus 기준)
Subagent ×3
$3.75
Teams 3명 (Opus)
$11.25
Teams 3명 (Sonnet)
$5.50
Teams 5명 (Opus)
$18.75
Teams 10명 (Opus)
$37.50

Shared Task List의 라이프사이클 — 태스크는 어떻게 흘러가는가

Agent Teams의 핵심은 Shared Task List다. 팀원은 이 리스트에서 태스크를 자율적으로 가져가(claim), 완료하면 다음 태스크로 넘어간다. 의존 관계가 있는 경우 선행 태스크 완료까지 자동으로 블록된다.

태스크 상태 전이 플로
PENDING
태스크 대기 중
BLOCKED
의존 미완료
READY
가져갈 수 있음
IN PROGRESS
팀원이 작업 중
DONE ✓

TaskCompleted Hook (품질 게이트)
exit 0 → 완료 허가
테스트 통과
태스크가 DONE으로 전이
exit 2 → 반려
테스트 불합격
IN PROGRESS로 돌아가 수정 계속

파일 잠금을 통한 경합 방지
Teammate A
Task #3 가져감 → ✓ 잠금 성공
작업 시작
Teammate B
Task #3 가져감 → ✗ 이미 잠김
→ 다음 미할당 태스크를 자동 가져감

의존 관계 자동 해결 플로
Task A ✓완료
→ unblock →
Task B → READY
→ claim →
Task B → 작업 중
Task B ✓완료
→ Task C…

Claude Code Agent Teams 핸즈온 — 오늘부터 시도할 수 있는 3가지 실습

여기서부터는 Agent Teams를 직접 돌려보는 구체적인 절차를 보여준다. 프로젝트 규모에 관계없이 시도할 수 있다.

실습 1: 병렬 코드 리뷰 (소요 시간: 5분)

목적: 3가지 관점에서 동시에 코드 리뷰를 수행하여 누락을 최소화한다.

# 1. 환경 변수 설정 (미설정 시)
export CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1

# 2. Claude Code 실행
claude

# 3. 아래 프롬프트를 입력
Create an agent team with 3 reviewers for the latest commit:
- Reviewer 1: Check for security vulnerabilities (SQL injection, XSS, auth bypass)
- Reviewer 2: Analyze performance implications (N+1 queries, memory leaks, blocking calls)
- Reviewer 3: Validate test coverage and edge cases

Each reviewer should:
1. Read the changed files
2. Analyze from their perspective
3. Message other reviewers if they find something that overlaps
4. Report findings with severity (critical/warning/info)

Use Sonnet for all reviewers to keep costs low.

확인 포인트:

  • Ctrl+T로 태스크 리스트가 표시되는지
  • Shift+Down으로 리뷰어 간 전환이 가능한지
  • 각 리뷰어가 고유한 관점에서 코드를 분석하고 있는지

실습 2: 경쟁 가설 디버깅 (소요 시간: 10분)

목적: 원인 불명의 버그에 대해 여러 에이전트가 서로 다른 가설을 검증하여 원인을 특정한다.

# Claude Code 내에서 아래를 입력
Create a debugging team with 3 investigators for this bug:
[여기에 버그 증상을 기술. 예: "API returns 500 on POST /users when email contains unicode"]

- Investigator 1: Hypothesis - Input validation issue. Check all validation layers.
- Investigator 2: Hypothesis - Database encoding problem. Check DB schema and connection settings.
- Investigator 3: Hypothesis - Middleware error handling. Check error propagation chain.

Rules:
- Each investigator must try to PROVE their hypothesis AND DISPROVE the others
- When one finds evidence, message the others immediately
- The lead synthesizes findings when all are done

Require plan approval before investigators make any code changes.

이 실습의 포인트: 단일 에이전트는 처음 세운 가설에 고착되기 쉽지만, 3개가 상호 반론을 펼치면 사각지대가 줄어든다. adversarial debate 패턴은 Agent Teams의 가장 강력한 유스케이스 중 하나다.

실습 3: 모듈 병렬 구현 (소요 시간: 30분~)

목적: 독립된 여러 모듈을 동시에 구현하여 개발 속도를 배가시킨다.

# 사전 준비: CLAUDE.md에 모듈 경계를 정의
# 예:
# ## Module Ownership
# - src/auth/     → auth-agent only
# - src/api/      → api-agent only
# - src/database/ → db-agent only
# - src/shared/   → read-only for all (lead modifies)

# Claude Code 내에서 실행
Create an agent team to implement these 3 modules in parallel:

Task 1 (auth-agent): Implement JWT authentication in src/auth/
  - Token generation, validation, refresh flow
  - Tests in src/auth/__tests__/

Task 2 (api-agent): Implement REST endpoints in src/api/
  - CRUD for users and posts
  - Depends on: Task 1 (needs auth middleware types)
  - Tests in src/api/__tests__/

Task 3 (db-agent): Implement database layer in src/database/
  - Prisma schema, migrations, repository pattern
  - Tests in src/database/__tests__/

Use delegate mode. Require plan approval.
Use Sonnet for all teammates, Opus for lead.

Quality gate: All tasks must pass `npm test` before marking complete.

CLAUDE.md에 써야 할 내용:

항목 기술 예시 이유
모듈 경계 src/auth/ → auth-agent only 머지 충돌 방지
공유 디렉토리 src/shared/ → read-only 리드만 변경 가능하도록 설정
테스트 실행 명령어 npm test -- --module auth TaskCompleted Hook에서 사용
코딩 규약 ESLint 설정 파일 경로 모든 에이전트에서 통일
API 사양 OpenAPI 스키마 경로 모듈 간 타입 정합성 확보

TaskCompleted Hook 구현 예시

실습 3에서 사용하는 품질 게이트 Hook의 구체적인 예시. .claude/hooks/task-completed.sh에 배치한다.

#!/bin/bash
# .claude/hooks/task-completed.sh
# TaskCompleted hook: 테스트가 통과하지 않으면 태스크 완료를 차단

MODULE=$(echo "$TASK_NAME" | grep -oP '(?<=src/)[^/]+')

if [ -n "$MODULE" ]; then
  echo "Running tests for module: $MODULE"
  npm test -- --module "$MODULE" 2>&1

  if [ $? -ne 0 ]; then
    echo "Tests failed for $MODULE. Fix the failing tests before completing this task."
    exit 2  # exit 2 = 완료를 차단하고 피드백을 반환
  fi
fi

echo "All tests passed."
exit 0  # exit 0 = 완료 허가

관련 기사

소스 리스트

회원 가입(무료)으로 한정 프롬프트 모음집을 받아보세요 → 가입은 여기

🤖 AI 도입을 고민 중인 당신에게 — 30분 무료 진단

“어떤 AI 도구가 맞는지 모르겠다” “자동화할 수 있는 업무를 알고 싶다”는 분은,
Instagram의 @taro_taro609에 DM으로 “진단”이라고 메시지를 보내주세요.
30분 화상 통화로 당신의 업무에 최적인 AI 활용 플랜을 무료로 제안해 드립니다.


Instagram에서 “진단”이라고 DM하기 →


저자: 바이브코딩 태일러 (Lovable 공식 앰배서더)
운영: 태일러의 은신처 (shuntailor.net)
최종 업데이트: 2026년 3월 16일

Leave a Comment

JAKO