# 멀티세션은 병렬성이 아니라 간섭 제거다

> worktree·백그라운드 세션·subagent·분기가 각각 격리하는 대상

- Canonical: https://learning.reopt.ai/courses/claude-code-multi-session/lessons/ccms-m1-concept
- Language: ko-KR
- HTML: https://learning.reopt.ai/courses/claude-code-multi-session/lessons/ccms-m1-concept

---

[멀티세션 운영](/courses/claude-code-multi-session) 1. 격리 층위를 먼저 고른다 1 / 9

# 멀티세션은 병렬성이 아니라 간섭 제거다

worktree·백그라운드 세션·subagent·분기가 각각 격리하는 대상
개념 학습 45 XP 9분

세션을 두 개 띄우는 순간 병목은 모델이 아니라 작업 디렉토리 로 옮겨갑니다. 같은 체크아웃에서 두 세션이 동시에 파일을 고치면 서로의 편집을 덮어쓰기 때문입니다. 그래서 멀티세션의 핵심은 동시에 많이 돌리기가 아니라 간섭할 수 있는 것을 미리 분리하기입니다. Claude Code는 파일을 git worktree 로, 프로세스를 백그라운드 세션으로, 대화 컨텍스트를 /branch 로 각각 다른 층위에서 격리합니다. 첫 질문은 몇 개를 띄울까가 아니라 이 작업은 어느 층위에서 충돌하는가 여야 합니다.
격리는 충돌하는 층위에서만 건다 충돌 지점이 파일이면 worktree, 응답 대기 시간이면 백그라운드 세션, 컨텍스트 오염이면 분기나 subagent를 씁니다. 층위가 다른 도구를 고르면 격리한 척만 하고 원래 충돌은 그대로 남습니다.

| 메커니즘 | 격리하는 것 | 고르는 기준 |
| git worktree (--worktree) | 작업 디렉토리와 브랜치 | 두 작업이 같은 파일을 고칠 때 |
| Agent View (claude agents) | 백그라운드 세션 프로세스 | 응답 대기 시간이 아까울 때 |
| subagent / agent team | 한 세션 안의 작업 단위 | 한 맥락에서 조사를 분산할 때 |
| /branch (구 /fork) | 대화 컨텍스트 사본 | 같은 맥락에서 다른 방향을 볼 때 |
| tmux | 터미널 세션 | Agent View를 쓰지 않는 환경일 때 |

격리 단위가 다르므로 문제가 실제로 생기는 층위에 맞춰 고릅니다.

- 1 충돌 지점 지목 같은 파일인지, 대기 시간인지, 컨텍스트인지 한 줄로 먼저 적습니다.

- 2 층위 매칭 파일 충돌에는 worktree를, 대기 시간에는 백그라운드 세션을 배정합니다.

- 3 병렬도 상한 구현+리뷰 2개, 독립 기능 3개를 기본 상한으로 두고 초과 사유를 적습니다.

- 4 종료 조건 선언 시작 전에 무엇을 커밋·푸시하고 나올지를 한 줄로 정해 둡니다.

실무에 남길 기준

- 멀티세션의 목적은 병렬성 자체가 아니라 간섭 제거다
- 4개 이상 동시 실행은 단순 반복 작업에서만 제한적으로 쓴다
- 격리를 시작하는 시점에 이미 정리 시점이 정해져 있어야 한다

이해했어요 · 계속

---

에이전트용 사이트 안내: https://learning.reopt.ai/llms.txt · 사이트맵: https://learning.reopt.ai/sitemap.xml · 문의: https://learning.reopt.ai/contact
