[버그] 2.1.323에서 대체 기능 없이 subagentStatusLine을 제거함: 에이전트별 컨텍스트, 비용, 모델 및 노력이 이제 보이지 않음 #10946
회귀(Regression): 2.1.323에서 아무런 이유, 대체 기능 또는 마이그레이션 경로 없이 subagentStatusLine을 조용히 제거함
발생한 일
2.1.323 변경 로그에는 다음 내용이 명시되어 있습니다:
subagentStatusLine 설정을 제거했습니다: subagent 행은 항상 기본 모양을 사용하며, 여전히 해당 키를 보유하는 설정 파일은 이전과 같이 로드됩니다.
이제 설정 스키마는 이 키를 "Deprecated: 더 이상 아무런 영향 없음. Subagent 행은 항상 기본 모양을 사용합니다."라고 설명합니다. 시작 시 경고되는 것은 없습니다. 구성된 명령은 단순히 실행을 멈추며, 사용자들은 에이전트 패널이 비어 있는 것을 보고 알게 됩니다.
2.1.322는 여전히 해당 명령을 실행합니다. 2.1.323은 이를 호출하지 않습니다.
이것이 문제가 되는 이유
subagentStatusLine은 Claude Code 내에서 사용자가 다음을 한눈에 볼 수 있는 유일한 곳이었습니다:
- 자체 창에 대한 실시간 컨텍스트 사용량
- 지금까지 소비한 양 (토큰 및 달러)
- 모델 및 추론 노력
- 상태, 나이 및 프롬프트 캐시 상태
이것이 없으면 여러 백그라운드 에이전트를 실행하는 세션은 눈이 멀어버린 것과 같습니다(flying blind). 기본 행에는 어떤 에이전트가 컨텍스트를 소모하고 있는지, 어떤 에이전트가 창에 도달할지 임박했는지, 어떤 에이전트가 고비용 모델을 사용했는지, 또는 어떤 에이전트가 만료된 캐시 비용을 조용히 재지불하고 있는지 아무것도 표시하지 않습니다.
이것은 2.1.322에서 빨간색 상자로 표시되었던 행입니다:
[IMG:N]
2.1.323 버전의 ui.render 사이트는 AskUserQuestion, UserMessage, AssistantMessage, ToolUse, ToolResult, ToolGroup, ToolProgress, CommandOutput, Spinner, TurnDuration, InfoNotice, SessionMode, PromptHint, AbovePrompt, Pane, Placed입니다. 이들 중 어느 것도 agent-panel row가 아니므로, 어떤 모드도 이 설정이 그리던 것을 그릴 수 없습니다.
#105919는 2026-10-29에 정확히 그러한 render 사이트를 요청했지만 답변을 받지 못했습니다.
이 설정의 존재를 가정하는 관련 오픈 요청들: #102183, #102890, #96895, #97634 (마지막 항목은 UI의 다른 곳에서는 서브 에이전트(subagent)의 모델을 보여주지 않는다고 언급합니다).
우리가 요청하는 것
다음 릴리스에서 subagentStatusLine을 복원해 주십시오. 이때 2.1.322와 동일한 페이로드(payload)를 포함해야 합니다 (effort, agentType, contextWindowSize 및 tokenCount 포함).
여기서도 같은 회귀 현상(regression)이 발생했습니다. 우리의 subagentStatusLine 스크립트는 실행 중인 에이전트별로 다음 정보를 보여주었습니다: 모델 + effort, 입력/출력/캐시 토큰, ≈$ 비용, 5시간/7일 제한 내에서의 점유율, 중첩된 에이전트 트리(nested-agent tree), 그리고 해당 에이전트가 구동하고 있는 외부 CLI. 하지만 2.1.323 버전에서는 이 모든 것이 보이지 않습니다.
우리가 2.1.323에서 시도한 것:
- color: agent frontmatter는 agent panel row까지 도달하지 못합니다.
- 모드 역시 해당 행들을 렌더링할 수 없습니다. 그들에게는 ui.render 사이트가 없기 때문입니다 (Pane, AbovePrompt, ToolUse 등만 존재). $.agent.list()와 agent.spawn으로 공급되는 AbovePrompt 배너는 작동하지만, 프롬프트 위에 모든 에이전트를 두 번째로 나열하고 아래의 네이티브 행들은 평범하게 유지되며, 네이티브 패널은 숨길 수 없습니다.
유일한 실제 해결책은 DISABLE_AUTOUPDATER=1을 사용하여 2.1.322를 고정하는 것이며, 이는 이후 모든 수정 기능을 포기하는 것을 의미합니다.
따라서 subagentStatusLine을 복원해 주시거나, 또는 네이티브 행에 렌더링되는 대체품을 출시해 주십시오. 예를 들어, 해당 행의 agent id, model 및 effort를 받는 agent-panel row용 모드 render 사이트(#105919)가 필요합니다.
커스텀 행은 실행 중인 서브 에이전트별로 다음 정보를 한눈에, 그리고 실시간으로 보여주었습니다: sonnet-5-5·medium · 설정을 읽는 중 · 2분 · ▃█▂ · ↓ 85.5k/1M 9%
이것이 중요한 이유: 저는 각 서브 에이전트(subagent)에 의도적으로 모델과 노력 수준을 할당합니다 (기계적인 작업을 위한 저렴한 모델, 검토를 위한 강력한 모델). 해당 행은 개별 에이전트를 하나씩 열지 않고도 각 에이전트가 실제로 무엇을 받았는지, 그리고 컨텍스트 창(context window)에 얼마나 근접했는지를 보여주는 유일한 장소였습니다. 2.1.323 버전에서는 같은 행이 '일반 목적의 설정 모듈 읽기'로 표시됩니다.
포기하기 전에 2.1.323에서 제가 확인한 사항:
- 설정이나 환경 변수(env var) 변경으로는 해당 행을 수정할 수 없습니다. 스키마는 "Deprecated: 더 이상 효과가 없음"이라고 명시합니다.
- Mods: 에이전트 패널 행에 렌더 사이트(render site)가 없으며, AgentInfo는 $.agent.list()에서 모델, 노력 또는 토큰 필드를 가지고 있지 않습니다. 따라서 프롬프트 위에 있는 배너를 재구축하려면 트랜스크립트 파일(transcript files)에서 이들을 다시 만들어야 하며, 모든 에이전트를 두 번째로 나열합니다.
- /tasks는 모델과 노력을 지정하지만 컨텍스트 사용량은 지정하지 않으며, 작업 중에는 보이지 않습니다.
- 메인 상태 표시줄(main statusLine) 내부에 행을 재구축하는 것은 작동하지만, 패널이 중복되고, 한 행으로는 에이전트를 열 수 없으며, refreshInterval에서만 새로 고침됩니다.
오늘날 해당 행이 필요한 사람들을 위한 임시 해결책: 2.1.322 버전을 고정(pin)하세요. ~/.local/bin/claude에 있는 versions/를 가리키는 심볼릭 링크(symlink)가 자동 업데이트에 의해 재지정됩니다. 그곳의 작은 래퍼 스크립트(wrapper script) (exec ~/.local/share/claude/versions/2.1.322 "$@")는 그대로 유지되며, claude doctor가 이를 확인해 줍니다. 비용은 2.1.322 이후 모든 수정 작업입니다.
요청: 이전 후크(hook)가 사라지기 전에, 서브 에이전트 상태 표시줄(subagentStatusLine)을 2.1.322 페이로드로 복원하거나, 모델, 노력, 토큰 수 및 컨텍스트 창 크기를 담는 속성(props)을 가진 패널 행에 대한 렌더 사이트를 구현해 주십시오 (#105919, #102058).
2.1.323에서 작동이 중단된 또 다른 사용 사례: 프롬프트 아래에 내장된 서브 에이전트 행을 숨기는 것입니다.
우리 중 일부는 자체 UI(모드)에서 에이전트를 표시하고, 모든 작업에 대해 빈 콘텐츠를 반환하는 명령과 함께 subagentStatusLine을 사용했는데, 이로 인해 2.1.322 버전에서는 해당 행들이 제외되었습니다. 하지만 2.1.323 버전에서는 설정이 "Deprecated: 더 이상 효과가 없음. 서브 에이전트 행은 항상 기본 모양을 사용합니다"라고 표시되어, 행들은 다시 나타났지만 이를 숨길 수 있는 지원되는 방법이 없습니다.
이것을 가능하게 유지하는 대체 기능이 도움이 될 것입니다: subagentStatusLine을 복원하거나 (빈 콘텐츠는 한 행을 숨깁니다), 또는 showSubagentRows: false와 같은 설정을 추가할 수 있습니다.