무엇이 바뀌었나?
Claude Code 2.1.305가 2026년 10월 20일 출시됐습니다. 가장 중요한 수정은 2.1.304에서 생긴 회귀로, tool search를 받아들이지 않는 환경(Vertex, Bedrock, 일부 게이트웨이)에서 모든 요청이 실패하던 문제입니다. 그 밖에 Linux 샌드박스 설정과 무인 재시도 모드 설정이 추가됐고, /usage 경고, MCP 동의 대화상자, Remote Control 안내가 개선됐습니다. 수정은 worktree, 모델 설정, MCP, 서브에이전트, 클라우드 세션, Workflow, 화면 표시와 접근성, self-hosted runner, VS Code 확장, Claude Tag, Code Review에 걸쳐 있습니다.
새 기능
-
sandbox.allowNestedUserNamespaces(Linux)Linux 샌드박스 안에서는 user namespace(프로세스를 격리하는 Linux 커널 기능)를 만들 수 없어, 이를 필요로 하는 Chromium이나 rootless podman 같은 도구를 샌드박스 명령으로 실행할 수 없었습니다. 이 설정을 켜면 샌드박스 명령이 user namespace를 만들 수 있습니다. 단, 이렇게 하면 해당 명령이 샌드박스의 파일 보호를 우회할 수 있게 되므로 필요한 경우에만 켜야 합니다.
-
CLAUDE_CODE_RETRY_WATCHDOG_USAGE_LIMIT_RECHECK_MS무인 재시도 모드(
CLAUDE_CODE_RETRY_WATCHDOG)는 사용 한도에 걸리면 예정된 초기화 시점까지 기다렸고, 한도가 그보다 일찍 풀려도 알아채지 못했습니다. 이 환경 변수로 다시 확인할 간격을 정하면, 초기화 전에 풀린 한도를 감지해 작업을 이어갈 수 있습니다. -
[VSCode] 시작 훅 실행 중 상태 표시
SessionStart나 Setup 훅이 도는 동안에는 세션이 왜 아직 시작되지 않는지 알 수 없었습니다. 이제 “Running start-up hooks” 스피너 상태가 표시되고, 스크린 리더에도 안내됩니다.
-
[Claude Tag] 참여하지 않은 공개 채널 검색
Claude가 아직 들어가지 않은 공개 Slack 채널은 Claude Tag 관리자 페이지의 장소 추가(Add place) 검색에 나오지 않았습니다. 이제 검색에 나타나, 관리자가 그 자리에서 바로 설정할 수 있습니다.
주요 개선
-
/usage경고를 바로 고치기/usage의 경고는 무엇이 문제인지는 알려 줘도 어디서 생겼고 어떻게 고칠지는 직접 찾아야 했습니다. 이제 경고마다 원인이 된 출처를 밝힌 한 줄 해결 방법으로 표시되고,f를 누르면 그 해결 방법이 적용됩니다. 같은 해결 방법이 VS Code와/doctor에도 표시됩니다. -
MCP 동의 대화상자의 오입력 방지
프롬프트에 입력하려고 누른 Enter가 갑자기 뜬 MCP 동의 대화상자의 수락(Accept)으로 처리될 수 있었습니다. 이런 일이 덜 일어나도록 개선됐습니다.
-
iTerm2에서 mod 이미지 표시
iTerm2 3.5 이상에서 전체 화면 렌더링을 쓰면 mod(세션 안에서 Claude가 만드는 인터페이스, 동작 확장)의
Image가 그림 대신alt텍스트만 보여 줬습니다. 이제 그림이 표시됩니다. -
Remote Control spawn 모드 안내
w를 눌러 spawn 모드를 바꿨을 때 그 설정이 어디에 저장되는지, 이후claude remote-control이 어떤 모드로 왜 시작되는지 알기 어려웠습니다. 이제w를 누르면 새 모드가 이 폴더에 저장된다고 알려 주고, 이후 저장된 모드로 시작할 때는 그 모드가 어디서 왔는지 보여 줍니다. -
[VSCode] 세션 시작 지연 메시지
훅이 실행 중이 아닌데 세션이 제때 시작되지 않으면 로그인과 네트워크부터 확인하라고 안내해, 실제 원인을 찾기 어려웠습니다. 이제 출력 로그를 먼저 보여 주고 가능한 원인을 나열합니다.
-
[Cloud sessions] self-hosted 환경 삭제 안내
self-hosted 환경을 지울 때 무엇이 삭제를 막는지, 삭제하면 무엇에 영향이 있는지 알기 어려웠습니다. 이제 대화상자와 오류 메시지가 이를 알려 줍니다.
-
[Claude Tag] 큰 조직의 관리자 페이지
큰 조직에서는 채널 목록을 불러오는 동안 플러그인, 스킬, 번들 수정이 동작하지 않았습니다. 이제 목록을 불러오는 중에도 수정할 수 있습니다.
동작이 바뀐 항목
-
allowedMcpServers와managed-mcp.json(변경)managed-mcp.json의 stdio 서버 중${VAR}를env에만 쓰는 서버도allowedMcpServers가 걸러 냈습니다. 이제 이런 서버는 걸러지지 않으므로, 허용 목록에서 빠져 있던 서버가 업데이트 후 불러와집니다. 계속 막으려면deniedMcpServers에 넣어야 합니다. -
경로로 마운트된 플러그인의
allowed-tools(변경)조직의 관리형 설정에
allowManagedPermissionRulesOnly가 켜져 있으면, Claude Desktop이 경로로 마운트한 플러그인은 더 이상allowed-tools를 유지하지 않습니다. -
/artifacts삭제 확인 (변경)1이나 Enter는 남기기, 2는 삭제, Esc는 취소입니다. 2.1.304까지 동작하던
y,n은 더 이상 답으로 받지 않습니다. -
mod 도킹 창 너비 (변경)
mod의 도킹 창이 터미널 너비의 45%를 넘지 않습니다. 더 넓은 터미널에서 정해 둔 너비가 남아 있어도 마찬가지입니다.
-
[Code Review] 재리뷰 시작 문구 (변경)
이전 리뷰의 차단(blocking) 지적이 아직 남아 있으면 재리뷰가 LGTM으로 시작하지 않습니다.
주요 버그 수정
요청 실패와 모델 설정
- 2.1.304 회귀: Vertex, Bedrock 등에서 엔드포인트나 게이트웨이가 tool search를 거부하면 모든 요청이 실패하던 문제 수정. ToolSearch가 금지됐거나
--tools에서 빠진 게이트웨이 뒤에서도 같은 문제가 있었습니다. 이제 tool search 없이 다시 요청합니다. - 모델 이름이
modelOverrides값과 대소문자나[1m]태그만 달라도/effort,/autocompact설정이 적용되지 않던 문제 수정. - 서브에이전트가 fallback 모델로 바뀐 뒤 Claude가 그 작업을 한 모델을 잘못 말하던 문제 수정.
worktree와 Bash
- bare 저장소에서 새 worktree가 기본 브랜치 대신 로컬 HEAD에서 시작되던 문제, 바뀐 것이 없는 서브에이전트 worktree가 정리되지 않던 문제 수정.
- 디스크가 가득 찼을 때 Bash 명령이
ENOSPC와 파일 경로만 보여 주며 실패하던 문제 수정. 이제 디스크가 가득 찼고 명령이 실행되지 않았다고 알려 줍니다.
MCP, 클라우드 세션, Workflow
- 클라우드 세션이나 SDK의
setMcpServers로 넘긴 MCP 서버가 세션 도중 사용자 설정의 같은 이름 서버로 바뀌던 문제 수정. - 클라우드 세션과 팀원(teammate) 세션에서, 압축이 길이에 맞추려고 가장 오래된 메시지를 요약에서 빼도 Claude에게 알리지 않던 문제 수정.
- 예약된 Cowork 클라우드 세션에서 WebFetch에 URL 승인이 필요한 서브에이전트마다, 승인할 사람이 없는데도 5분씩 기다리던 문제 추가 사례 수정.
- Workflow를 재개하면 이미 끝난
pipeline(),parallel()에이전트를 실행 기록(journal)에서 가져오지 않고 다시 실행하던 문제 수정. - Remote Control 사용 중
/resume으로 대화를 바꾸면/resume목록에 빈 “(session)” 항목이 남던 문제 수정. - [Cloud sessions] Cloud environments 관리자 페이지가 기존 환경을 “installs packages” 오류로 저장하지 못하던 문제 수정.
화면 표시와 접근성
- 좁은 터미널에서
/usage행이 잘리던 문제 수정. - 시작 경고가 로고 위에 가공되지 않은 텍스트로 출력되던 문제 수정. 이제 경고는 디버그 로그로 가고, 아무것도 제한하지 않는 권한 규칙은 배너 아래 경고 행으로 표시됩니다.
- 스크린 리더 모드에서 검색창 기호를 VoiceOver가 “telephone recorder”로 읽던 문제, Ctrl+R 검색 결과나 “ultrathink”처럼 강조된 프롬프트 텍스트의 단어 중간에 공백이 들어가던 문제 수정. 검색창은 이제 “Search:“로 읽힙니다.
- [VSCode]
spinnerVerbs설정으로 기본 동사를 짧은 것으로 바꾸면 스피너가 “Compacting…”을 잘라 보여 주던 문제 수정.
Self-hosted runner
- 2.1.300 회귀:
TERM이 설정된 상태에서 stdout만 runner나 orchestrator와 공유하는 시작 스크립트가Resource temporarily unavailable로 실패하던 문제 수정. - 2.1.296부터 git credential helper나 askpass 프로그램이
GIT_CONFIG로 설정을 읽으면 저장소 접근이 실패하던 문제 수정. - 백그라운드로 띄운 runner가 출력을 열어 둔 채 남아 있으면 orchestrator가 spawn-runner 훅을 시간 초과로 보고하던 문제 수정.
Claude Tag (Slack), Code Review
- 다른 GitHub 계정으로 옮긴 저장소를 Claude Tag 접근 번들에 다시 추가할 수 없던 문제 수정.
- Slack DM 스레드에서 설정한 루틴이, 같은 스레드의 다른 루틴이 대화를 새로 시작한 뒤 더 이상 게시하지 않던 문제 수정. 이제 두 루틴 모두 계속 게시합니다.
- 대화가 끝난 Slack 스레드의 루틴이 실제로 게시하지 않고 성공으로 보고하던 문제 수정. 이제 해당 실행은 건너뛰고 만든 사람에게 알립니다.
- [Code Review] 리뷰 도중 pull request에 여러 번 push되면 가장 최근 커밋을 리뷰하지 않을 수 있던 문제 수정.
알아두면 좋은 점
- Vertex, Bedrock, LLM 게이트웨이를 쓰는데 2.1.304에서 모든 요청이 실패했다면 이번 버전으로 업데이트하면 해결됩니다.
managed-mcp.json과allowedMcpServers로 MCP 서버를 관리한다면env에만${VAR}를 쓰는 stdio 서버가 업데이트 후 불러와질 수 있습니다. 계속 막으려면deniedMcpServers에 추가하세요.sandbox.allowNestedUserNamespaces를 켜면 샌드박스 명령이 파일 보호를 우회할 수 있습니다. Chromium, rootless podman처럼 꼭 필요한 경우에만 사용하세요./artifacts삭제 확인에y,n을 쓰던 습관이 있다면 이제 1(남기기), 2(삭제), Esc(취소)로 답해야 합니다.