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

Claude Code 2.1.246

`/permissions`에 Auto mode 탭이 추가되어 auto mode 분류 규칙을 확인하고 수정할 수 있고, `Bash(git * main)`처럼 서브커맨드 앞에 와일드카드를 둔 허용 규칙에는 시작 시 경고가 표시됩니다. `/cd`로 옮긴 디렉토리의 프로젝트 설정, 훅, `.mcp.json` 서버, 스킬, 에이전트가 이동 직후 적용되고, 비대화형 실행은 응답이 중간에 끊기면 자동으로 이어받습니다. 시작 디렉토리가 삭제됐거나 절전에서 깨어난 뒤 백그라운드 세션이 45초 만에 열리지 않던 문제, base64 같은 아주 긴 한 줄이 들어간 diff에서 transcript가 심하게 느려지던 문제, 서드파티 게이트웨이용 API 키가 Anthropic 텔레메트리 요청에 함께 실려 나가던 문제가 수정됐습니다.

공식 발표 →

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

무엇이 바뀌었나?

Claude Code 2.1.246이 2026년 8월 25일 출시됐습니다. 전체 화면 transcript(대화 기록 화면)의 렌더링과 메모리, 백그라운드 세션 기동, 플러그인 설치 경로처럼 오래 켜 두는 세션에서 드러나던 문제가 집중적으로 정리됐습니다. 권한 규칙과 자격 증명 처리에서 동작이 바뀐 항목도 있어, 규칙을 직접 관리하는 환경이라면 업데이트 후 확인이 필요합니다.

새 기능

  • /permissions의 Auto mode 탭

    auto mode가 어떤 규칙으로 도구 호출을 자동 승인하는지 화면에서 확인할 방법이 없었습니다. /permissions에 Auto mode 탭이 추가되어 auto mode 분류 규칙(classifier rules)을 보고 직접 수정할 수 있습니다.

  • 서브커맨드 앞 와일드카드 허용 규칙 경고

    Bash(git * main)처럼 서브커맨드 앞에 와일드카드를 둔 허용 규칙은 서브커맨드 앞에 끼워 넣은 옵션까지 함께 매칭됩니다. 의도한 것보다 넓은 범위의 명령이 승인될 수 있어, 이제 시작할 때 경고가 표시됩니다.

  • 턴 종료 시각 표시

    턴 종료 줄에는 소요 시간만 있어 그 턴이 언제 끝났는지는 알 수 없었습니다. 이제 완료 시각이 함께 표시됩니다(예: ✻ Sautéed for 23s · done 6:05 PM).

주요 개선

  • /cd 직후 프로젝트 설정 적용

    /cd로 작업 디렉토리를 옮겨도 그 디렉토리의 프로젝트 설정, 훅, .mcp.json 서버, 스킬, 에이전트는 --resume으로 세션을 다시 열어야 적용됐습니다. 이제 이동 직후 적용되며, .mcp.json 서버는 평소와 같은 승인 프롬프트를 거칩니다.

  • 비대화형 실행에서 끊긴 응답 이어받기

    -p 실행, SDK, 클라우드 세션에서 서버 오류나 연결 끊김, 스트림 정지로 응답이 중간에 잘리면 그대로 오류로 끝났습니다. 이제 잘린 응답을 자동으로 이어서 받습니다.

  • maxTurns에 걸린 서브에이전트 결과 표시

    서브에이전트가 maxTurns 한도에 걸려 멈춰도 정상적으로 끝난 것처럼 보여, 결과가 미완성인지 구분할 수 없었습니다. 이제 결과가 부분 결과로 표시되고, SendMessage로 이어서 진행하라는 안내가 함께 나옵니다.

  • Bash 도구 지연 감소

    bash 셸에서 스냅샷 함수를 복원할 때 함수마다 base64 서브셸을 하나씩 띄웠습니다. 이제 서브셸 없이 재생해 호출 지연이 줄었습니다.

  • Claude가 /code-review를 직접 시작할 수 있는 환경 확대

    Bedrock, Vertex AI, Foundry 환경과 Claude apps gateway를 경유하는 경우, 텔레메트리나 비필수 트래픽을 끈 환경에서는 Claude가 /code-review를 스스로 시작하지 못했습니다. 이제 이 환경에서도 시작할 수 있습니다.

  • /goal 체크인 횟수 제한

    유휴 상태에서 오래 걸리는 백그라운드 작업을 확인하는 체크인이 반복돼 세션이 계속 깨어났습니다. 이제 목표 하나당 최대 3회로 제한되고, 다음 메시지를 보내면 3회가 다시 허용됩니다.

  • claude install, claude update 중 동의 프롬프트 지연

    관리형 설정 동의 프롬프트가 명령 실행 도중에 떠 설치와 업데이트 흐름을 끊었습니다. 이제 다음 대화형 세션으로 미룹니다.

  • 사용량 텔레메트리의 조직 귀속 개선

    workload identity federation 세션, 시작 시 apiKeyHelper가 실행되는 동안 전송된 이벤트, 유휴 중 로그인 토큰이 만료된 뒤의 이벤트가 조직에 제대로 귀속되지 않았습니다. 세 경우 모두 귀속이 정확해졌습니다.

  • claude.ai에서 동기화한 플러그인의 OpenTelemetry 이벤트 보정

    plugin_id_hash가 플러그인이 실제로 속한 마켓플레이스를 반영하지 않았고, 관리자가 설치한 플러그인도 설치 경로를 구분할 수 없었습니다. 이제 plugin_id_hash는 실제 마켓플레이스를 반영하고, 관리자 설치는 enabled_via가 admin-install로 기록됩니다.

주요 버그 수정

전체 화면과 transcript 렌더링

  • 터미널 크기를 바꾼 뒤 전체 화면 모드의 transcript가 비어 보이고, 다음 키 입력 전까지 맨 아래로 튀던 문제 수정.
  • diff에 base64 문자열처럼 아주 긴 한 줄이 들어 있으면 transcript가 심하게 느려지던 문제 — 이제 그런 줄은 잘림 표시와 함께 축약해 렌더링합니다.
  • 전체 화면에서 이전 메시지 위치에 있을 때 스크롤이 튀고, 맨 아래로 이동이 transcript 중간에서 멈추던 문제 수정.
  • 전체 화면과 Ctrl+O transcript 화면에서 세션이 길어질수록 메모리가 계속 늘던 문제 수정. 각 메시지 행이 transcript 전체의 도구 조회 정보를 통째로 들고 있던 것이 원인이었습니다.
  • 다른 창에 있다가 터미널 창을 다시 활성화하려고 클릭했을 뿐인데 전체 화면 모드가 포인터 아래 요소로 키보드 포커스를 옮기던 문제 수정.
  • 메시지의 앞 500자에 마크다운이 없으면 그 메시지 전체의 마크다운 렌더링이 꺼지던 문제 수정. +나 N) 형식의 목록과 setext 스타일 제목도 이제 정상 렌더링됩니다.

백그라운드 세션과 에이전트

  • Claude Code를 시작한 디렉토리가 삭제됐거나, 머신이 절전에서 깨어났거나, 프로세스 시작이 느린 호스트에서 백그라운드 세션이 45초 뒤 열리지 않던 문제 수정.
  • 다른 Claude Code 프로세스가 마침 npm 패키지를 재설치 중일 때 백그라운드 세션이 “Couldn’t start the background service … EACCES”로 열리지 않던 문제 수정.
  • claude agents에서 방금 시작한 세션을 워커가 아직 기동 중일 때 열면 “was stopped while the respawn was in flight”로 중지되던 문제 수정. Windows에서 자주 발생했습니다.
  • claude agents가 백그라운드로 보낸 이름 있는 세션을 두 번 표시하던 문제 수정. 같은 대화를 다시 백그라운드로 보내면 새 행에 번호가 붙습니다(예: my-session (2)).
  • 백그라운드 보존 정리 작업이 .claude/worktrees/ 아래에 사용자가 직접 만든 git worktree(같은 저장소를 여러 디렉토리에 동시에 펼쳐 두는 기능)까지 삭제하던 문제 수정. 오래된 백그라운드 세션 기록이 그 경로를 가리키고 있을 때 발생했습니다.
  • 동적 워크플로 실행 중 ← 를 누르거나 /background를 실행하면 이미 끝난 서브에이전트가 다시 시작되던 문제 수정. 이제 몇 개의 서브에이전트가 다시 시작되는지 알려주고 먼저 확인을 받습니다.
  • 이미 포크했거나 백그라운드로 보낸 세션에서 /fork하면 새 세션이 빈 대화로 시작되던 문제 수정.

MCP와 도구 호출

  • headless(화면 없이 실행되는 방식), 원격 세션에서 새 메시지가 들어와 중단된 MCP 도구 호출이 모델에게 “completed with no output”으로 전달되던 문제 수정. 이제 중단됐다는 오류가 명시적으로 전달됩니다.
  • 파라미터 스키마가 비어 있으면({}) MCP 도구 인자가 실제 타입 대신 JSON 문자열로 전송되던 문제 수정.
  • 실행 도중 중단된 명령이 중단 표시 없이 “Ran 1 shell command”로만 보이던 문제 수정.
  • 서드파티 Anthropic 호환 엔드포인트(ANTHROPIC_BASE_URL)가 id 없는 tool_use 블록을 스트리밍하면 첫 도구 호출에서 UI가 렌더 오류로 멈추던 문제 수정.
  • 아주 큰 기존 파일을 Write 도구로 덮어쓴 뒤, 파일은 정상 기록됐는데도 “Out of memory”가 표시되거나 오래 멈춰 있던 문제 수정.
  • requiresUserInteraction으로 표시된 MCP 도구의 권한 프롬프트에 “Yes, and don’t ask again”이 계속 제공되던 문제 수정. 선택해도 도구가 무시하는 허용 규칙이 기록됐습니다.
  • --strict-mcp-config 세션이 어차피 로드하지 않을 .mcp.json 서버의 승인을 묻던 문제 수정. 이 때문에 백그라운드 세션이 시작 단계에서 대기했습니다.

플러그인

  • 플러그인 캐시가 같은 플러그인에 대해 SHA 이름의 디렉토리를 중복 생성하던 문제 수정.
  • 플러그인 스킬의 frontmatter name에 이미 <plugin>: 접두사가 들어 있으면 슬래시 메뉴에 접두사가 두 번 표시되던 문제 수정(예: /plugin:plugin:skill).
  • 설치된 플러그인에 짧은 이름을 주면 claude plugin update가 실패하던 문제 수정. 이전에는 전체 이름만 동작했습니다.
  • plugin.json이 UTF-8 BOM(파일 앞에 붙는 보이지 않는 바이트 표식)과 함께 저장되면 플러그인 설치가 실패하던 문제 수정.
  • skills/*/SKILL.md 경로로 스킬을 정의한 플러그인에 대해 /reload-plugins가 스킬 0개로 보고하던 문제 수정.
  • 훅 오류 메시지에 실제 플러그인 경로 대신 ${CLAUDE_PLUGIN_ROOT} 문자열이 그대로 표시되던 문제 수정.
  • ~/.claude/plugins/known_marketplaces.json이 비어 있거나 손상됐을 때 claude plugin install <name>이 오류 없이 조용히 종료되거나 터미널에서 멈춰 있던 문제 수정.

권한과 자격 증명

  • 아주 큰 세션에서 auto mode 도구 호출이 “temporarily unavailable”로 거부되던 문제 수정. 안전성 검사 제한 시간이 프롬프트 크기에 따라 늘어납니다.
  • &&나 || 연산자가 뒤에 아무것도 없이 남은 잘못된 명령에 대해 Bash 권한 검사가 항상 승인을 요구하도록 수정.
  • Anthropic으로 보내는 텔레메트리와 메트릭 요청에 서드파티 게이트웨이(ANTHROPIC_BASE_URL)용 API 키가 함께 실려 나가던 문제 수정. 이제 자격 증명은 해당 호스트에만 전송됩니다.
  • apiKeyHelper가 수명이 짧은 JWT를 반환할 때, 유휴 상태 이후 첫 프롬프트에서 API 오류가 그대로 노출되던 문제 수정. 만료된 캐시 토큰을 보내기 전에 갱신하고, 401, 403 인증 오류는 조용히 재시도합니다.
  • plan mode에서 끝난 세션이 plan mode 밖에서 재개되던 문제 수정. VS Code 확장, 그리고 권한 프롬프트 도구를 쓰면서 권한 모드를 지정하지 않은 claude -p --continue, --resume에서 발생했습니다.
  • 샌드박스의 “Network request outside of sandbox” 권한 프롬프트가 떠 있는 동안 Notification 훅이 발동하지 않던 문제 수정.
  • 명령 샌드박스의 파일 시스템 설정이 --setting-sources를 따르지 않던 문제 수정.

세션 재개와 설치

  • 저장된 히스토리에 Anthropic API가 받아들이지 않는 도구 블록이 있으면 재개한 세션이 매 턴 400 오류로 실패하던 문제 수정. 주로 서드파티 API 프록시가 기록한 경우였습니다.
  • 서버에서 설정을 관리하는 일부 Team, Enterprise 사용자에게서 curl -fsSL https://claude.ai/install.sh | bash가 “Raw mode is not supported”로 실패하던 문제 수정.
  • Windows, macOS에서 비정상 종료한 headless 세션이 ~/.claude/sessions에 남긴 항목이 정리되지 않던 문제 수정.

클라우드와 원격 세션

  • 한 저장소에서(예: 여러 worktree에서) /ultrareview 실행과 클라우드 세션 시작이 동시에 일어나면 다른 실행의 커밋되지 않은 변경을 가지고 시작되던 문제 수정.
  • /autofix-pr 같은 백그라운드 클라우드 세션의 작업 진행 수(예: 3/5)에서 작업이 하나씩 빠지던 문제 수정.
  • Remote Control 세션이 claude.ai와 Claude 앱에서 두 번째 프롬프트를 보내기 전까지 임시 이름으로 남아 있던 문제 수정. 이제 첫 프롬프트 이후 자동 생성된 제목이 표시됩니다.
  • 작업 조회 응답이 잘못된 형식일 때(예: 중간에 끼어든 프록시의 HTML 페이지) 자체 호스팅 러너가 실행 중인 세션을 종료하거나 스스로 종료되던 문제 수정. 이제 조회를 다시 시도합니다.

터미널, 테마, 입력

  • /rename이 테마의 프롬프트 테두리 색을 기본 청록색으로 바꿔 버리던 문제 수정. 커스텀 테마의 promptBorder도 영향을 받았고, 이제 /color로 직접 고르지 않는 한 테마 색이 유지됩니다.
  • 커스텀 테마의 diff 색상(diffAdded, diffRemoved과 각각의 흐린 변형)이 diff와 /theme 미리보기에서 무시되던 문제 수정.
  • keybindings.json에 알 수 없는 동작 이름을 쓰면 해당 키가 조용히 먹통이 되던 문제 수정. 이제 그 항목을 건너뛰어 기본 키 동작이 유지되고, --debug에서 경고가 기록됩니다.
  • /stats 활동 히트맵이 UTC 동쪽 시간대에서 하루씩 밀려 표시되던 문제 수정(일요일 기록이 월요일 칸에 표시).
  • /--로 시작하는 프롬프트(예: Lean 문서 주석)가 알 수 없는 슬래시 명령으로 거부되던 문제 수정. 이제 Claude에게 그대로 전달됩니다.
  • 입력한 경로가 더 이상 실제 경로와 맞지 않아도 @ 파일 선택기가 열린 채 남던 문제 수정.
  • 에이전트 화면에 갔다 돌아오면 상태 표시줄의 비용과 시간이 0으로 초기화되던 문제 수정.
  • 경로 자동완성 대상이나 작업 디렉토리에 널 바이트가 들어 있으면 자동완성이 실패하던 문제 수정.

알아두면 좋은 점

  • 2.1.244는 게시되지 않았고, 2.1.245는 항목이 하나입니다 — 2.1.244는 GitHub Releases에 게시되지 않았고, 2.1.245는 glibc 2.44를 쓰는 Linux 배포판(Arch Linux, CachyOS, Fedora Rawhide 등)의 시작 크래시 수정 한 건뿐이라 별도 콘텐츠로 다루지 않습니다.
  • 서브커맨드 앞 와일드카드 허용 규칙을 점검하세요 — Bash(git * main) 형태의 규칙이 있으면 시작 시 경고가 뜹니다. 이런 규칙은 서브커맨드 앞에 끼워 넣은 옵션까지 매칭하므로, 의도한 명령만 승인하려면 규칙을 다시 작성해야 합니다.
  • &&, ||가 뒤에 아무것도 없이 끝나는 명령은 이제 항상 승인을 요구합니다 — 그동안 자동 승인되던 스크립트가 있다면 업데이트 후 권한 프롬프트가 뜰 수 있습니다.
  • 서드파티 게이트웨이 사용자는 자격 증명 전송 범위가 좁아졌습니다 — ANTHROPIC_BASE_URL로 게이트웨이를 쓰는 환경에서 게이트웨이용 API 키가 Anthropic 텔레메트리 요청에 함께 실려 나가던 동작이 수정됐습니다. 이제 자격 증명은 자신의 호스트에만 전송됩니다.
  • .claude/worktrees/ 아래에 직접 만든 worktree는 이제 삭제되지 않습니다 — 이전 버전에서 백그라운드 세션 보존 정리가 사용자가 만든 worktree를 지운 적이 있다면, 이번 업데이트로 해소됩니다.
  • /goal 체크인은 목표당 3회입니다 — 유휴 상태에서 자동으로 확인하는 횟수가 목표 하나당 최대 3회로 제한되고, 사용자가 메시지를 보내면 3회가 다시 허용됩니다.