클로드 코드 에이전트 팀은 여러 Claude Code 세션을 팀처럼 구성해 복잡한 작업을 역할별로 나누어 처리하는 구조로 팀 리드와 팀원 에이전트가 함께 움직이며 공유 작업 목록, 메시징, 실행 도구를 통해 협업합니다.
1. 팀 리드 에이전트
팀 리드 에이전트는 사용자의 명령을 이해하고 전체 작업 방향을 조율하는 중심 역할을 합니다.“신규 앱을 기획해줘”, “기능 구현과 테스트까지 진행해줘”처럼 요청하면 작업을 어떤 순서로 나눌지 판단하고, 각 팀원 에이전트에게 역할을 배정합니다. 쉽게 말해 Claude Code Agent Teams 안에서 프로젝트 매니저처럼 전체 흐름을 관리하는 역할입니다.
2. 팀원 에이전트
팀원 에이전트는팀 리드가 배정한 역할에 따라 각자 독립된 컨텍스트에서 작업을 수행합니다.예를 들어 시장 분석가, 기능 기획자, 프론트엔드 개발자, 백엔드 개발자, QA 담당자처럼 역할을 나눌 수 있습니다.
각 팀원은 자신의 작업 공간에서 파일을 분석하고 결과물을 만든 뒤, 팀 리드나 다른 팀원에게 작업 내용을 전달합니다.
3. 프로젝트 코드베이스와 실행 도구
Agent Teams의 각 에이전트는프로젝트 폴더를 기준으로 파일 구조와 코드 흐름을 확인합니다. 또한 파일 읽기, 코드 수정, 터미널 명령 실행 같은 도구를 활용해 실제 작업을 진행할 수 있습니다.
예를 들어 프론트엔드 에이전트는 화면 관련 파일을 수정하고, QA 에이전트는 테스트 명령을 실행해 결과를 확인하는 방식으로 역할을 나눌 수 있습니다.
4. 하네스 엔지니어링
하네스 엔지니어링은 에이전트가 어떤 기준으로 판단하고 움직일지 미리 설계하는 과정을 말합니다. 에이전트가 임의로 판단해 엉뚱한 방향으로 작업하는 것을 줄이고, 여러 에이전트가 일관된 기준으로 결과물을 만들 수 있도록 돕는 핵심 장치 역할을 합니다.
예를 들어 CLAUDE.md에는 프로젝트 목표, 에이전트의 역할, 사용할 도구, 출력 형식, 작업 순서, 검증 기준 등을 구체적으로 정의해둘 수 있습니다. 필요하다면 agent.md같은 별도 마크다운 파일을 만들어 팀 리드와 팀원 에이전트의 역할, 파일 소유권, 릴레이 순서까지 더 자세히 정리할 수 있습니다.
5. 확장 기능
작업이 복잡해질 때는 Subagent, Skills, MCP 같은 확장 기능을 함께 활용할 수 있습니다. Subagent는 단일 Claude Code 세션 안에서 특정 작업을 맡아 격리된 컨텍스트로 처리하고 요약을 반환하는 보조 기능입니다.
Skills는 특정 작업을 반복적으로 수행하기 위한 재사용 가능한 지식과 워크플로우를 추가하는 기능이고, MCP는 Claude Code를 외부 도구나 데이터 소스와 연결하는 확장 방식입니다. 이 기능들을 함께 활용하면 에이전트 팀의 자동화 범위를 더 넓힐 수 있습니다.
많은 서브에이전트를 실행하고 그 결과를 교차 검증하는 스크립트로, 한 번에 조율하기에는 너무 큰 작업용입니다. 한 번의 패스 이상이 필요한 작업용입니다
작업이 소수의 서브에이전트로는 조율할 수 없을 때, 또는 결과를 서로 검증하고 싶을 때: 코드베이스 전체 감사, 500개 파일 마이그레이션, 교차 검증된 연구, 또는 여러 각도에서 작성된 계획
모든 접근 방식에서 작업자는 Claude 세션입니다. 다른 도구를 포함하려면MCP 서버로 Claude에 노출하세요.이 작업을 지원하지만 에이전트를 실행하는 방식이 아닌 두 가지 추가 도구가 있습니다:
Worktrees는 각 세션에 별도의 git 체크아웃을 제공하므로 병렬 세션이 동일한 파일을 편집하지 않습니다. 직접 실행하는 세션에 사용하세요. 에이전트 뷰는 각 디스패치된 세션을 자동으로 자신의 worktree로 이동하고, 생성하는 서브에이전트도 각각 하나씩 얻을 수 있습니다.
/batch는 Claude가 하나의 큰 변경을 5~30개의 worktree 격리 서브에이전트로 분할하여 각각 pull request를 열도록 하는스킬입니다. 이는 서브에이전트와 worktree의 패키지된 사용이지, 별도의 조율 스타일이 아닙니다.
다른 몇 가지 기능은 각 단계를 직접 운영하지 않고 Claude를 실행하지만, 에이전트 간 작업 분할과는 다른 문제를 해결합니다:
백그라운드 bash 명령은 대화를 차단하지 않고 하나의 셸 명령을 실행합니다. 에이전트를 생성하지 않습니다.
포크된 서브에이전트는 처음부터 시작하는 대신 전체 대화 컨텍스트를 상속하는 서브에이전트입니다. 서브에이전트를 생성하는 방식이지, 별도의 표면이 아닙니다.
루틴은 머신에서 병렬로 실행되지 않고 Anthropic의 클라우드에서 일정에 따라 세션을 실행합니다.
인생 첫 여행, 첫 숙소가 기숙사였다. 누나가 상하이의 한 대학에서 어학연수를 하고 있었는데 여름방학에 놀러 오면 기숙사에서 재워줄 수 있다고 했다. 허울만 대학교 1학년생이지 고등학교 4학년이란 표현이 더 어울렸던 어수룩한 청춘은 오직 숙소 값을 아껴보겠단 일념으로 첫 여행지를 무작정 상하이로 정했다. 누나랑 한 침대를 쓰는 대참사는 피해야 하니 낯선 기숙사 방바닥에서 밤을 보냈다.
- 태원준의《매일 떠나는 여행》중에서 -
* 누구나 인생의 첫 여행이 있겠지요? 첫날 밤을 보낸 숙소도 잊지 못할 것입니다. 설레며 떠난 여행은 고생도 했겠지만 풋풋한 추억으로 남아 있습니다. 인생길도 마찬가지일 것 같습니다. 힘들고 아팠던 일들도 훗날 돌이켜 보면 참으로 소중한 추억입니다. 누나의 기숙사에서 보낸 첫날 밤의 추억처럼 말입니다.
우리는 무언가를 상실하고 그 현실을 스스로 바꿀 수 없을 때 슬퍼한다. 그래서 명성, 돈, 사회적 지위, 관계, 특정한 사람 등, 과거나 현재에 자신에게 중요한 것을 잃으면 슬퍼한다. 진화심리학자들은 슬픔이 생각을 재정비하는 데 도움이 된다고 말한다. 슬픔에 유익한 면이 있다는 사실은 연구로도 뒷받침된다.
- 바버라 블래츨리의《슬픔의 발견》중에서 -
* 슬픔은 눈물을 동반합니다. 그 눈물은 때로 카타르시스입니다. 한바탕 울고 나면 슬픔이 씻은 듯 사라지기도 합니다. 그러나 슬퍼도 눈물이 말라 울음조차 없을 때도 있습니다. 그럴 때는 충분히 슬플 수 있게 허용해야 합니다. '애도 기간'이 필요한 이유입니다.