4.8. 모니터링 & 분석¶
Squad는 에이전트 팀의 성능을 이해할 수 있도록 실시간 모니터링, 상세 실행 이력, 분석 기능을 제공합니다.
모니터링 대시보드¶
Squad 모니터링 대시보드는 실행 중 제어 센터 역할을 합니다. 여섯 개의 탭으로 정보를 구성합니다:
| 탭 | 내용 |
|---|---|
| 개요 | 주요 지표, 에이전트 활동 (목록 또는 그리드), 실행 타임라인, 예산 미터, 활동 피드, 메모리 검색 |
| 채팅 | 태스크 전송 및 응답 확인을 위한 Squad 수준의 실행 채팅 |
| 태스크 | 현재 실행의 칸반 스타일 태스크 보드 |
| 워크스페이스 | Squad 워크스페이스 파일 탐색기 |
| 토론 | 구조화된 순서 기반 에이전트 대화를 위한 멀티 에이전트 토론 룸 |
| 분석 | 분석 대시보드 및 실행 이력 |
개요 탭¶
개요 탭은 Squad의 현재 상태 요약을 보여줍니다. 어떤 Squad에서든 에이전트가 도구 실행 승인을 기다리고 있으면, 탭 상단(주요 지표 위)에 승인 대기 중 섹션이 고정 표시됩니다. 이 섹션은 모든 Squad의 대기 중인 요청을 한곳에 집계하므로, 다른 Squad를 보고 있는 동안에도 승인 요청을 놓치지 않을 수 있습니다.
각 행에는 에이전트 ID, 승인을 요청한 도구 이름, 위험 수준 배지(safe, low, medium, high, critical)가 표시됩니다. 행을 클릭하면 해당 요청에 대한 승인 대화상자가 열립니다. 대기 중인 승인이 모두 처리되면 섹션은 자동으로 사라집니다.
주요 지표¶
대시보드 상단에 세 가지 핵심 지표가 한눈에 표시됩니다:
- 활성/전체 에이전트 — 전체 구성된 에이전트 중 현재 실행 중인 수
- 세션 토큰 — 현재 세션에서 모든 에이전트가 소비한 누적 토큰 수
- 실행 단계 — Squad 실행의 현재 단계 (유휴, 계획 중, 실행 중, 집계 중 등)
에이전트 활동¶
주요 지표 아래에 에이전트 활동 섹션이 있고, 섹션 헤더의 목록/그리드 토글로 두 가지 레이아웃 중 하나를 선택할 수 있습니다.
목록 보기는 에이전트를 단일 목록으로 나열합니다. 각 행에는 Squad 이름, 에이전트 이름, 상태 배지, 현재 작업 미리보기가 표시되며, 긴급도 순으로 정렬됩니다(실행 중, 승인 대기 중, 오류, 유휴 순).
그리드 보기는 에이전트를 카드 형태로 반응형 그리드에 표시합니다(모바일 1열, 태블릿 2열, 데스크탑 3열). 각 카드에는 에이전트 이름, 상태, 토큰 사용량, 마지막 활동이 표시됩니다.
두 보기 모두 같은 필터를 사용합니다:
- 이름 필터 — 에이전트 이름으로 필터링합니다 (대소문자 구분 없이, 150ms 디바운스 적용).
- 상태 칩 — Running, Waiting, Error 칩을 클릭하면 해당 상태의 에이전트만 표시됩니다. 칩에는 해당 상태의 에이전트 수가 표시되며, 해당 상태의 에이전트가 없으면 칩 자체가 사라집니다.
행이나 카드를 클릭하면 /squad/{squadId}/agent/{agentId} 경로의 에이전트 상세 뷰로 이동합니다. 에이전트가 없으면 빈 상태 메시지가 표시되고, 필터가 활성화되어 있지만 일치하는 항목이 없으면 "일치 항목 없음" 메시지가 표시됩니다.
실행 타임라인¶
에이전트 활동 섹션 아래에 실행 타임라인이 있는데, 각 에이전트의 상태 전환을 가로 방향 수영 레인으로 보여줍니다. 각 색상 블록은 전환 하나를 나타내며, 해당 상태에서 머문 시간에 비례해 너비가 결정됩니다.
색상은 에이전트 상태에 대응합니다. 실행 중은 녹색, 오류는 빨간색, 생성됨은 노란색/황색, 완료는 파란색, 유휴는 회색입니다. 블록에 마우스를 올리면 상태 레이블, 지속 시간, 타임스탬프, 오류 원인(해당하는 경우)이 담긴 툴팁이 표시됩니다.
수영 레인 아래의 시간 축은 가장 이른 기록 이벤트부터 현재까지의 상대 타임스탬프를 보여줍니다. 아직 상태 전환이 기록되지 않은 경우 안내 메시지가 표시되고, 에이전트가 실행되면 자동으로 채워집니다.
활동 피드¶
Squad 이벤트의 시간순 로그로, 다음을 포함합니다:
- 에이전트 세션 시작/중지
- 태스크 할당, 시작, 완료 또는 실패
- 메모리 업데이트
- 워크스페이스 파일 변경
- 예산 경고 및 초과
피드는 실시간으로 업데이트되며 최근 200개 항목을 유지합니다. 피드에 나타나는 이벤트 유형:
- 에이전트 시작, 완료 또는 오류
- 태스크 생성 또는 완료
- 전체 실행 완료
예산 미터¶
예산 미터(개요 탭 상단에 표시)는 Squad에 구성된 토큰 및 비용 한도에 대한 실시간 진행률을 표시합니다. Squad가 실행 중일 때 애니메이션됩니다. 한도 설정에 대한 자세한 내용은 예산 & 안전을 참조하세요.
채팅 탭¶
채팅 탭은 Squad와 대화형으로 상호작용하기 위한 인터페이스를 제공합니다. 다음 용도로 사용합니다:
- Squad에 새 태스크 또는 질문 전송
- 에이전트 실행 중 스트리밍 응답 모니터링
- 현재 세션의 대화 이력 검토
태스크 보드¶
태스크 보드 탭은 현재 실행의 모든 태스크를 칸반 스타일로 보여줍니다:
| 열 | 포함 내용 |
|---|---|
| 대기 | 의존성을 기다리는 태스크 |
| 진행 중 | 현재 실행 중인 태스크 |
| 리뷰 | 리뷰를 기다리는 태스크 |
| 완료 | 성공적으로 완료된 태스크 |
| 실패 | 오류가 발생한 태스크 |
각 태스크 카드에 표시되는 정보:
- 태스크 제목과 할당된 에이전트
- 우선순위 수준 (색상 코드)
- 다른 태스크에 대한 의존성
- 결과 요약 또는 오류 메시지 (해당하는 경우)
태스크 카드를 클릭하면 전체 설명, 출력, 로그, 토큰 사용량이 포함된 태스크 상세 패널이 열립니다.
워크스페이스 탭¶
워크스페이스 탭은 Squad 워크스페이스 디렉터리의 파일 탐색기를 제공합니다. 다음을 수행할 수 있습니다:
- 에이전트가 생성한 디렉터리와 파일 탐색 및 미리보기
- 로그, 플랜, 태스크 출력, 생성된 산출물 확인
토론 탭¶
토론 탭은 Squad의 토론 룸을 엽니다. 여러 에이전트가 공유 주제에 순서를 정해 응답하는 구조화된 대화 공간으로, 오케스트레이터가 발언 순서와 예산을 관리합니다.
토론 만들기¶
새 토론 버튼을 클릭해 생성 다이얼로그를 열고, 주제(최대 1,024바이트), 모드, 턴 예산(1~100회)을 입력합니다. 참여자는 기본으로 Squad의 전체 에이전트로 설정되며, 일부만 선택하는 것도 가능합니다.
토론 모드¶
두 가지 모드 프리셋을 제공합니다:
| 모드 | 동작 |
|---|---|
| 사회자(Moderated) | 지정된 사회자 에이전트가 발언 순서를 조율하고, 진행 상황을 요약하며, 목표 달성 여부를 판단합니다. |
| 브레인스토밍(Brainstorm) | 에이전트가 사회자 없이 응답하며, 각자 이전 응답을 발전시킵니다. Phase 2부터 이 모드는 기본으로 Autonomous 전략을 사용해, 각 에이전트가 스스로 "지금 발언할 게 있는가?"를 판단하도록 합니다. |
전략 선택기¶
모드 토글 아래에 선택적으로 전략을 지정할 수 있습니다. 기본값으로 두면 모드에 따라 엔진이 자동으로 결정되고, 직접 지정하면 오케스트레이터가 해당 엔진을 사용합니다:
| 전략 | 동작 |
|---|---|
| Moderated | 모드에 관계없이 사회자 전략을 강제합니다. |
| Brainstorm (레거시) | Phase 1의 브레인스토밍 엔진을 강제합니다. 지금까지 발언 횟수가 가장 적은 에이전트를 선택하며, 동점이면 참여자 순서로 결정합니다. LLM 호출 없이 결정론적으로 동작합니다. |
| Round Robin | 고정 순환 방식: participants[turns_taken % count]. 예측 가능한 순서로 진행되며 발언자 선택에 LLM을 쓰지 않습니다. |
| Autonomous | 각 에이전트가 짧은 LLM 게이트 호출로 이번 턴에 발언할지를 독립적으로 결정합니다. 먼저 "발언하겠다"고 답한 에이전트(참여자 순서 기준)가 발언권을 얻으며, 모두 "발언 없음"이면 룸이 awaiting user 상태로 전환됩니다. 첫 번째 턴: 게이트를 건너뛰고 첫 번째 참여자가 결정론적으로 토론을 개시하므로, 새로 만든 룸이 아무 에이전트도 발언하지 못한 채 조용히 멈추는 일이 없습니다. 두 번째 턴부터는 위에 설명한 게이트 방식으로 발언자를 선정합니다. 브레인스토밍 모드의 기본 엔진입니다. |
기본값 설정은 Moderated 모드를 사회자 전략으로, Brainstorm 모드를 Autonomous 전략으로 매핑합니다. 명시적으로 전략을 지정하면 이 매핑을 무시하고, 사용자가 기본값으로 되돌리거나 룸이 중지될 때까지 해당 전략이 유지됩니다.
토론 상태¶
상태 배지는 오케스트레이터의 상태를 반영합니다: idle, running, paused, awaiting user, completed, cancelled, error. 상단의 제어 버튼(시작, 일시정지, 재개, 중지)이 허용된 전환 상태에 매핑됩니다.
사용자 메시지 주입¶
토론이 진행 중일 때 입력창에 메시지를 입력하면 에이전트 발언 대기열에 추가됩니다. 메시지는 다음 턴 경계에서 처리됩니다. 최대 10개까지 대기할 수 있으며, 입력창 위의 스트립에서 취소 아이콘을 클릭해 소비 전에 제거할 수 있습니다.
종료 조건과 자동 완료¶
다음 조건 중 하나를 만족하면 토론이 종료됩니다:
- 턴 예산 소진 (상태가
awaiting user로 전환되며, 메시지를 주입하면 다음 예산 사이클이 다시 시작됩니다). - 사용자가 중지 버튼 클릭 (상태:
cancelled, 이유:UserStopped). - 합의 게이트 작동: Moderated 모드에서 오케스트레이터가 3턴마다 사회자 에이전트에게 그룹이 합의에 도달했는지 묻습니다. 신뢰도가 0.8 이상이면
completed로 전환되며 이유는ConsensusReached입니다. - 유휴 감시자(watchdog) 작동: 새 메시지도, 대기 중인 입력도 없이 5분이 지나면
IdleTimeout이유로 자동 완료됩니다. awaiting user상태에서 대기 메시지 없이 10분이 경과하면BudgetExhausted이유로 자동 완료됩니다.
종료 이유는 히스토리 패널의 토론 카드에 상태 배지로 표시됩니다.
결론 합성¶
토론에 메시지가 하나 이상 있으면 Phase 3 패널의 결론 합성 버튼으로 사회자 에이전트에게 LLM 호출을 시작할 수 있습니다. 사회자는 전체 대화록(매우 긴 경우에는 앞부분+뒷부분 발췌)을 읽고, 요약·핵심 사항·결정·액션 아이템(담당 에이전트 선택 포함)으로 구성된 구조화된 결론을 반환합니다. 결론은 룸에 저장되며 대화록 아래에 카드로 렌더링됩니다. 언제든지 다시 합성할 수 있으며, 새 호출 결과가 이전 결론을 덮어씁니다.
Squad 실행으로 인계¶
결론이 합성된 후 실행 시작 버튼을 클릭하면 토론 결과를 Squad 실행 엔진으로 인계합니다. 백엔드가 주제·요약·결정·액션 아이템을 요청 문자열로 조합해 submit_squad_request에 제출합니다. 요청 문자열은 8 kB로 제한되어 플래너의 길이 검증을 항상 통과합니다. 성공 알림에 새 실행 ID가 표시되며, 클릭하면 실행 화면으로 이동합니다.
자동 승인 토글(기본값: 꺼짐)은 플래너의 분해 결과를 즉시 실행할지 검토 후 진행할지 결정합니다.
대화록 내보내기¶
내보내기 버튼을 클릭하고 형식을 선택합니다:
| 형식 | MIME 타입 | 용도 |
|---|---|---|
| Markdown | text/markdown | PR 설명, 위키, 문서에 바로 삽입 |
| JSON | application/json | 기계 가독 형식; 디스크 상의 룸 파일과 바이트 동일 |
| Plain text | text/plain | 이메일 본문, 콘솔 로그 |
다운로드 파일 이름은 discussion-{short-id}-{주제}.{확장자} 형식이며, 주제 부분은 영문 영숫자 40자로 제한됩니다.
토론 분석¶
Phase 3 패널에 토론별 분석 카드가 표시됩니다:
- 전체 메시지 수와 에이전트 발언 수
- 에이전트별 발언 횟수와 토큰 사용량 (프롬프트 + 컴플리션)
- 전체 대화록 토큰 사용량
- 합성 토큰 사용량 (대화록 합계와 별도로 표시되므로 결론 호출 비용을 따로 확인 가능)
- 토론 소요 시간 (종료 상태에 도달한 경우에만 표시)
- 전략 변경 이력 (각 턴에서 어떤 전략이 활성화되었는지)
토론 히스토리¶
토론 룸 왼쪽 사이드바에 Squad의 완료, 취소, 오류 상태 룸이 최신순으로 나열됩니다. 각 카드에는 주제, 상태 배지, 종료 이유, 참여자 수, 메시지 수, 타임스탬프가 표시됩니다. 카드를 클릭하면 메인 패널에 전체 대화록과 결론이 로드됩니다. 목록은 페이지당 최대 50개씩 표시되며 룸이 종료 상태에 도달하면 자동으로 갱신됩니다.
분석 탭¶
분석 탭은 실행 이력과 분석 대시보드를 함께 제공합니다.
실행 이력¶
실행 이력 패널은 Squad의 모든 과거 실행을 나열합니다:
- 요청 텍스트 또는 플랜 제목으로 검색
- 상태별 필터 (완료, 실패, 취소)
- 요약 표시: 요청, 태스크 수, 토큰 사용량, 소요 시간
항목을 클릭하면 실행 상세 드로어가 확장되어 표시됩니다:
- 원래 요청과 생성된 플랜
- 태스크별 결과와 산출물
- 에이전트별 토큰 사용량 분석
- 에이전트와 심각도로 필터링 가능한 실행 로그
- 시작부터 완료까지의 소요 시간
리포트 생성¶
모든 실행에서 리포트 생성을 클릭하면 다음을 포함하는 마크다운 요약이 생성됩니다:
- 실행 개요 (요청, 상태, 소요 시간)
- 태스크 목록이 포함된 플랜 요약
- 각 태스크의 결과
- 토큰 사용 통계
- 생성된 산출물
리포트는 워크스페이스에 저장되며 팀과 공유할 수 있습니다.
분석 대시보드¶
분석 대시보드는 여러 실행의 데이터를 집계하여 성능 트렌드를 보여줍니다.
사용 가능한 지표¶
- 총 실행 수 — 완료, 실패, 취소된 실행의 수
- 성공률 — 성공적으로 완료된 실행의 비율
- 평균 소요 시간 — 밀리초 단위의 평균 실행 시간
- 총 토큰 — 누적 토큰 소비량
에이전트별 토큰 사용량¶
토큰이 에이전트 간에 어떻게 분배되는지 보여주는 분석. 어떤 에이전트가 가장 많은 리소스를 소비하는지, 분배가 기대에 부합하는지 확인할 수 있습니다.
일별 사용량¶
일별 실행 수와 토큰 사용량을 보여주는 막대 차트로, 시간에 따른 사용 트렌드를 파악하는 데 유용합니다.
기간 선택¶
기간별로 분석을 필터링합니다:
- 일 — 최근 24시간
- 주 — 최근 7일
- 월 — 최근 30일
- 전체 — 기록된 모든 이력