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

Claude Code 2.1.290

권한 규칙과 읽기 차단이 우회되던 여러 경로가 막혔고, 압축(compaction)이나 백그라운드 전환 뒤 `/loop` 예약 작업이 사라지던 문제가 고쳐졌습니다. WebSearch 호출 한도는 200회에서 끝나지 않고 시간당 100회씩 다시 채워지는 방식으로 바뀌었습니다.

공식 발표 →

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

무엇이 바뀌었나?

Claude Code 2.1.290이 2026년 10월 5일 출시됐습니다. 변경 항목이 매우 많은 릴리스로, 중심은 세 가지입니다. 첫째, 거부(deny)나 확인(ask) 규칙, 작업 디렉터리 밖 읽기 차단이 심볼릭 링크, 셸 문법, 훅의 입력 재작성을 거치면 적용되지 않던 경로를 막았습니다. 둘째, /loop 같은 예약 작업이 대화 압축, 백그라운드 전환, 재개 과정에서 사라지거나 한 번 더 실행되던 문제를 고쳤습니다. 셋째, claude agents 화면과 백그라운드 세션, /ultrareview 업로드의 안정성이 크게 손봐졌습니다. 아래에는 사용자 영향이 큰 항목을 골라 정리했습니다.

새 기능

  • 세션 이름 일부로 claude attach, claude logs 사용

    백그라운드 세션에 붙거나 로그를 보려면 세션 id를 정확히 입력해야 했습니다. 이제 claude attach <name>, claude logs <name>에 세션 이름의 일부만 넣어도 됩니다.

  • /claude-api managed-agents-onboard

    Managed Agents 구성을 처음 잡으려면 문서를 읽고 설정 파일을 직접 만들어야 했습니다. 이제 /claude-api managed-agents-onboard <url>로 페이지가 설명하는 Managed Agents 패턴을 ant apply 파일로 만들 수 있고, /claude-api managed-agents-onboard <quickstart-name>으로 deep-researcher 같은 Console 빠른 시작 템플릿을 ant CLI로 구성할 수 있습니다.

  • 관리형 설정 경고

    관리형 설정(managed settings)이 사용자가 지정한 샌드박스 allowRead 경로나 허용 도메인을 무시해도 사용자는 알 수 없었습니다. 이제 /status와 doctor가 이를 경고합니다. 관리형 설정 파일이 관리형 설정 폴더 밖의 파일을 가리키는 링크일 때도 경고가 표시됩니다.

  • Claude apps gateway 로그인 거부 버튼

    Claude apps gateway의 로그인 승인 페이지에서 요청을 거절할 방법이 없어, 대기 중인 터미널이 계속 기다렸습니다. 이제 Deny 버튼으로 대기 중인 로그인을 끝낼 수 있고, 터미널도 몇 초 안에 대기를 멈춥니다.

  • 플러그인 훅 API 추가

    mod 작성자가 훅에서 얻을 수 있는 정보가 늘었습니다. turn.step 결과에 API가 직접 실행한 도구 호출(advisor)을 담은 serverToolUses가, tool.check 이벤트에 서브에이전트의 권한 확인을 구분하는 agentId와 조직이 요구하는 승인 수준을 알려 주는 ceiling이 추가됐습니다. 타입 정의에는 ThemeKey, Color가 추가돼 편집기에서 테마 색상 이름을 자동 완성할 수 있습니다. claude plugin validate는 이제 gating 지점에 등록된 훅마다 .catch가 있는지 보여 줍니다(--json에서는 gatingHooks).

  • [Claude Tag] Slack에서 fast mode 전환

    Slack 스레드에서 Claude를 멘션할 때 !fast를 붙이면 그 스레드가 fast mode로 바뀌고(필요하면 Opus로 전환), !fast off로 되돌릴 수 있습니다. fast mode인 동안에는 응답에 (fast)가 표시됩니다.

  • [VSCode] 접근성, 플러그인 관리

    Claude가 작업 중일 때 메시지를 보내면 스크린 리더가 “Message queued.”를 읽어 줍니다. Manage plugins 대화 상자에서 플러그인 마켓플레이스의 설치, 업데이트 명령을 확인하고 실행할 수 있습니다.

주요 개선

  • WebSearch 호출 한도가 시간에 따라 다시 채워짐

    대화형 세션의 WebSearch는 200회를 쓰면 더 이상 쓸 수 없었습니다. 이제 시간당 100회씩 한도가 다시 채워집니다. 채워지는 속도는 CLAUDE_CODE_WEB_SEARCH_REFILLS_PER_HOUR로 정할 수 있고, 0으로 두면 다시 채우기가 꺼집니다.

  • 프록시 뒤 MCP 시작 속도

    네트워크 프록시가 차단(HTTP 403)한 MCP 서버를 세 번씩 다시 시도해 시작이 늦어졌습니다. 이제 다시 시도하지 않습니다.

  • 큰 세션 재개 중 반응성

    큰 세션을 재개하는 동안 대화 기록을 불러오느라 입력과 화면이 멈췄습니다. 이제 불러오는 동안에도 타이머, 입력, 화면 그리기가 계속 동작합니다.

  • /, @ 추천 목록의 선택 표시

    추천 목록에서 선택된 행이 색으로만 구분돼, 색을 쓰지 않는 환경에서는 알아보기 어려웠습니다. 이제 선택된 행 앞에 ❯ 표시가 붙습니다.

  • 바이너리 파일 읽기 안내

    Read 도구로 바이너리 파일을 열면 읽을 수 없다는 안내만 나왔습니다. 이제 그 형식을 읽을 수 있는 스킬이나 셸 명령을 Claude에게 알려 줍니다.

  • Claude in Chrome browser_batch 제한 시간

    browser_batch 호출의 제한 시간이 60초에서 90초로 늘었습니다.

  • /ultrareview 업로드 오류 메시지

    업로드가 체크아웃을 거부하거나 git 단계에서 실패하면 git 오류 원문이 길게 나와 원인을 찾기 어려웠습니다. 이제 원인마다 별도의 메시지와 해결 방법을 보여 주고, 실패한 git 단계를 밝힙니다.

동작이 바뀐 항목

  • Claude in Chrome은 프로젝트 설정으로 켤 수 없음 (변경)

    저장소의 프로젝트 설정 파일이 Claude in Chrome을 켤 수 있었습니다. 이제는 --chrome, /chrome, 사용자 설정으로만 켤 수 있습니다.

  • CLAUDE_CODE_DISABLE_ATTACHMENTS는 저장소 설정으로 지정 불가 (변경)

    저장소의 .claude/settings.json, .claude/settings.local.json으로는 더 이상 이 값을 지정할 수 없습니다. 셸, 사용자 설정, 관리형 설정에서는 계속 지정할 수 있습니다.

  • pyright, 일부 ps 명령은 승인 필요 (변경)

    pyright는 더 이상 읽기 전용 명령으로 취급되지 않아 실행 전에 권한을 묻습니다. ps 명령도 더 많은 형태가 묻지 않고 실행되는 대신 승인을 요청합니다.

  • /code-review medium 수준 결과 범위 (변경)

    리뷰 설정이 따로 조정되지 않은 모델(Opus 5.5, Sonnet 5.5 포함)에서 /code-review를 medium 수준으로 실행하면, 이제 코드 정리와 CLAUDE.md 규칙 관련 지적도 함께 보고합니다.

  • claude agents에서 보낸 /model, /effort, /rename 즉시 적용 (변경)

    작업 중인 백그라운드 세션에 보낸 이 명령들이 턴이 끝날 때 적용됐습니다. 이제 확인 없이 바로 적용됩니다.

  • /loop 대기 중인 백그라운드 세션 유지 (변경)

    예약된 깨우기(/loop)를 기다리던 백그라운드 세션이 업데이트나 메모리 부족 때 재시작, 종료되면서 깨우기가 사라질 수 있었습니다. 이제 이런 세션은 계속 실행 상태로 남습니다.

  • CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC 범위 확대 (변경)

    이제 시작 시 연결을 미리 열어 두는 준비 동작(warm-up)도 건너뜁니다.

  • [VSCode] 메시지 시간 표시 기본 켜짐 (변경)

    메시지 시간이 기본으로 표시됩니다. Claude Code: Show Message Timestamps 설정으로 끌 수 있습니다.

주요 버그 수정

권한과 보안

  • plan mode에서 auto mode 분류기가, 서버가 확인 정책을 지정한 읽기 전용이 아닌 커넥터 도구를 승인하던 문제 수정.
  • 작업 디렉터리 밖으로 심볼릭 링크된 프로젝트 CLAUDE.md, 규칙, AGENTS.md가 permissions.blockReadsOutsideWorkingDirectories나 Read 거부 규칙이 있어도 불러와지던 문제 수정.
  • PreToolUse 훅이 도구 입력을 바꿔 쓴 뒤 일부 권한 규칙과 안전 검사가 적용되지 않던 문제 수정.
  • declare, typeset, export, readonly 앞에 접두사로 설정한 변수에서 명령이나 경로 이름이 나오면 거부, 확인 규칙이 놓치던 문제 수정.
  • rg, git grep 같은 읽기 전용 명령이, 셸이 와일드카드로 확장할 인자를 가졌는데도 자동 승인되던 문제 수정. 이제 승인을 요청합니다. zsh와 bash가 다르게 읽는 변수 이름을 쓴 명령도 같은 방식으로 바뀌었습니다.
  • 프롬프트에 붙여 넣거나 끌어다 놓은 이미지 경로, @-멘션한 폴더의 파일 목록에 Read 거부 규칙이 적용되지 않던 문제 수정.
  • 읽는 도중 링크를 바꿔치기하면 이미지 읽기(macOS, Windows)와 @-멘션이 승인 범위 밖 파일을 읽을 수 있던 문제 수정.
  • 샌드박스 자동 허용 상태에서 Monitor 도구 명령이 권한 확인을 건너뛰던 문제 수정. 이제 사용자의 권한 규칙을 따릅니다.
  • sandbox.excludedCommands의 git * 같은 패턴에서 git clone 옵션의 짧은 형태가 샌드박스 예외를 유지하던 문제 수정. 긴 형태와 똑같이 처리됩니다.
  • .mcp.json, 플러그인, 에이전트에서 선언한 일부 MCP 항목에 disableClaudeAiConnectors, allowedMcpServers URL 규칙이 적용되지 않던 문제 수정.
  • 사용자가 설치한 mod가 조직의 플러그인을 내리게 하거나 조직의 검사를 건너뛰게 할 수 있던 문제 수정. 이제 해당 mod가 내려집니다.
  • --channels 권한 전달에서 세션 안에 반복된 응답 ID가 다른 프롬프트를 승인하던 문제 수정.
  • 백그라운드 작업자가 권한 우회 고지에 동의하지 않았는데도 재시작 시 --allow-dangerously-skip-permissions를 따르던 문제 수정.
  • --restricted 세션이 세션 간 메시지 소켓을 열던 문제 수정.

요청과 API 안정성

  • 프록시나 게이트웨이가 Claude Code의 베타 헤더를 400 이외의 상태 코드로 거부하면 요청이 실패하던 문제 수정.
  • 이미지가 수백 장 있는 긴 세션이 “Request rejected as unprocessable by the model” 오류에서 벗어나지 못하던 문제 수정.
  • Claude가 생각(thinking)하는 도중 API의 출력 콘텐츠 필터가 응답을 멈추면 턴이 바로 끝나던 문제 수정. 이제 오류를 보여 주기 전에 한 번 다시 시도합니다.
  • 재개된 서브에이전트와 팀원이 실행 중 메시지를 받은 뒤 이전 생각 과정과 프롬프트 캐시(prompt cache)를 잃던 문제 수정.
  • WebFetch가 100,000자를 넘는 페이지 텍스트를 말없이 버리던 문제 수정. 이제 읽지 못한 분량을 알려 주고, offset으로 이어 읽을 수 있습니다.
  • Mac이 잠자기에 들어가면 자동 압축이 “Prompt is too long”으로 포기하고, 깨어난 뒤 백그라운드 에이전트가 “Agent stalled”로 실패하던 문제 수정. Bedrock, Vertex, Foundry, 사용자 지정 게이트웨이에서 잠자기로 끊긴 응답을 멈춘 스트림으로 처리하던 문제도 고쳐졌습니다.
  • 대화 압축이 가끔 “null is not an object” 오류로 실패하던 문제 수정.
  • HTTP MCP 서버가 매우 큰 응답을 보내면 메모리 사용량이 끝없이 늘던 문제 수정.
  • 2.1.285 이후, 관리형 설정이 느린 파일 시스템(특히 WSL의 Windows 드라이브)의 많은 경로 읽기를 거부하면 VS Code 확장 같은 SDK 호스트에서 시작이 느리거나 실패하던 문제 수정.

예약 작업과 /loop

  • 대화가 압축된 뒤 세션을 재개하면 예약 작업(간격을 지정한 /loop, 리마인더)이 말없이 돌아오지 않던 문제 수정. 이번 버전부터 이뤄진 압축에만 적용됩니다.
  • 포그라운드에서 설정한 예약 작업이 ← 또는 /background로 넘긴 뒤 실행되지 않고, 반복 작업이 재개, 재생성(respawn), 포크 때마다 한 번 더 실행되던 문제 수정.
  • Linux에서 샌드박스 Bash 명령을 실행한 뒤나 .claude/scheduled_tasks.json을 지운 뒤 반복 작업이 한 번 더 실행되던 문제 수정.
  • 컨테이너 재시작으로 대기 중이던 /loop 깨우기나 예약 작업을 잃은 클라우드 세션이 계속 잠들어 있던 문제 수정. 이제 Claude가 이 사실을 전달받아 다시 예약할 수 있습니다.

백그라운드 세션과 agents 화면

  • agents 화면에서 Esc가 “Press enter again to restart this session” 확인을 승인하던 문제 수정. 이제 Esc는 세션을 다시 열기만 합니다.
  • agents 화면에서 검색 뒤 Esc를 누르면 섹션 제목으로 초점이 옮겨가, Ctrl+X 두 번으로 섹션의 모든 세션이 삭제될 수 있던 문제 수정. Ctrl+X를 반복하면 다음 섹션 전체가 삭제되던 문제도 고쳐졌습니다.
  • claude agents가 멈춘 세션에 전달하지 못한 슬래시 명령이나 선택형 질문 답을 저장해 두었다가, 다음 재시작 때 저절로 실행하던 문제 수정.
  • 세션을 새로 시작하는 재시작과 claude respawn이 빈 대화 대신 이전 메시지를 다시 보내던 문제 수정.
  • 유휴 상태로 백그라운드로 보낸 세션이 재시작이나 유휴 정리 뒤 “no saved transcript”로 다시 열리던 문제 수정. 이제 대화를 이어서 재개합니다.
  • 백그라운드 세션이 충돌한 직후 보낸 응답이 2초 만에 거부되던 문제 수정. 이제 세션이 재시작되는 동안 최대 12초까지 다시 시도합니다.
  • Homebrew 업그레이드 뒤 claude agents가 “Couldn’t restart the background service”로 실패하던 문제 수정. 이번 다음 업그레이드부터 효과가 있습니다.
  • 메인 세션이 다른 worktree에 들어가거나 나오면 백그라운드 서브에이전트가 자기 worktree에서 쓰기, Bash 권한을 잃던 문제 수정.

/ultrareview

  • Windows에서 git stash create가 실패하면 커밋하지 않은 변경을 경고 없이 빠뜨리던 문제 수정.
  • git 설정에 core.safecrlf=true가 있으면 커밋하지 않은 변경 업로드가 실패하던 문제 수정.
  • 이름이 unset, unspecified인 git filter driver 아래 파일을 걸러내지 않고 업로드하던 문제 수정. 이제 업로드를 멈추고 드라이버 이름을 바꾸라고 안내합니다.
  • 브랜치를 .git 밖에 두는 저장소(git 2.54 이상)에서 커밋하지 않은 작업을 말없이 업로드에서 빠뜨리던 문제 수정. 이제 이유를 설명하고 거부합니다.

멈춤과 성능

  • 응답에 목록이나 인용이 수천 단계로 중첩되면 “Maximum call stack size exceeded”로 강제 종료되던 문제 수정.
  • 아주 긴 메시지를 보낸 뒤나, 비밀 정보 검사와 권한 프롬프트가 긴 토큰 형태의 텍스트를 만났을 때 멈추던 문제 수정.
  • Linux, WSL에서 ~/**/.env 같은 샌드박스 읽기 규칙이 큰 폴더를 덮으면 첫 요청 전과 /sandbox Config 탭에서 멈추던 문제 수정.
  • 대화에 아주 큰 스택 트레이스나 소스 파일이 붙여 넣어져 있으면 되돌리기 메뉴(Esc Esc, /rewind)가 키를 누를 때마다 수백 밀리초씩 멈추던 문제 수정.
  • 화살표, 대시, 상자 그리기 문자 같은 비 ASCII 문자가 든 큰 도구 출력에서 대화 기록 펼치기(ctrl+o)나 창 크기 조절이 느려지던 문제 수정.

세션, 설정, 기타

  • SKILL.md의 이름과 폴더 이름이 다른 스킬(예: 영어가 아닌 폴더 이름)을 SKILL.md의 이름으로 요청하면 찾지 못하던 문제 수정. 이제 스킬 목록에 두 이름이 모두 표시됩니다.
  • 하위 디렉터리의 파일을 @-멘션해도 그 디렉터리의 AGENTS.md가 첨부되지 않던 문제 수정.
  • 터미널에서 --continue나 --resume <session-id>로 세션을 재개할 때 plan mode가 복원되지 않던 문제 수정.
  • /rewind 목록에 Claude가 작업 중일 때 보낸 프롬프트가 나오지 않던 문제 수정.
  • claude --teleport, /teleport에서 stash를 선택하면, 같은 이름의 추적 파일을 대신한 폴더의 파일들이 삭제되던 문제 수정. 이제 stash를 거부하고 이유를 알려 줍니다.
  • You should know(작업 중 알아 둘 점을 정리해 주는 기능)가 language 설정과 관계없이 영어로 메모를 쓰던 문제 수정.
  • CLAUDE_CODE_USER_DIALOG_TIMEOUT_MS=5m이 5밀리초로 읽혀 원격 대화 상자가 바로 취소되던 문제 수정. 단위가 붙은 값은 이제 dialogExpiry를 따릅니다.
  • claude auth login 뒤나 설정 디렉터리에 자격 증명 파일이 이미 있는데도 첫 실행 때 로그인 방법을 다시 고르게 하던 문제 수정.
  • macOS에서 키체인이 새 로그인을 거부했는데도 /login이 성공으로 표시되던 문제 수정.
  • git, gh 같은 프로그램이 설치되지 않았을 때 오류가 프로그램 이름 대신 “Premature close”로 나오던 문제(macOS, Linux) 수정.
  • 샌드박스에서 heredoc을 다른 명령으로 넘기는 명령(cat <<EOF | python3)이 실행할 때마다 승인을 요청하던 문제 수정.
  • Windows에서 CRLF 줄바꿈으로 저장된 스킬, 명령의 여러 줄 ! 셸 블록이 실패하던 문제 수정.
  • Chrome 연결 실패 뒤 /chrome의 “Reconnect extension”이 브라우저 도구를 복원하지 않던 문제 수정. 복원할 수 없을 때는 이유를 설명합니다.
  • 플러그인의 비동기 Stop 훅이 공백이 있는 폴더(예: Application Support) 아래 스크립트 경로를 따옴표 없이 넘기면 Claude가 끝없이 응답을 반복하던 문제 수정.

플러그인과 mod

  • .catch가 있는 플러그인 훅이 프롬프트나 도구 호출 중 훅 작업자를 오래 붙잡으면 .catch가 실행되지 않은 채 내려지던 문제 수정.
  • 새로고침이 실패한 다시 불러오기 뒤에 이어지면 mod가 아무 메시지 없이 내려지던 문제 수정. 이제 실패 안내에 이전에 불러온 버전이 내려진다고 표시됩니다.
  • mod의 prompt.submit 훅이 next(e)를 호출한 뒤 프롬프트를 버리면 말없이 무시되던 문제 수정. 이제 해당 훅이 이름과 함께 실패로 보고됩니다.
  • 그릴 때마다 높이가 바뀌는 트리를 가진 mod의 pane, band, 인라인 pane이 끝없이 다시 그려지던 문제 수정.
  • 게이트웨이(ANTHROPIC_BASE_URL과 ANTHROPIC_AUTH_TOKEN)로 Claude를 쓰고 Anthropic 계정이 없는 사용자에게 mod가 계속 꺼져 있던 문제 수정.

VS Code, 클라우드 세션

  • [VSCode] 열려 있는 대화 상자 뒤에 도착한 권한 프롬프트가 키보드 초점을 가져가, 대화 상자에서 누른 키가 프롬프트에 답할 수 있던 문제 수정.
  • [VSCode] 입력하지 않은 빈 채팅을 저장된 대화로 바꿔 열어도 백그라운드 Claude 프로세스가 계속 실행되던 문제 수정.
  • [VSCode] 커밋하지 않은 변경을 확인할 수 없는데도 브랜치 전환 대화 상자가 전환을 제안하던 문제 수정.
  • [Cloud sessions] 응답이 끝난 뒤에도 작업 중 표시가 몇 초간 계속 돌던 문제 수정.
  • [Remote Control] Remote Control을 막 시작한 컴퓨터가 새 세션의 Remote Control 메뉴에 나타나기까지 최대 1분이 걸리던 문제 수정. 이제 몇 초 안에 나타납니다.

알아두면 좋은 점

  • Claude in Chrome을 프로젝트 설정으로 켜 두었다면 이번 버전부터는 켜지지 않습니다. --chrome, /chrome, 사용자 설정 중 하나로 옮겨야 합니다.
  • pyright나 ps를 자동 실행에 기대고 있었다면 이제 승인 요청이 뜹니다. 필요하면 권한 규칙에 허용을 추가합니다.
  • WebSearch를 많이 쓰는 긴 세션이라면 200회에서 끝나지 않고 시간당 100회씩 다시 채워집니다. 속도는 CLAUDE_CODE_WEB_SEARCH_REFILLS_PER_HOUR로 조정할 수 있습니다.
  • 압축 뒤 /loop가 사라지는 문제의 수정은 이번 버전부터 이뤄진 압축에만 적용됩니다. 이전 버전에서 이뤄진 압축은 해당되지 않습니다.
  • Homebrew로 설치했다면 claude agents의 백그라운드 서비스 재시작 실패 수정은 이번 업그레이드가 아니라 그다음 업그레이드부터 효과가 있습니다.
  • mod 작성자라면 serverToolUses, tool.check의 agentId, ceiling, claude plugin validate의 gatingHooks를 확인해 두면 좋습니다.