Claude Code, 여러 에이전트를 한 화면에서 관리하는 'Agent View' 공개
(code.claude.com)Claude Code, 여러 에이전트를 한 화면에서 관리하는 'Agent View' 공개
시연 영상 > https://youtu.be/-INveHwbRz4
TL;DR
claude agents 한 줄로 백그라운드 Claude Code 세션들을 한 화면에서 발사·감시·응답
각 세션은 터미널 없이도 살아남음 → supervisor 프로세스가 따로 돌림
워크트리로 파일 충돌 자동 격리, PR까지 띄우면 CI 상태도 행에 표시
Claude Code v2.1.139+ 필요, 현재 Research Preview
핵심 개념
"에이전트 코딩 시대"에 자연스럽게 떠오른 질문: 세션 10개를 어떻게 동시에 굴리지?
기존엔 tmux + 여러 창 + 알 수 없는 진행 상태로 인지 과부하
Agent View는 그걸 한 화면 테이블로 정리. 행마다 세션 이름, 지금 뭐 하는 중, 마지막 변경 시각
상태 아이콘 읽는 법
Animated ✽ - Working, 도구 실행/응답 생성 중
Yellow - Needs input, 권한 결정이나 질문 대기 중
Dimmed - Idle, 입력 기다리지만 특정 질문에 막힌 건 아님
Green - Completed, 정상 완료
Red - Failed, 에러로 종료
Grey - Stopped, Ctrl+X 또는 claude stop으로 정지됨
아이콘 모양으로 프로세스 생존 여부도 표시:
✻ (또는 작업 중 애니메이션 ✽) = 프로세스 살아있음, 바로 응답 가능
∙ = 프로세스 죽었지만 peek/reply/attach 시 자동으로 이어서 재기동
✢ = /loop 세션이 다음 iteration까지 슬립 중 (실행 횟수와 카운트다운 표시)
한 줄 요약은 Haiku급 모델로 생성하므로 트랜스크립트 안 열어도 상태 파악 가능. 평소 사용 약관·과금에 그대로 포함됨.
워크플로우
Dispatch: 하단 입력창에 프롬프트 → Enter. 자동으로 이름 붙음
Peek: 행에서 Space → 최근 출력, PR 링크 확인. 다지선다 질문이면 숫자키로 답변, 그 외 차단된 세션엔 Tab으로 추천 답변 채워서 보낼 수도 있음. ! 접두사 붙이면 Bash 명령도 가능
Attach: Enter 또는 → 키. 완전한 인터랙티브 세션으로 진입. 자리 비운 동안의 요약(recap)을 Claude가 먼저 띄워줌
Detach: 빈 입력에서 ← → 백그라운드 유지. Ctrl+C, Ctrl+D, Ctrl+Z, /exit 모두 백그라운드 살림. 세션을 진짜 끝내려면 /stop
기존 인터랙티브 세션을 백그라운드로 보내려면 안에서 /bg 실행하거나 빈 프롬프트에서 ← 누르면 됨. 한번 Agent View를 쓰고 나면 어떤 세션에서든 빈 프롬프트에서 ←로 Agent View 진입 가능.
디스패치 트릭
<subagent-name> <prompt> - 첫 단어가 서브에이전트면 그게 메인으로
@<agent-name> - 프롬프트 중간에 멘션해도 메인 에이전트로 동작
@<repo> - 부모 디렉토리에서 Agent View를 열고 특정 repo로 라우팅
/<skill> - Skill 디스패치 (반복 작업 패키징하기 좋음)
#1234 또는 PR URL - 이미 그 PR 작업 중인 세션이 있으면 선택, 없으면 새로 디스패치
Shift+Enter - 디스패치 + 즉시 attach
쉘에서 직접: claude --bg "...", claude --agent code-reviewer --bg "..."
리스트 필터링
입력창에 그냥 타이핑하면 디스패치 대신 필터로 동작:
a:<name> - 해당 에이전트 실행 중인 세션
s:<state> - 상태별 필터 (예: s:blocked는 입력 대기 중인 것만)
#<number> 또는 PR URL - 해당 PR 작업 세션
주요 단축키
↑ / ↓: 행 이동
Enter: 선택 세션에 attach, 입력에 텍스트 있으면 디스패치
Space: peek 패널 열기/닫기
Shift+Enter: 디스패치 후 즉시 attach
Alt+1~Alt+9: 해당 그룹의 N번째 세션에 바로 attach
Ctrl+S: 상태별/디렉토리별 그룹 전환
Ctrl+T: 세션 핀 고정/해제
Ctrl+R: 세션 이름 변경
Ctrl+G: $EDITOR에서 프롬프트 작성
Ctrl+X: 정지 (2초 내 한 번 더 누르면 삭제)
Shift+↑ / Shift+↓: 순서 변경
?: 전체 단축키 보기
파일 충돌은 worktree로 자동 격리
Agent View에서 디스패치된 세션은 편집이 필요하면 자동으로 .claude/worktrees/ 아래 git worktree 생성
세션 삭제 시 worktree도 같이 삭제됨 → 머지/푸시 안 하면 날아감 주의
서브에이전트 frontmatter에 isolation: worktree 박아두면 항상 격리
Supervisor 아키텍처
백그라운드 세션은 터미널이 아니라 유저별 supervisor 프로세스의 자식
1시간 이상 idle인 완료 세션은 프로세스만 꺼지고 디스크엔 그대로 → 다음 접속 시 이어서 재기동
supervisor 자체는 모든 세션 끝나면 종료, 다음 백그라운드 디스패치 때 다시 뜸
auto-update 시 새 바이너리로 자동 재시작, 백그라운드 세션은 그대로 살아남음
상태 파일 위치: ~/.claude/daemon.log (supervisor 로그), ~/.claude/daemon/roster.json (실행 중 세션 목록), ~/.claude/jobs/<id>/state.json (세션별 상태)
전체 비활성화는 disableAgentView 설정 또는 CLAUDE_CODE_DISABLE_AGENT_VIEW 환경변수로 가능 (조직 차원의 관리도 지원)
쉘 명령
claude agents # 에이전트 뷰 열기
claude attach <id> # 세션 붙기
claude logs <id> # 최근 출력
claude stop <id> # 정지 (= claude kill)
claude respawn <id> # 정지된 세션 재기동
claude respawn --all # 슬립/셧다운 후 전부 부활
claude rm <id> # 목록에서 제거
한계
요금은 그대로 빠짐 - 10개 병렬은 쿼터 10배 속도로 소진
백그라운드 세션은 로컬 머신에서 돔 - 슬립/셧다운 시 정지
worktree는 세션 삭제 시 같이 삭제됨