팀원 에이전트가 idle notification을 과도하게 자주 보내서 사용자 경험을 해치는 문제

Resolved 💬 3 comments Opened Feb 12, 2026 by coverboy Closed Mar 14, 2026

문제 상황

팀원 에이전트들이 작업을 완료하거나 대기 상태가 될 때마다 매우 짧은 간격(2-5초)으로 반복적으로 idle notification을 전송하여 사용자에게 스팸처럼 느껴집니다.

재현 방법

  1. 팀 생성 (t1, t2, t3)
  2. 팀원에게 작업 지시 또는 메시지 전송
  3. 팀원이 작업 완료 후 idle 상태로 전환
  4. 2-5초 간격으로 계속 idle notification 발생

실제 로그 예시

\\\`
<teammate-message teammate_id="t1" color="blue">
{"type":"idle_notification","from":"t1","timestamp":"2026-02-12T05:22:25.366Z","idleReason":"available"}
</teammate-message>

<teammate-message teammate_id="t1" color="blue">
{"type":"idle_notification","from":"t1","timestamp":"2026-02-12T05:22:31.272Z","idleReason":"available"}
</teammate-message>

<teammate-message teammate_id="t1" color="blue">
{"type":"idle_notification","from":"t1","timestamp":"2026-02-12T05:22:35.723Z","idleReason":"available"}
</teammate-message>

<teammate-message teammate_id="t1" color="blue">
{"type":"idle_notification","from":"t1","timestamp":"2026-02-12T05:22:43.563Z","idleReason":"available"}
</teammate-message>
\\\`
→ 18초 동안 4번의 idle notification (평균 6초 간격)

예상 동작

  • 팀원이 idle 상태가 되면 1회만 notification 전송
  • 또는 적절한 쿨다운 시간 설정 (최소 30초-1분)
  • 리더 에이전트가 이미 인지한 idle 상태는 재전송하지 않음

실제 동작

  • 동일한 idle 상태를 짧은 간격으로 반복 전송
  • 사용자가 다른 작업을 진행하는 동안 계속 방해
  • "빨리 중지 못시켜?" 같은 불만 유발

문제점

  1. 사용자 경험 저하: 스팸처럼 느껴지는 반복 알림
  2. 대화 흐름 방해: 사용자-리더 대화 중 팀원 알림이 끼어듦
  3. 불필요한 컨텍스트 소비: 동일한 idle 상태 메시지가 반복적으로 컨텍스트 차지
  4. 제어 불가: 사용자가 알림 빈도를 조절할 방법 없음

발생 조건

  • 팀원이 작업 완료 후 대기 상태
  • 팀원이 메시지 수신 후 응답 완료
  • shutdown request 전송 후 승인 대기 중

제안 개선사항

  1. 중복 방지: 같은 상태(idle/available)는 1회만 알림
  2. 쿨다운 설정: 최소 30초-1분 간격으로 제한
  3. 배치 처리: 여러 팀원의 idle 상태를 모아서 한 번에 알림
  4. 알림 레벨 설정: 사용자가 알림 빈도를 조절할 수 있는 옵션 제공
  5. 컨텍스트 최적화: idle notification을 JSON으로만 표시하지 말고 요약 형태로

추가 제안

  • 리더 에이전트가 idle notification을 받았을 때 자동으로 응답하지 않도록 개선
  • "Idle teammates are normal and expected" 같은 시스템 가이드가 있지만 실제로는 계속 알림이 발생

환경

  • Claude Code CLI
  • Team 기능 사용
  • in-process backend type 팀원

View original on GitHub ↗

This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗