claudekit / updates / claude-code-2-1-166
[ PATCH · ]

Claude Code 2.1.166

`fallbackModel` 설정으로 최대 세 개의 폴백 모델을 순서대로 시도할 수 있고, `--fallback-model`이 인터랙티브 세션에도 적용됩니다. deny 규칙 도구명 위치에 glob 패턴을 지원해 `"*"`로 모든 도구를 차단할 수 있고, `SendMessage`로 전달된 메시지는 더 이상 사용자 권한을 가지지 않습니다. `MAX_THINKING_TOKENS=0`, `--thinking disabled`, 모델별 thinking 토글이 기본 thinking 모델에서도 thinking을 꺼주고, API가 예기치 않은 non-retryable 오류를 반환하면 폴백 모델로 한 번 재시도합니다. 그 외 원격 세션 worker 등록 중단, JetBrains 2026.1+ 깜빡임, Kitty 키보드 프로토콜의 Shift+비ASCII 누락, 매니지드 설정의 잘못된 항목 한 줄이 전체 강제 적용을 무효화하던 문제 등이 정리되었습니다.

공식 발표 →

이 글은 공식 문서를 바탕으로 요약·정리한 내용입니다.

무엇이 바뀌었나?

Claude Code 2.1.166이 2026년 6월 6일 출시됐습니다. 모델 폴백 동작이 정식 설정으로 들어오고, deny 규칙의 도구명 매칭과 세션 간 메시지 권한 모델이 더 엄격해졌습니다. 그 외 원격 세션 worker 등록, JetBrains 2026.1+ 터미널, Kitty 키보드 프로토콜 입력, 매니지드 설정 검증 등 운영에 영향이 큰 회귀가 함께 정리됐습니다.

새 기능

  • fallbackModel 설정과 인터랙티브 세션 폴백

    주 모델이 과부하나 사용 불가 상태일 때 폴백 모델로 전환하는 동작이 일관되게 제공되지 않았고, --fallback-model은 인터랙티브 세션에서 적용되지 않았습니다. 이제 fallbackModel 설정으로 최대 세 개의 폴백 모델을 순서대로 시도할 수 있고, --fallback-model 플래그도 인터랙티브 세션에 적용됩니다.

  • deny 규칙 도구명 위치의 glob 패턴 지원

    특정 도구 이름만 지정해 차단할 수 있어, 모든 도구를 일괄 차단하려면 규칙을 일일이 나열해야 했습니다. 이제 deny 규칙의 도구명 위치에서 glob 패턴이 지원되며, "*"로 모든 도구를 차단할 수 있습니다. allow 규칙은 비-MCP glob을 거부하고, deny 규칙의 알 수 없는 도구명은 시작 시 경고로 표시됩니다.

  • 세션 간 메시지 권한 모델 강화

    다른 Claude 세션이 SendMessage로 전달한 메시지가 사용자 권한처럼 취급되어 권한 요청과 자동 모드 동작에서 의도치 않은 작업을 트리거할 수 있었습니다. 이제 전달된 메시지는 사용자 권한을 갖지 않으며, 수신자는 전달된 권한 요청을 거부하고 auto 모드도 이를 차단합니다.

  • MAX_THINKING_TOKENS=0/--thinking disabled가 기본 thinking 모델에도 적용

    기본으로 thinking이 켜진 모델에서는 MAX_THINKING_TOKENS=0, --thinking disabled, 모델별 thinking 토글이 실제로 thinking을 끄지 못했습니다. 이제 Claude API를 통해 동작하는 기본 thinking 모델에서도 정상적으로 thinking이 비활성화됩니다(서드파티 프로바이더는 이전과 동일하게 영향을 받지 않습니다).

  • API 예기치 않은 non-retryable 오류 시 폴백 모델로 1회 재시도

    API가 예기치 않은 non-retryable 오류를 반환하면 턴이 즉시 실패해 폴백 기회가 없었습니다. 이제 그런 경우에 한해 폴백 모델로 한 번 재시도합니다. 인증, 레이트리밋, 요청 크기, 전송 오류는 이전과 동일하게 즉시 표시됩니다.

  • claude update가 다운로드 전에 대상 버전을 안내

    claude update가 다운로드 동안 별다른 출력 없이 멈춰 있어 진행 상태를 알기 어려웠습니다. 이제 다운로드 시작 전에 대상 버전을 안내해 어떤 버전으로 업데이트되는지 즉시 확인할 수 있습니다.

  • claude agents 목록에서 URL 입력으로 세션 필터링

    세션이 많을 때 첫 프롬프트에 포함된 URL로 세션을 찾는 방법이 없었습니다. 이제 목록에 URL을 입력하면 첫 프롬프트가 그 URL을 포함한 세션으로 필터링됩니다.

주요 버그 수정

세션과 원격

  • 세션에 처리 불가능한 이미지가 전송되면 “image could not be processed” 오류가 반복 발생하고 추가 토큰이 소비되던 문제 수정.
  • 시작 시 worker 등록 중에 일시적인 백엔드 중단이 발생하면 원격 세션이 영구 stuck 상태가 되던 문제 수정.
  • claude agents에서 git worktree에 들어간 백그라운드 에이전트 세션을 다시 열면 “No conversation found”로 크래시 루프에 빠지던 문제 수정.
  • /doctor가 원격 세션 내부에서 실행되었을 때 “Not inside a remote session” 점검이 실패로 표시되어 모순된 결과를 보여주던 문제 수정.

권한과 매니지드 설정

  • 매니지드 설정에 잘못된 항목이 하나라도 있으면 남은 유효한 정책 전체의 강제 적용이 조용히 비활성화되던 문제 수정.
  • 매니지드 설정의 allowedMcpServers, deniedMcpServers 조건이 ${VAR} 참조를 사용할 때 매칭되지 않던 문제 수정.
  • /voice 토글 후 stale auth 체크를 해소하려면 /login을 다시 실행해야 하던 문제 수정.

터미널과 UI

  • JetBrains IDE(IntelliJ, PyCharm, WebStorm 등) 2026.1+ 터미널에서 발생하던 깜빡임 — synchronized output 활성화로 수정.
  • Kitty 키보드 프로토콜을 사용하는 터미널(WezTerm, Ghostty, kitty)에서 Shift+비ASCII 문자(예: Shift+ä → Ä)가 누락되던 문제 수정.
  • claude agents 디스패치, 응답 입력란에서 멀티라인 프롬프트를 입력할 때 커서가 첫 줄 끝에 묶여 있던 문제 수정.
  • Unicode를 지원하지 않는 터미널에서 백그라운드 에이전트 행 사이에 빈 줄이 표시되던 문제 수정.
  • 스트리밍 중 Ctrl+O 트랜스크립트 뷰에 thinking 텍스트가 중복 표시되던 문제 수정.

플랫폼

  • Windows에서 종료된 프로세스의 자식 프로세스가 출력 파이프를 잡고 있으면 PowerShell 명령 검증이 타임 버짓을 한참 넘겨 hang 되던 문제 수정.
  • macOS에서 데몬이 종료된 뒤에도 연결된 상태로 남은 claude --bg-pty-host 프로세스가 100% CPU로 도는 문제 수정.

알아두면 좋은 점

  • 2.1.164는 릴리스 없음, 2.1.165는 단일 항목 안정성 패치 — 2.1.164는 GitHub Releases에 게시되지 않았고, 2.1.165는 changelog가 “Bug fixes and reliability improvements” 한 줄뿐인 핫픽스라 별도 콘텐츠로 다루지 않습니다.
  • 세션 간 메시지 권한 모델 변경 — 다른 세션이 SendMessage로 보낸 메시지는 더 이상 사용자 권한을 갖지 않습니다. 수신 세션이 전달된 권한 요청을 거부하므로, 세션 체이닝에 의존하는 자동화는 권한 요청 흐름을 재확인하세요.
  • fallbackModel 활용 — 설정에 최대 세 개의 폴백 모델을 배열로 지정하면 주 모델이 과부하나 사용 불가일 때 순서대로 시도합니다. --fallback-model 플래그를 인터랙티브 세션에 직접 넣어도 동작합니다.
  • 매니지드 설정 검증 강화의 영향 — 잘못된 항목 하나로 정책 전체가 조용히 비활성화되던 문제가 수정됐으므로, 이전에 의도와 다르게 강제가 풀려 있던 환경은 업데이트 후 정책이 실제로 적용되는지 한 번 점검하는 것이 좋습니다.
  • deny 규칙 glob 사용"*"로 모든 도구를 일괄 차단하거나 패턴으로 묶을 수 있습니다. 단, allow 규칙은 비-MCP glob을 거부하고, deny 규칙의 알 수 없는 도구명은 시작 시 경고로 표시되므로 설정 후 시작 로그를 확인하세요.