
#16에서 워크스페이스를 나누는 기준을 정리했다. planner → builder → MVP 별도 워크스페이스. 그런데 이걸 하다 보니 궁금해졌다.
"이거 멀티에이전트 아닌가?"
유튜브를 보면 "AI 직원을 고용했다", "에이전트 팀을 만들었다"는 얘기가 많다. 내가 워크스페이스를 나눠서 하는 것과 뭐가 다른 건지 정리해봤다.
Claude Code에서 서브에이전트는 하나의 작업(task)이다. 메인 세션에서 "이거 조사해줘"라고 시키면 별도 에이전트가 돌아가고, 결과를 가져다준다.
메인 세션: "이 파일들에서 버그 찾아줘"
↓
서브에이전트: (파일 3개를 탐색하고 결과 반환)
↓
메인 세션: "결과 확인했다. 여기 고칠게."
특징:
서브에이전트는 "팀원"이 아니라 "심부름"에 가깝다. 하나의 세션 안에서 벌어지는 일이다.
#16에서 한 게 이거다. planner, builder, MVP 워크스페이스를 따로 두고, 사람이 직접 전환한다.
planner: "이미지 처리 도구가 필요하다"
↓ (to-builder.md에 설계서 작성)
builder: "spec 정리할게"
↓ (별도 워크스페이스 열기)
image-tool: "구현 시작"
특징:
이건 "멀티에이전트"라고 부를 수 있다. 다만 라우팅을 사람이 한다.
흔히 말하는 "AI 직원 팀"은 대부분 이거다. 멀티에이전트 프레임워크(AutoGen, CrewAI 같은 도구)가 에이전트 여러 개를 연결해서 돌린다.
오케스트레이터: "리서치 에이전트, 조사해"
↓
리서치 에이전트: "결과 나왔다"
↓
오케스트레이터: "라이터 에이전트, 글 써"
↓
라이터 에이전트: "초안 완성"
특징:
"자동"이라는 말이 헷갈릴 수 있다. 에이전트가 동시에 돌아가는 게 아니라, 누가 다음에 할지를 코드가 정해주는 것이다.
| 서브에이전트 | 워크스페이스 분리 | 멀티에이전트 프레임워크 | |
|---|---|---|---|
| 단위 | task (작업) | project (프로젝트) | workflow (워크플로우) |
| 라우터 | Claude | 사람 | 코드 |
| 통신 | 동기 (세션 내) | 비동기 (파일) | 대부분 동기 |
| 맥락 | 공유 | 분리 | 분리 |
| 설정 | 없음 | CLAUDE.md + 메모리 | 코드로 정의 |
지금 단계에서는 워크스페이스 분리로 충분하다.
서브에이전트는 이미 Claude Code가 알아서 쓰고 있다. 멀티에이전트 프레임워크는 반복적인 워크플로우가 확정된 뒤에 도입해도 늦지 않다.
워크스페이스 분리의 장점은 유연하다는 거다. 프레임워크처럼 미리 워크플로우를 짤 필요 없이, 필요할 때 워크스페이스를 열고 닫으면 된다. 라우팅을 사람이 하니까 상황에 따라 바꿀 수 있다.
멀티에이전트 프레임워크가 필요한 시점은 같은 작업을 매번 반복할 때다. "리서치 → 초안 → 감수 → 게시"처럼 순서가 고정된 워크플로우가 생기면, 그때 자동화를 고려해도 된다.
에이전트 간 통신 표준은 여러 개 나왔고 합쳐지는 중이지만, 아직 정리가 안 됐다. 지금 당장 신경 쓸 필요는 없다.
"에이전트 팀을 만들었다"는 말의 대부분은, 사람이 라우터 역할을 하거나 코드로 순서를 정해놓은 것이다. 에이전트끼리 자율적으로 소통하는 건 되기 시작했지만, 아직 일반적이지는 않다.
이 글은 Claude Code 플레이북을 만들면서 배운 것을 비개발자 시점으로 정리한 시리즈입니다.