Skip to main content
블로그로 돌아가기
블로그

Mission Control: 어느 에이전트가 당신을 필요로 하는지 잃지 않기

여섯 에이전트를 실행하면 캔버스가 정작 중요한 질문 — 지금 누가 당신을 필요로 하는지 — 에 답하지 못합니다. Fleet의 상태 그룹핑과 대기 중 질문 끝이 이를 어떻게 고치는지.

캔버스에 두 에이전트는 지켜보기 쉽습니다. 여섯은 다른 문제입니다. 캔버스는 공간적 레이아웃 — 타일이 놓인 곳에 흩어진 — 이지만, 실제로 답이 필요한 질문은 "모든 것이 어디에 있나"가 아니라 "지금 누가 나에게 막혀 있나"입니다. 공간 레이아웃은 상태 질문에 답하지 않습니다. 결국 타일을 하나씩 훑게 되고, 훑는 것은 확장되지 않습니다.

이것이 한 에이전트 실행에서 그들의 플릿을 오케스트레이션하는 순간 나타나는 주의 관리 문제입니다. 세 화면 왼쪽에서 대답 없이 앉아 있는 권한 프롬프트는 타일 4번에 집중하는 동안 아무 비용도 안 듭니다 — 10분 뒤, 당신이 본 적도 없는 yes/no를 기다리며 에이전트가 유휴 상태였다는 것을 알아챌 때까지.

MadoHub의 답은 Mission Control, Fleet 패널입니다. 실제로 어떻게 작동하는지 짚어볼 가치가 있습니다, 왜냐하면 설계 선택이 문제에 직접 대응하기 때문입니다.

MadoHub이 다루는 방법

위치가 아닌 상태로 묶기

Mission Control의 핵심 움직임은 에이전트를 공간적으로 조직하는 것을 멈추고 상태로 조직하는 것입니다. 모든 에이전트 타일은 정확히 여섯 그룹 중 하나에 놓이며, 항상 같은 고정 순서로 렌더링됩니다:

그룹의미닷 색상
Needs inputyes/no, 권한, 또는 다른 프롬프트를 기다리는 중주황색
Working턴 중간강조
Done턴을 끝내고 리뷰 대기녹색
Failed오류에 부딪힘빨간색
Idle아무것도 안 함흐릿함
Exited프로세스가 사라짐흐릿함, 더 어두움

빈 그룹은 헤더를 아예 렌더링하지 않습니다 — "Failed (0)"이 자리만 차지하는 것을 보지 않습니다. 순서 자체가 분류 우선순위를 인코딩합니다: 10분간 권한 프롬프트에 앉아 있던 에이전트가 즐겁게 작업 중인 에이전트 위에, 그것이 또 이미 끝나서 당신이 보기만 기다리는 에이전트 위에 나타납니다. 실제로 행동해야 할 순서로 목록을 내려 읽습니다.

접힌 배지는 의도적으로 "총 에이전트 수"가 아닙니다. 입력을 기다리는 타일이 있으면 주황색 배지로 그 수를 보여줍니다 — 끼어들 만한 가치가 있는 숫자. 그렇지 않으면 실행 중인 모든 타일 수를 흐릿한 텍스트로 보여줍니다. 실행 중인 모든 것이 동등한 주의를 받을 자격이 있는 건 아닙니다: 조용히 작업 중인 타일은 주의가 필요 없고, 프롬프트에 막힌 타일은 그 모든 주의가 즉시 필요합니다.

있다는 것만이 아닌 실제 질문 보여주기

상태로 묶는 것은 에이전트가 입력이 필요하다는 것을 알려줍니다. 무엇을 묻고 있는지는 알려주지 않습니다 — 그리고 그 간격이 사람들을 결국 질문을 읽기 위해 타일로 전환하게 만들어, 분류 패널의 요점을 무효화합니다.

Mission Control은 그 간격을 닫습니다. Needs Input 그룹의 모든 행에 대해, 해당 타일 터미널 출력의 마지막 몇 줄을 보여줍니다. 실제로 그것은 거의 항상 실제 대기 중인 질문 — (y/n), "Allow once / Allow always / Deny" 선택, 비슷한 것 — 이며, 행 바로 아래 작은 주황색 테두리 블록으로 렌더링됩니다. 이것이 "에이전트 3이 입력 필요"와 "에이전트 3이 rm -rf node_modules 해도 되는지 묻고 있다 — 네, 당연히, 진행"의 차이입니다. 하나는 패널을 떠나지 않고 결정할 수 있고; 다른 하나는 필요 없던 컨텍스트 전환을 강제합니다.

한 번의 클릭으로 타일로 이동

행이 행동할 만하면, 클릭하면 캔버스 뷰포트를 해당 타일로 직접 이동하고 줌합니다 — 패널의 "에이전트 X가 나를 필요로 해"에서 에이전트 X의 터미널을 보는 것까지 한 번의 클릭, 열두 개 타일이 있는 캔버스를 헤맬 필요 없이. 상태 그룹핑은 무엇이 주의가 필요하고 어떤 순서인지 알려주고, 대기 중 질문 끝은 실제 질문을 알려주고, 타일로 이동 클릭이 당신을 데려다 줍니다.

배지 넘침 없이 라이브 Dynamic Workflows 진행

Claude Code 자체의 Dynamic Workflows 기능은 단일 Claude 세션을 여러 동시 서브에이전트로 펼칠 수 있습니다. MadoHub은 이것을 생성하거나 실행하지 않습니다 — Claude Code의 기능이지 MadoHub의 것이 아닙니다 — 하지만 서브에이전트 활동을 감지하고 서브에이전트마다 일반 알림을 촉발하는 대신 타일당 하나의 진행 라인으로 합쳐, 수십 개 서브에이전트가 있는 실행이 캔버스를 배지로 넘치지 않게 합니다.

Mission Control은 타일에 활성 실행이 있을 때마다 행 아래 활동 라인 아래에 그 진행을 보여줍니다:

workflow · 3/5 agents

두 숫자는 해당 타일에서 지금까지 본 개별 서브에이전트 스레드 중 터미널 상태에 도달한 서브에이전트 수입니다. 라인은 실행이 활성인 동안에만 나타나고, 종료되면 자동으로 사라집니다. 같은 타일에 새 워크플로 시작은 누적하는 대신 두 카운터를 0으로 재설정합니다.

실용적 안내

  • 순서대로 목록을 내려 읽으세요. 그룹 순서가 분류 순서입니다 — needs input 먼저, 그 다음 working, 그 다음 done. "needs input"이 비워질 때까지 "done" 행으로 뛰지 마세요.
  • 가능하면 끝에서 결정하세요. 대기 중인 질문이 어차피 승인할 일상적 권한이라면, 종종 머릿속으로 답하고 확인만 하려 타일로 날아가거나 — 어차피 방문할 타일을 위해 패널 방문을 아예 건너뛸 수 있습니다.
  • 접힌 배지를 인터럽트 신호로 사용하세요. 주황색 숫자를 "하던 일 멈추고 확인"으로 취급하세요. 0은 집중을 유지할 수 있음을 뜻합니다.
  • 일반 셸을 기대하지 마세요. 일반 터미널 타일은 Mission Control에 절대 나타나지 않습니다 — 에이전트 CLI로 인식된 타일만 나타나, 패널이 스크래치 터미널로 어수선하지 않습니다.

이들 어느 것도 개별적으로 복잡하지 않습니다 — 상태로 묶기, 출력의 마지막 몇 줄 보여주기, 클릭 시 타일로 이동. 가치는 제거하는 것에 있습니다: 여섯 타일 분량의 상태를 머릿속에 담아두기, 막힌 것을 찾아 캔버스 훑기, 사이드바에서 읽을 수 있었던 질문을 읽으려 타일 열기.

Mission Control의 펼침/접힘 상태는 의도적으로 유지되지 않습니다 — 매 신선한 실행이 접힌 채로 시작해 배지만 보여줍니다. 그것이 한 질문에 빠르게 답하고 길을 비키는 일이 전부인 패널을 위한 올바른 기본값입니다.

관련 문서