Claude Code v2.1.299 변경점: 유휴 압축과 MCP 규칙 변경

Claude Code v2.1.299는 긴 대화의 프롬프트 캐시 비용을 줄이는 유휴 압축을 추가했습니다. 함께 MCP 권한 규칙과 훅 실행 순서가 바뀌어, 기존 설정을 쓰는 분은 확인할 부분이 있습니다.

핵심 요약
  • 200K 토큰 이상 대화를 약 54분 유휴 시 압축하는 idle compaction이 터미널에 추가되었습니다.
  • CLAUDE_CODE_DISABLE_FILE_MENTIONS로 @ 파일 멘션이 내용 대신 경로만 전달하도록 바꿀 수 있습니다.
  • MCP allow 규칙이 이름이 정확히 일치하는 서버에만 적용되어 mcp__a가 a__b 서버를 허용하지 않습니다.
  • UserPromptSubmit 훅이 스킬과 슬래시 명령 확장 전에 실행되어, 차단된 프롬프트의 내장 셸 명령도 막힙니다.
목차
  1. 릴리스 노트 전체
  2. 새로 쓸 수 있게 된 기능
  3. 업데이트 효과 직접 재보기
  4. 업데이트하고 버전 확인하기

릴리스 노트 전체

공식 릴리스 노트의 190개 항목을 원문 순서대로 한 줄씩 옮겼습니다. 더하거나 뺀 항목은 없습니다.

  1. `CLAUDE_CODE_DISABLE_FILE_MENTIONS` 환경 변수를 추가했습니다: Claude가 `@` 파일 멘션의 내용 대신 경로를 받아 파일 도구로 직접 읽습니다
  2. 터미널에 유휴 압축을 추가했습니다: 200K 토큰 이상의 대화가 약 54분간 유휴 상태이면 1시간짜리 프롬프트 캐시가 만료되기 전에 압축하므로, 다음 메시지를 보낼 때 전체를 다시 처리하지 않습니다
  3. 유휴 압축의 최소 기준인 200K 토큰을 바꾸는 `CLAUDE_CODE_IDLE_COMPACT_MIN_TOKENS`를 추가했습니다. settings.json의 `"idleCompaction": false`로 끌 수 있습니다. 둘 다 v2.1.290 이상이 필요합니다
  4. 관리형 설정으로 설치된 모드의 `prompt.submit` 훅이 프롬프트에 첨부된 이미지나 문서의 바이트를 읽을 수 있도록 `$.prompt.media`를 추가했습니다
  5. 관리형 설정으로 설치된 모드를 위한 `$.session.identity()`를 추가했습니다: 세션의 로그인 방식과, 관리형 `forceLoginOrgUUID`에 해당 조직이 있으면 그 조직과 이메일을 알려줍니다
  6. 모드의 `Text`에 `size`, `weight`, `mono`, `tabular`를, `Box`에 이름이 붙은 간격 단계(`xs`~`xl`)를 추가했습니다. `bold`는 `weight`로 대체되어 더 이상 사용되지 않습니다
  7. `claude self-hosted-runner orchestrator`에 `--shutdown-drain-sec`를 추가했습니다: SIGTERM을 받으면 폴링을 중단하고, 진행 중인 폴링과 실행 중인 spawn 훅이 끝날 때까지 최대 지정한 초만큼 기다립니다
  8. 모드의 `skill.prompt` 훅이 받는 정보에 스킬의 프런트매터, 출처, 플러그인 이름, 파일 경로를 추가했습니다
  9. 에이전트 보기에서 새 세션의 시작 설정을 정하는 `/effort`와 `/fast`를 추가했습니다. 이제 거기서 인자 없이 `/model`, `/effort`, `/fast`를 입력하면 선택기가 열립니다
  10. `--safe-mode`로 시작한 백그라운드 세션에 대해 에이전트 보기 미리보기 패널에 "safe mode" 줄을 추가했습니다
  11. 권한 우회가 가능하여 계획 모드가 대부분의 편집이나 명령 전에 묻지 않을 때 한 번 표시되는 안내를 추가했습니다
  12. `claude plugin eval`에 `--disallow-tools`와 `disallowed_tools` 케이스 필드를 추가해, Agent 같은 특정 내장 도구를 평가 실행에서 제외할 수 있습니다
  13. Claude Desktop의 Code 탭에서 귀속 표시 블록을 끄는 기능을 추가했습니다: Claude apps 게이트웨이의 `code` 정책 `env`에 `CLAUDE_CODE_ATTRIBUTION_HEADER=0`을 설정하면 됩니다
  14. Claude apps 게이트웨이를 거치는 Claude Code 세션의 귀속 표시 블록에 필드를 추가했습니다. 블록은 `CLAUDE_CODE_ATTRIBUTION_HEADER=0`으로 제거할 수 있습니다
  15. `session.append` 모드 훅에 `queue` 도어를 추가해, 모드가 대화 기록의 큐 레코드를 전송된 프롬프트와 다르게 만들 수 있습니다
  16. 조직이 Claude Code를 관리하는 환경에서 건너뛰는 모드의 훅을 알려주는 안내를 `/plugin`과 `claude plugin validate`에 추가했습니다
  17. 최대 effort, 워크플로, 상시 컨텍스트, 큰 도구 결과에 대한 `/usage` 경고를 추가했습니다
  18. `apiKeyHelper`의 키를 사용 중일 때 거부된 클라우드 세션의 오류가 엉뚱한 조직을 가리킬 수 있던 문제를 고쳤습니다
  19. 사용자 지정 `ANTHROPIC_BASE_URL` 뒤에서 게이트웨이 전용 모델 이름을 쓰는 세션이, 요청을 보내는 대신 200K 토큰 근처에서 "Prompt is too long · automatic compaction failed"로 끝나던 문제를 고쳤습니다
  20. 매 턴이 끝날 때마다 프롬프트를 제출하는 모드 때문에 헤드리스 실행이 `--max-turns`, `--max-budget-usd`, 인터럽트, 호스트 대화 종료 이후에도 계속되던 문제를 고쳤습니다
  21. 클라우드 세션에서 모델의 후속 텍스트가 도구 그룹의 한 줄 라벨 뒤에 표시되는 경우가 있던 문제를 고쳤습니다
  22. 설정 디렉터리 경로에 `.claude`가 없을 때, 편집 수락 모드에서 Write와 Edit 도구가 묻지 않고 세션의 mods 폴더에 모드를 만들던 문제를 고쳤습니다
  23. 원격으로 꺼진 뒤에도 열린 세션에서 계속 실행되던 설치된 모드를 고쳤습니다. 이제 턴 사이에 언로드됩니다
  24. `UserPromptSubmit` 또는 모드 `prompt.submit` 훅이 아직 실행 중일 때 중단된 메시지에 대해 Cowork와 claude.ai 클라우드 세션의 Edit와 Retry가 실패하던 문제를 고쳤습니다 (2.1.296의 회귀)
  25. 설명 없이 시작한 에이전트 팀원의 작업 설명에 프롬프트에 있던 자격 증명 일부가 남아 표시되던 문제를 고쳤습니다
  26. 느린 연결에서 대량의 이벤트 업로드를 끝내지 못할 때 Remote Control 또는 클라우드 세션의 claude.ai 화면이 멈추던 문제를 고쳤습니다
  27. 샌드박스 안의 셸 명령이, Claude Code가 샌드박스 밖에서 다시 불러와 실행하는 `--plugin-dir` 폴더에 쓸 수 있던 문제를 고쳤습니다
  28. 디버그 로깅(`--debug`, `--debug-file`)이 많을 때의 메모리 증가와, 디버그 로그가 쓰기를 받지 않게 된 디스크나 네트워크 마운트에 있을 때 종료 시 멈추던 문제를 고쳤습니다
  29. 디버그 출력이 stderr로 가고 부모 프로세스가 읽기를 멈출 때 메모리가 끝없이 증가하던 문제를 고쳤습니다
  30. `rm`을 실행하지 않는 셸 `-c` 스크립트에서 rm 확인 창이 뜨던 문제를 고쳤습니다. Claude Code가 읽을 수 없는 스크립트에서 실행 시점에 만들어지는 rm은 `CLAUDE_CODE_STRICT_INLINE_SHELL_RM_PROMPT=1`이 아니면 더 이상 확인을 요구하지 않습니다
  31. 전체 화면 모드에서 펼친 대화 기록 행의 단어를 더블클릭하면 단어가 선택되지 않고 행이 접히던 문제를 고쳤습니다
  32. `claude mcp list`, `claude doctor`, `/status`가 빈 `.mcp.json`을 유효하지 않다고 보고하던 문제를 고쳤습니다
  33. 전체 화면에서 위로 스크롤한 상태로 `/btw`를 물으면 대화 기록이 맨 아래로 이동하던 문제를 고쳤습니다
  34. 샌드박스가 Windows 드라이브에 쓸 수 있을 때 WSL2에서 샌드박스 명령이 `bwrap: Can't mkdir /mnt/c/Program Files/ClaudeCode`로 실패하던 문제를 고쳤습니다
  35. Agent SDK, IDE, `claude remote-control` 세션에서 백그라운드 작업이 실행 중일 때 예약된 깨우기(ScheduleWakeup)가 작동하지 않던 문제를 고쳤습니다
  36. 붙여넣은 이미지가 있거나 읽을 수 없는 이미지가 있는 일부 프롬프트에서 모드의 `prompt.submit` 재작성이 조용히 무시되고 입력한 그대로 전송되던 문제를 고쳤습니다
  37. 같은 배치의 다른 대기 프롬프트 전달이 실패하면 Remote Control 프롬프트가 유실되던 문제를 고쳤습니다
  38. Stop이 다음 대기 프롬프트의 훅을 중단했을 때, 훅을 이미 통과한 Remote Control 프롬프트가 프롬프트 기록에서 빠지던 문제를 고쳤습니다
  39. 샌드박스 명령이 설정 디렉터리에 빈 `.config.json`을 남긴 뒤 Linux에서 로그인, MCP 서버, 프로젝트 신뢰 정보가 사라진 것처럼 보이던 문제를 고쳤습니다
  40. 프로젝트 폴더에 쓸 수 없어 설정을 저장하지 못했는데도 `/sandbox`가 성공했다고 보고하던 문제를 고쳤습니다. 이제 아무것도 바뀌지 않았다는 사실과 그 이유를 알려줍니다
  41. 호스트가 자동 모드를 지원하지 않는 모델로 전환한 뒤에도 SDK 및 헤드리스 세션이 자동 모드에 머물던 문제를 고쳤습니다
  42. MCP 설정에서 이름이 `constructor` 또는 `prototype`인 MCP 서버에 연결되지 않던 문제를 고쳤습니다
  43. 이름이 `constructor` 또는 `toString`인 MCP 서버의 도구가 자동 모드와 권한 우회 모드에서 권한을 요청하던 문제를 고쳤습니다
  44. 다른 Claude Code 프로세스가 claude.ai에서 동기화된 플러그인을 방금 업데이트했을 때 시작 시 "synced[0] commands path not found" 플러그인 오류가 잘못 표시되던 문제를 고쳤습니다
  45. 커넥터나 기타 접근 권한을 요청하는 게시가 서버나 프록시에 의해 거부되었을 때(HTTP 403) Artifact 도구가 재시도를 권하던 문제를 고쳤습니다. 이제 그 사실과 사용자에게 안내할 내용을 알려줍니다
  46. 시간 초과된 플러그인 다시 불러오기나 최근 동기화를 재사용한 재시작 뒤에도 Cowork 클라우드 세션이 이전 계정 플러그인을 계속 쓰던 문제를 고쳤습니다
  47. Claude가 작업하는 동안 보낸 사용자의 메시지에서 문서 블록이 누락되던 문제를 고쳤습니다
  48. 브라우저가 연결되지 않았을 때 Claude in Chrome이 권한을 요청하던 문제를 고쳤습니다. 이제 확장 프로그램이 연결되지 않았다고 알려줍니다
  49. 전체 화면의 "Update installed" 알림이 유휴 상태의 "/clear to save tokens" 힌트에 가려지던 문제를 고쳤습니다. 이제 힌트 옆에 표시됩니다
  50. `.catch`의 유무와 관계없이, 작업을 호출 밖에서 처리하는 다른 모드의 noun을 기다리는 모드 훅이 끝없이 다시 실행되던 문제를 고쳤습니다
  51. Claude apps 게이트웨이가 정책의 `availableModelsMatch: exact` 또는 `deniedModels`가 차단한 모델을 제공하던 문제를 고쳤습니다. 이제 400으로 응답하고 모델 목록에서 제외합니다
  52. 관리형 설정 파일이 `ANTHROPIC_BASE_URL`을 설정한 경우 Anthropic으로 가는 서버 관리형 설정 요청에 서드파티 게이트웨이의 API 키가 실리던 문제를 고쳤습니다
  53. 사용자 지정 `ANTHROPIC_BASE_URL`을 통한 스트림이 데이터가 없는 상태로 180초가 지나면 중단되던 문제를 고쳤습니다. 이제 기능 플래그 로드 여부와 관계없이 300초를 기다립니다
  54. `$.ui.invalidate` 이후 바뀐 모드의 `tool.describe` 또는 `prompt.section` 응답이 Claude에게 전달되지 않던 문제를 고쳤습니다. 이제 새 응답이 다음 턴에 전송됩니다
  55. `enabledMcpjsonServers` 또는 `disabledMcpjsonServers`에 서버 이름 하나(문자, 숫자, - 또는 _)가 일반 문자열로 들어 있을 때 설정 파일이 무시되던 문제를 고쳤습니다
  56. `claude plugin test`에서 호출된 `$` 메서드가 응답한 뒤에도 계속 `$`를 호출하는 동안 훅의 시간 예산이 일시 중지되던 문제를 고쳤습니다
  57. 서브에이전트를 많이 실행한 클라우드 또는 Remote Control 세션을 재개한 뒤 메모리 사용량이 높던 문제를 고쳤습니다
  58. 매우 깊게 중첩된 도구 입력이나 메시지를 next()로 넘길 때 플러그인 훅이 건너뛰어지던 문제를 고쳤습니다
  59. 모드의 훅이 `next()`에 넘기거나 반환하거나 `$` 메서드로 보내는 값의 getter 하나가 `RangeError`를 던지면 값 전체가 거부되던 문제를 고쳤습니다. 이제 해당 키만 거부됩니다
  60. `/usage`, 한도 임박 경고(터미널 및 VS Code), 상태 표시줄이 간혹 100%를 넘는 사용량을 표시하던 문제를 고쳤습니다 (anthropics/claude-code#92238)
  61. CJK 또는 이모지가 라틴 단어와 섞인 줄바꿈 텍스트가 일부 터미널 너비에서 마지막 줄을 잃거나 빈 행이 생기던 문제를 고쳤습니다
  62. 세션의 워커가 교체되는 동안 권한 프롬프트나 질문에 답하면 클라우드 세션이 그 답변을 무시하는 경우가 있던 문제를 고쳤습니다
  63. 굵게, 기울임 등 중첩된 텍스트 스타일이 표 테두리를 넘어서거나 줄바꿈된 행에서 사라지던 문제를 고쳤습니다
  64. 다른 기기에서 변경, 제거 또는 비활성화한 계정 플러그인의 이전 버전이 세션을 다시 시작할 때까지 Cowork 클라우드 세션에서 계속 실행되던 문제를 고쳤습니다
  65. MCP 서버의 정규화된 이름에 밑줄 두 개가 들어 있으면 해당 서버(`mcp__<server>`)에 대한 deny 및 ask 규칙이 적용되지 않던 문제를 고쳤습니다
  66. 용량이 너무 큰 이미지 하나를 API가 거부한 뒤, 긴 대화에서 새로 첨부한 이미지가 매 턴마다 누락되던 문제를 고쳤습니다
  67. 훅이 hooks 모듈인 플러그인(기본 제공 플러그인 포함)에 대해 `plugin_loaded` 텔레메트리 이벤트가 `has_hooks`를 false로 보고하던 문제를 고쳤습니다
  68. Claude가 작업하는 동안 첨부한 이미지(VS Code, 데스크톱 앱, SDK)가 원래 크기로 전송되어 긴 대화에서 이미지 오류가 반복되던 문제를 고쳤습니다
  69. 최신 모델에서 정사각형에 가까운 큰 이미지의 이미지 좌표 힌트가 없거나 약간 어긋나던 문제를 고쳤습니다
  70. 서드파티 게이트웨이(`ANTHROPIC_BASE_URL`)용으로 설정한 API 키가 Anthropic으로 가는 기능 플래그, 시작, 빠른 모드, 프로필, 피드백 요청에 함께 실리던 문제를 고쳤습니다. Anthropic API 키는 계속 전송됩니다
  71. 모드의 핫 리로드가 리로드 실패 직후 저장한 수정을 무시하던 문제를 고쳤습니다. 내용을 바꾸지 않고 모드 파일을 저장해도 더 이상 모드를 다시 로드하지 않습니다
  72. 훅이 모드의 다른 파일에서 가져온 함수 선언에 `$`를 넘길 때 소스 파일에서 로드한 모드가 거부되던 문제를 고쳤습니다
  73. 2.1.296에서 발생한 회귀로, 재시작 후 세션을 재개하는 중에 새 메시지가 도착하면 클라우드 및 헤드리스 세션이 승인된 도구 호출을 두 번 실행할 수 있던 문제를 고쳤습니다
  74. 예약된 작업이 잘못된 분으로 안내되던 문제를 고쳤습니다. 이제 스케줄링 도구가 각 작업의 실제 다음 실행 시각을 보고합니다
  75. 모드의 훅에 전달되는 값에서 `__proto__` 키가 조용히 제거되어, 다른 모드가 수행한 도구 호출에서 `tool.check` 가드를 건너뛸 수 있던 문제를 고쳤습니다
  76. 설정 파일이 유효성 검사에 실패해도 `claude -p`가 아무 말도 하지 않던 문제를 고쳤습니다. 이제 텍스트 출력 실행에서는 해당 파일과 잘못된 항목을 stderr에 나열합니다
  77. 괄호 붙여넣기(bracketed paste)를 지원하지 않는 터미널에서, 잘못 디코딩된 곡선 따옴표 같은 보이지 않는 제어 문자 뒤의 텍스트가 긴 붙여넣기에서 모두 사라지던 문제를 고쳤습니다
  78. MDM 또는 관리형 설정 파일이 `forceLoginOrgUUID`를 지정한 기기에서 저장된 로그인의 요금제를 로컬에서 변경하면 관리형 설정과 조직 정책을 가져오지 못하던 문제를 고쳤습니다
  79. 서버가 알림에 대한 응답 본문을 끝내지 않을 때 HTTP를 통한 MCP 연결이 30초 동안 멈췄다가 실패하던 문제를 고쳤습니다 (anthropics/claude-code#99014)
  80. 실행 중인 헤드리스 또는 SDK 세션에 추가된 MCP 서버가 일부 정책 검사가 실행되기 전에 연결되던 문제를 고쳤습니다. 이제 차단된 서버는 접속하지 않고 실패로 보고됩니다
  81. `claude mcp list`, `claude mcp get`, 서브에이전트 MCP 서버가 정책 검사로 차단된 서버를 시작하던 문제를 고쳤습니다. 이제 시작하지 않고 차단됨으로 보고됩니다
  82. `/reload-plugins`가 직전에 다른 터미널에서 설치한 플러그인을 로드하지 못하던 문제를 고쳤습니다
  83. 아주 좁은 터미널처럼 한 칸 너비의 열에 CJK 및 이모지 텍스트가 압축될 때 아래에 빈 행이 나타나던 문제를 고쳤습니다
  84. 넓은 문자 옆에서 텍스트가 중간에 잘릴 때 한 칸이 비거나 두 번 잘리던 문제와, 이모지 안에서 색상이 바뀌면 이모지가 사라지던 문제를 고쳤습니다
  85. 백그라운드 세션의 bare 모드 알림이 모드가 유지되는 `--bare` 없이 다시 시작하라고 안내하던 문제를 고쳤습니다. 이제 안전 모드 알림처럼 `/stop`과 `claude --resume`을 안내합니다
  86. Remote Control이 켜져 있을 때 대기 중인 메시지 위에서 `←`가 움직이지 않는 이유를 알려 주지 않던 문제를 고쳤습니다
  87. 모드의 `$.http.fetch`가 4 MiB 본문 제한을 넘는 `Content-Length`를 선언한 `304`, `204`, `205` 응답을 거부하던 문제를 고쳤습니다
  88. `/config`의 푸시 알림 토글이 방금 선택한 설정이 아니라 이전 설정을 계정에 보내던 문제를 고쳤습니다
  89. 응답이 출력 토큰 한도에 도달한 직후 워커가 교체되면 클라우드 세션이 응답을 끝내지 못한 채 남겨 두던 문제를 고쳤습니다
  90. 권한 상승 없이 실행되는 Linux의 원격 세션에서 Read가 PDF 페이지 범위 읽기에 실패하던 문제를 고쳤습니다
  91. 전송하지 않은 메시지를 입력하는 동안 보류된 질문이나 권한 프롬프트에 Enter가 응답하던 문제를 고쳤습니다
  92. 원격 세션에서 메시지에 첨부한 파일의 다운로드가 중간에 멈추면 파일이 누락되던 문제를 고쳤습니다. 이제 다운로드를 다시 시도합니다
  93. `--input-format stream-json`으로 콘텐츠 블록 형태로 보낸 대기 중 프롬프트가 한 턴으로 병합될 때 줄바꿈 없이 붙어 버리던 문제를 고쳤습니다
  94. 셀프 호스팅 러너 세션에서 연결 도구(커넥터)가 세션 도중 바뀔 때 `--exec-path` 래퍼 자체의 `--mcp-config`로 추가된 MCP 서버가 종료되던 문제를 고쳤습니다
  95. API가 거부한 실행을 `claude plugin eval`이 통과로 처리하던 문제를 고쳤습니다. 이제 API 오류로 끝난 실행은 채점 없이 0점 처리되고 스위트가 종료 코드 1로 끝납니다
  96. 사유 텍스트에 키캡 또는 결합 이모지가 있을 때 권한 프롬프트가 잘리거나 너무 일찍 줄바꿈되던 문제를 고쳤습니다
  97. MDM 또는 관리형 설정 파일의 `forceLoginOrgUUID`와 `forceLoginMethod`가 서버 관리형 설정에 가려지거나 대체되던 문제를 고쳤습니다
  98. `--bare` 세션이 `--channels`로 요청한 `constructor` 또는 `prototype`이라는 이름의 MCP 서버를 누락하던 문제를 고쳤습니다
  99. `/clear` 이전의 대화를 재개하면 그 이후 대화의 Remote Control 세션에 다시 연결되던 문제를 고쳤습니다
  100. `CLAUDE_CODE_RESUME_INTERRUPTED_TURN`이 재시작 후 프롬프트를 다시 실행할 때, Agent SDK의 `verbatimPrompts` 옵션으로 보낸 `/`로 시작하는 프롬프트가 슬래시 명령으로 실행되던 문제를 고쳤습니다
  101. `--safe-mode`로 시작한 백그라운드 세션이 깨어나거나 다시 시작될 때 조용히 안전 모드를 벗어나던 문제를 고쳤습니다
  102. 일광 절약 시간제가 끝나 같은 시간이 반복되는 동안 예약된 작업과 루프가 매 턴마다 다시 실행되거나 일찍 실행되던 문제를 고쳤습니다
  103. 이름이 공백으로 시작하거나 끝나는 새 파일을 diff 보기에서 잘못된 이름으로 표시하던 문제를 고쳤습니다
  104. 백그라운드 재연결로 실행 중이던 연결이 닫히면 헤드리스 및 SDK 세션의 MCP 도구 호출이 실패하거나 두 번 실행되는 경우가 있던 문제를 고쳤습니다
  105. 비대화형 세션에서 `/btw` 부가 질문이 세션 종료 시 취소되지 않고, 같은 요청이 실행 도중 다시 도착하면 두 번 실행되던 문제를 고쳤습니다
  106. macOS에서 거부된 경로가 심볼릭 링크를 거치는 경우, 샌드박스 명령이 실제 위치를 통해 그 경로를 읽거나 쓸 수 있던 문제를 고쳤습니다
  107. 폴더 이름에 중괄호, 괄호, 역슬래시가 있을 때 샌드박스 `denyRead` 및 `allowRead` 글롭을 Claude Code의 설정 검사와 샌드박스가 서로 다르게 해석하던 문제를 고쳤습니다
  108. 샌드박스 글롭 `allowRead` 및 `allowWrite` 항목의 시작 디렉터리가 심볼릭 링크로 교체될 때 다시 검사되지 않던 문제를 고쳤습니다
  109. 워크트리 격리 세션이 격리 가드가 거부해야 할 일부 awk 프로그램을 허용하던 문제를 고쳤습니다
  110. `claude mcp add <name> -- <command> --background`가 백그라운드 세션으로 시작되던 문제를 고쳤습니다
  111. 백그라운드 세션에 보낸 프롬프트나 답장이 `--bg` 또는 `--background`이면 플래그로 인식되어, 전달되지 않고 새 세션이 계속 시작될 수 있던 문제를 고쳤습니다
  112. 프롬프트를 검사하는 동안 더 새로운 메시지가 명령을 중단시키면 사용자 정의 슬래시 명령에 포함된 셸 줄이 두 번 실행되던 문제를 고쳤습니다
  113. git의 reftable ref 저장소를 쓰는 저장소에서 `--worktree` 세션이 `.git/worktrees`에 폴더를 남기던 문제를 고쳤습니다
  114. 원격 저장소가 아직 비어 있는 재사용 클론에서 시작할 때, Anthropic 관리 git을 쓰는 `claude self-hosted-runner` 세션이 추적 중인 파일을 스테이징된 삭제로 표시하던 문제를 고쳤습니다
  115. 설정에서 `ultracode`가 켜져 있을 때 예약된 작업과 그 밖의 전달된 헤드리스 턴에 Ultracode가 안내되지 않던 문제를 고쳤습니다
  116. MCP OAuth 로그인, 토큰 갱신, 로그아웃이 설정된 `headers`/`headersHelper` 값을 보내지 않아 인증 프록시 뒤의 서버가 동작하지 않던 문제를 고쳤습니다
  117. `<head>` 뒤에 줄바꿈이 있는 큰 페이지를 변경 없이 다시 게시할 때 Artifact 도구가 라이브 페이지와의 가짜 한 줄 차이를 보고하고 게시를 거부하던 문제를 고쳤습니다
  118. VS Code용 Claude Code와 `claude -p`처럼 어떤 화면도 모드의 창을 그리지 않는 세션에서 `$.ui.open`이 창이 배치된 것으로 보고하던 문제를 고쳤습니다
  119. 완료된 서브에이전트나 종료된 팀원을 재개할 때 `agent.spawn` 모드 훅이 실행되지 않던 문제를 고쳤습니다. 이제 훅의 이벤트에 `resume`이 담기며 모드가 이를 거부할 수 있습니다
  120. `plugin.json`에 `types` 키가 없고 계약이 `./types/index.d.ts`에 있을 때 `claude plugin validate`가 모드의 `$.state` 참조를 거부하던 문제를 고쳤습니다
  121. 어두운 ANSI 테마와 16색 터미널에서 mod의 `dimColor` 텍스트가 일반 텍스트와 똑같아 보이던 문제를 고쳤습니다
  122. `PreToolUse` 훅이나 mod의 `tool.check` 훅이 허용한 쓰기 작업(MCP 도구, 파일, 셸 명령)을 계획 모드가 실행하던 문제를 고쳤습니다
  123. 자동 모드의 백그라운드 서브에이전트가 최종 보고를 결과와 메시지로 두 번 보내는 경우가 있던 문제를 고쳤습니다
  124. CLI를 다시 시작해 세션을 재개한 뒤 `SendMessage`가 이름으로 서브에이전트를 찾지 못하던 문제를 고쳤습니다(마지막 압축 이전에 지정한 이름은 여전히 에이전트 ID가 필요합니다)
  125. 요청이 비스트리밍 모드로 전환된 뒤, 출력 토큰 한도에서 잘린 응답이 재시도나 오류 없이 조용히 턴을 끝내던 문제를 고쳤습니다
  126. Read가 바이트 순서 표시(BOM)가 있는 UTF-16LE 파일을 깨뜨리던 문제와, Write가 바이트 순서 표시를 없애거나 Windows-1252, Shift-JIS, GBK, UTF-16BE 파일을 조용히 UTF-8로 변환하던 문제를 고쳤습니다(이제 거부합니다)
  127. 압축 직후 워커가 교체될 때 클라우드 세션에서 메시지가 응답 없이 남는 경우가 있던 문제를 고쳤습니다
  128. 도구가 턴을 끝내고 같은 단계에서 스킬이 로드된 경우, 재시작 후 클라우드 세션과 `CLAUDE_CODE_RESUME_INTERRUPTED_TURN`이 이미 끝난 턴에 다시 응답하는 경우가 있던 문제를 고쳤습니다
  129. Remote Control로 보낸 사진의 사본을 컴퓨터에 저장하지 못하면 사진이 버려지던 문제를 고쳤습니다. 이제 Claude는 그 사진을 그대로 볼 수 있습니다
  130. 오래 실행된 세션에서 Remote Control로 보낸 파일이 간혹 도착하지 않던 문제를 고쳤습니다
  131. Remote Control이나 클라우드 세션으로 보낸 30~35 MiB 크기의 파일이 도착하지 않던 문제를 고쳤습니다
  132. 사용자가 설치한 mod의 `$.env.set`이 관리형 설정의 명령 훅이 시작되는 환경이나 셸 접두사를 바꾸던 문제를 고쳤습니다
  133. Windows: 바쁜 컴퓨터에서 프로세스 생존 확인이 고아 PowerShell 프로세스를 남겨 메모리가 바닥날 때까지 쌓이던 문제를 고쳤습니다
  134. Windows: 셸을 지정하지 않은 PreToolUse 및 PermissionRequest 훅이 Git for Windows가 설치되어 있지 않을 때 실패해도 통과시키던 문제를 고쳤습니다. 이제 실패하는 가드는 호출을 차단합니다
  135. Windows: Git Bash가 시작 시 PATH를 보고하지 않으면 세션 내내 Bash 명령이 "command not found"로 실패하던 문제를 고쳤습니다
  136. 자체 호스팅 러너: 러너 머신에 git 자격 증명이 없을 때 `setup`과 `doctor`가 보여 주는 안내를 개선했습니다
  137. 자체 호스팅 러너: 첫 턴 전에 출력을 쓴 세션이 해제 타이머 없이 남아 `--retire-at`을 무시하고 종료를 지연시키던 문제를 고쳤습니다
  138. claude.ai 로그인이 거부되었거나 만료되어 클라우드 세션이 거부될 때 표시되는 오류를 개선했습니다. 이제 `claude auth login`으로 다시 로그인하라고 안내합니다
  139. 사용자가 설치한 mod에 대한 관리형 권한 규칙, 관리형 훅, 조직 MCP 도구 이름의 적용을 개선했습니다
  140. PDF를 @로 언급할 때의 메모리와 디스크 사용을 개선했습니다. 이제 PDF의 바이트가 세션 대화 기록에 보관되지 않습니다
  141. Linux의 샌드박스 Bash를 개선했습니다. 이제 명령에 대한 와일드카드 읽기 규칙을 확장하는 동안에도 Esc와 Ctrl-C가 동작합니다
  142. 인식할 수 없는 모델 ID에 대한 시작 경고를 개선했습니다. 이제 긴 원문 메시지 대신 환영 배너 아래에 문서 링크가 포함된 짧은 한 줄로 표시됩니다
  143. mod 공유를 위한 플러그인 제작 스킬의 단계를 개선했습니다. Claude가 공개 또는 비공개 여부를 묻고, GitHub 저장소를 만들기 전에 파일을 확인합니다
  144. Claude가 스킬에 `anthropic-skills:` 접두사를 잘못 붙였을 때, Skill 도구의 "Unknown skill" 오류가 목록에 있는 스킬 이름을 제안하도록 개선했습니다
  145. `/reload-skills`가 전체 스킬 목록을 Claude에게 다시 보낸다는 점, 즉 압축 후 스킬을 되살리는 방법임을 알려 주도록 개선했습니다
  146. 기준 커밋을 확인할 수 없어 워크트리를 만들지 못할 때 표시되는 오류를 개선했습니다. 이제 조회가 어떻게 끝났는지와 커밋이 없는 저장소 같은 가능한 원인을 알려 줍니다
  147. 베어 저장소 구조의 루트에 워크트리를 만들 때의 오류를 개선했습니다. 이제 관련 없는 git 오류 대신 해당 구조를 설명합니다
  148. 아티팩트 감시를 개선했습니다. 이제 로컬 세션이 게시된 아티팩트를 최대 25개까지 동시에 감시할 수 있습니다(기존 10개)
  149. 백그라운드 에이전트 알림을 개선했습니다. 이제 에이전트가 자신의 백그라운드 작업만 기다리는 경우, 결과를 내기엔 너무 늦게 메시지를 받은 경우, 사용량 한도로 중지된 경우를 알려 줍니다
  150. 플러그인 훅과 워크플로 스크립트가 28,000단계보다 깊게 중첩된 반환 값을 거부하도록 변경했습니다. 한도를 명시한 오류가 표시됩니다(워크플로 스크립트는 기존에 100,000단계까지 허용했습니다)
  151. 플러그인 훅이 차단할 수 있는 동작은 훅에 전달할 수 없거나 훅이 응답을 돌려줄 수 없을 때 통과시키지 않고 거부하도록 변경했습니다. 이미 실행된 도구는 결과가 보류됩니다
  152. claude.ai 커넥터 프록시와 Anthropic 호스팅 MCP 서버로 가는 요청이 더 이상 HTTP 리디렉션을 따르지 않도록 변경했습니다. 커넥터 자체 서버의 리디렉션은 영향받지 않습니다
  153. 클라우드 및 자체 호스팅 러너 세션의 MCP 요청이 더 이상 세션의 MCP 프록시가 보내는 HTTP 리디렉션을 따르지 않도록 변경했습니다
  154. 스킬과 명령 로딩을 변경했습니다. 파일 또는 폴더 이름에 숨김 문자, 방향 전환 문자, 공백처럼 보이는 문자, `<` 또는 `>`가 있는 항목은 이름을 바꿀 때까지 제공되지 않으며, 이런 `name:`은 무시됩니다
  155. `claude plugin test`의 `ui.render` 트리를 변경했습니다. 이제 각 mod의 Box 또는 Text 루트에 mod를 나타내는 `part: { plugin }`이 포함되므로 정확한 트리 단언에도 이를 넣어야 합니다
  156. WebFetch 페이지 읽기가 웹 검색과 같은 방식으로 노력 수준을 정하도록 변경했습니다. 호출자의 모델에서는 호출자의 수준을 쓰고, 그렇지 않으면 설정이 작은 모델에 지정한 수준을 씁니다
  157. `claude plugin test`가 세션처럼 mod가 제공하는 `$` 메서드 호출이 10초 안에 응답하지 않으면 실패하도록 변경했습니다
  158. MCP 허용 규칙이 이름이 지정된 서버에만 적용되도록 변경했습니다. 이제 `mcp__a`는 `a__b` 또는 `a_`라는 서버를 허용하지 않으며, 서버의 정규화된 전체 이름으로 `mcp__<server>__*`를 작성해야 합니다
  159. 에이전트의 `tools:` 목록이 이름이 지정된 MCP 서버의 도구만 받도록 변경했습니다. 이름에 `__`가 포함된 서버는 `mcp__<whole name>__*`로 나열하세요
  160. 자동 모드가 아닌 Cowork 클라우드 세션의 Claude in Chrome을 변경했습니다. 안전 분류기가 표시한 승인된 사이트의 동작은 이제 거부되지 않고 사용자에게 묻습니다. 단, 관리형 설정이 적용되는 경우는 제외입니다
  161. 플래그를 가져오지 않는 설치에서 클라우드 세션 및 Remote Control MCP 커넥터가 기본적으로 MCP 프로토콜 버전 2026-07-28을 협상하도록 변경했습니다. `MCP_PROTOCOL_NEGOTIATION=legacy`로 사용 중지할 수 있습니다
  162. `api.anthropic.com`의 Anthropic 자사 MCP 서버가 제공하는 MCP 도구 설명과 서버 지침이 4,096자에서 잘리지 않고 Claude에게 전체가 전달되도록 변경했습니다
  163. Cowork 클라우드 세션의 자동 모드를 변경했습니다. 이제 `PermissionRequest` 훅은 셸 명령이나 서브에이전트를 승인할 수 없으며, 해당 요청은 대기하거나 거부됩니다
  164. 종료 시 출력되는 재개 명령을 변경했습니다. 이제 세션 이름 대신 ID로 세션을 지정하므로, 해당 줄을 붙여넣어도 세션 이름 안의 어떤 내용도 실행되지 않습니다
  165. 워크트리 세션 종료 시 출력되는 재개 명령을 변경했습니다. 긴 플래그가 터미널에 맞지 않으면 `-w`와 `-r`을 사용합니다. 둘 다 맞지 않고 워크트리가 유지된 경우에는 그 위의 줄에 실행할 위치를 알려 줍니다
  166. 비대화형 세션의 `/btw` 부가 질문이 11분이 지나도 답을 받지 못하면 시간 초과 오류를 반환하도록 변경했습니다
  167. `UserPromptSubmit` 훅이 스킬이나 사용자 지정 슬래시 명령이 확장되기 전에 실행되도록 변경했습니다. 따라서 프롬프트를 차단하는 훅은 이제 그 안에 포함된 셸 명령도 함께 막습니다
  168. 스킬 자체 front-matter의 `UserPromptSubmit` 훅이 스킬을 호출한 프롬프트의 다음 프롬프트부터 처음 실행되도록 변경했습니다
  169. `turn.start` mod 훅이 메인 루프뿐 아니라 서브에이전트와 팀원의 턴도 받도록 변경했습니다. `e.agentId`로 구분하세요(메인 루프에는 없습니다)
  170. `/ultrareview`가 저장소를 업로드하지 못할 때 표시되는 오류가 더 이상 `git add .`를 권하지 않도록 변경했습니다. 이 명령은 `.env` 같은 추적되지 않는 파일을 스테이징하거나 커밋할 수 있었습니다
  171. 사이버 안전장치 알림이 더 이상 Cyber Verification Program 신청을 안내하지 않도록 변경했습니다
  172. [VSCode] 다른 세션으로 전환했다가 돌아올 때 전송하지 않은 프롬프트와 첨부 파일이 사라지던 문제를 고쳤습니다
  173. [VSCode] 새 대화를 시작한 뒤 사용하지 않은 빈 채팅이 백그라운드 Claude 프로세스를 계속 실행시키던 문제를 고쳤습니다
  174. [VSCode] claude.ai에서 로그아웃된 상태에서 마이크 버튼이 내부 오류 메시지를 표시하던 문제를 고쳤습니다. 이제 로그인을 안내합니다
  175. [VSCode] Python 확장이 로드되는 동안 Claude를 시작하도록 해 Python 환경이 없는 워크스페이스의 시작 시간을 개선했습니다
  176. [VSCode] 시작 과정을 개선했습니다. 이전에 연 적이 있는 폴더의 새 창에서 모델 선택기와 슬래시 명령 메뉴가 바로 채워집니다
  177. [Cloud sessions] 기존 출력 파일 다수가 한꺼번에 다시 전송될 때 세션이 중단될 수 있던 메모리 급증을 고쳤습니다
  178. [Cloud sessions] 루틴의 기존 환경이 삭제되었거나 목록에 없을 때, 수정한 루틴을 저장하면 조용히 다른 환경으로 옮겨지던 문제를 고쳤습니다. 이제 루틴이 원래 환경을 유지합니다
  179. [Cloud sessions] 자체 호스팅 환경의 관리자 상세 정보에서 세션 링크의 세션 ID를 붙여넣으면 세션 검색에 아무 결과도 나오지 않던 문제를 고쳤습니다
  180. [Cloud sessions] 자체 호스팅 환경의 관리자 상세 정보에서 검색 결과가 없을 뿐인데 세션 및 러너 목록이 비어 있다고 표시되던 문제를 고쳤습니다
  181. [Cloud sessions] 자체 호스팅 환경이나 환경 키를 만들 때 표시되는 배포 명령을 개선했습니다. 이제 전체가 표시되고, 인자 사이에서 줄바꿈되며, 눈에 보이는 복사 버튼이 있습니다
  182. [Cloud sessions] 자체 호스팅 환경을 삭제하면 루틴 실행이 실패하도록 두는 대신 해당 루틴을 즉시 끄고 각 루틴에 그 이유를 표시하도록 변경했습니다
  183. [Remote Control] 컴퓨터에 연결할 수 없는 Remote Control 세션이 메시지를 보낸 것처럼 보이던 문제를 고쳤습니다. 이제 입력한 텍스트가 입력란에 그대로 남고 다시 연결될 때까지 Send가 꺼집니다
  184. [Claude Tag] Slack의 Claude가 누군가 요청하면 채널에 직접 만든 캔버스를 삭제할 수 있는 기능을 추가했습니다
  185. [Claude Tag] 게스트가 있는 채널에서, 채널 자체 지침에 따라 답해야 하는 태그 없는 게시물(예: 다른 사람을 태그한 게시물)에 Slack의 Claude가 응답하지 않던 문제를 고쳤습니다
  186. [Claude Tag] Slack의 Claude가 멤버가 아닌 다른 채널의 스레드에 단 답글을 게시된 것으로 보고하던 문제를 고쳤습니다. 이제 답글이 전달되지 않았다는 사실과 해결 방법을 안내합니다
  187. [Claude Tag] 자체 호스팅 러너의 이미지에 python3가 없을 때 Slack의 Claude가 답변을 게시하지 않고 턴을 끝내는 경우가 있던 문제를 고쳤습니다
  188. [Claude Tag] Slack의 Claude가 잘못 보낸 메시지를 바로잡는 방식을 변경했습니다. 이전 텍스트에 취소선을 긋는 대신 메시지를 그 자리에서 수정하고 짧은 "Edited" 표시를 추가합니다
  189. [Claude Tag] Slack의 Claude가 멤버가 100명이 넘는 채널에는 소개 메시지 없이 조용히 참여하도록 변경했습니다
  190. [Code Review] Code Review의 월간 지출 한도 댓글과 check-run 카드가 관리자를 Claude Code 설정으로 안내하던 문제를 고쳤습니다. 이제 해당 한도를 설정하는 Usage 페이지로 연결됩니다

함께 읽기: Gemini Code Assist 신규 구독 판매 종료 일정과 자동 갱신 마감 시한 · Claude Code v2.1.292: 플러그인 설치와 서브에이전트 effort 지정 · Claude Code v2.1.289: 권한 규칙 우회 수정과 플러그인 안정화

▲ 맨 위로

새로 쓸 수 있게 된 기능

이번 업데이트로 새로 쓸 수 있게 된 기능은 10가지입니다. 근거 항목은 위 릴리스 노트의 번호입니다.

기능달라진 점근거 항목
터미널 유휴 압축200K 토큰 이상 대화가 약 54분 유휴 상태이면 1시간 프롬프트 캐시가 만료되기 전에 압축되어, 다음 메시지에서 전체를 다시 처리하지 않습니다.2번
유휴 압축 조정CLAUDE_CODE_IDLE_COMPACT_MIN_TOKENS로 최소 토큰 기준을 바꾸고, settings.json에 "idleCompaction": false를 두면 끌 수 있습니다. 둘 다 v2.1.290 이상이 필요합니다.3번
파일 멘션 경로 전달CLAUDE_CODE_DISABLE_FILE_MENTIONS를 설정하면 @ 멘션 시 파일 내용 대신 경로가 전달되고, Claude가 파일 도구로 직접 읽습니다.1번
/usage 경고max effort, 워크플로, 상시 컨텍스트, 큰 도구 결과에 대한 경고가 /usage에 표시됩니다.17번
에이전트 뷰의 /effort, /fast에이전트 뷰에서 새 세션의 시작 값을 정할 수 있고, 인자 없는 /model, /effort, /fast는 선택기를 엽니다.9번
plugin eval 도구 제외--disallow-tools 옵션과 disallowed_tools 케이스 필드로 Agent 같은 내장 도구를 평가 실행에서 뺄 수 있습니다.12번
MCP 규칙 범위 변경mcp__a 허용 규칙은 a__b나 a_ 서버에 적용되지 않으며, 에이전트 tools 목록도 해당 서버 도구만 받습니다. 이름에 __가 있으면 mcp__<전체 이름>__*로 적습니다.158번, 159번
훅 실행 순서 변경UserPromptSubmit 훅이 스킬이나 커스텀 슬래시 명령이 확장되기 전에 실행됩니다.167번
러너 종료 유예claude self-hosted-runner orchestrator의 --shutdown-drain-sec로 SIGTERM 후 진행 중인 폴링과 spawn 훅이 끝날 시간을 줄 수 있습니다.7번
mod 개발 APImanaged settings 모드는 $.prompt.media와 $.session.identity()를 쓸 수 있고, Text에 size, weight, mono, tabular, Box에 xs~xl 간격이 추가되었습니다.4번, 5번, 6번

▲ 맨 위로

업데이트 효과 직접 재보기

에이전트, effort, 속도, 재시도에 관한 변경이 내 작업에서 얼마나 차이 나는지는 직접 재 보면 숫자로 확인됩니다. claude -p를 JSON 출력으로 실행하면 걸린 시간과 턴 수, 서브에이전트 결과가 함께 나옵니다.

claude -p "<작업 지시>" \
  --output-format json < /dev/null

작업 지시는 옵션보다 앞에 둡니다. --allowedTools Agent "<작업 지시>"처럼 쓰면 --allowedTools가 값을 여러 개 받는 옵션이라 작업 지시까지 도구 이름으로 읽습니다. 옵션을 뒤에 쓰려면 --allowedTools=Agent처럼 =로 붙입니다. 아무것도 보내지 않는 파이프에 표준 입력이 연결돼 있으면 3초를 기다린 뒤 경고를 띄우고 진행하는데, < /dev/null로 표준 입력을 막아 두면 이 대기가 없습니다.

  • duration_ms: 실행 전체에 걸린 시간(밀리초)
  • num_turns: 결과가 나오기까지 걸린 턴 수
  • subagent_stats.completed / subagent_stats.failed: 서브에이전트가 끝까지 마친 수와 실패한 수

단순 조회 작업 하나(예: 어떤 함수가 어디서 호출되는지 찾기)와 코드 수정 작업 하나(예: 함수 하나에 테스트 추가)를 정해 둡니다. 같은 저장소에서 설정마다(업데이트 전후, effort 수준별) 두 작업을 각각 여러 번 실행하고, 조회와 수정의 기록을 따로 모아 비교합니다.

아래는 Claude Code 2.1.292에서 서브에이전트 한 개를 띄운 실행의 실제 출력에서 위 네 값만 남긴 것입니다. 나머지 키는 ...로 줄였습니다.

{
  "duration_ms": 14271,
  "num_turns": 4,
  "subagent_stats": {
    "completed": 1,
    "failed": 0,
    ...
  },
  ...
}

기록표의 첫 줄은 이 실행을 옮긴 것입니다. 조회 작업과 코드 수정 작업을 나눠, 실행할 때마다 한 줄씩 더합니다.

작업설정시간(ms)턴완료/실패
예시2.1.2921427141 / 0

▲ 맨 위로

업데이트하고 버전 확인하기

이 글의 변경을 모두 쓰려면 Claude Code 2.1.299 이상이 필요합니다. 터미널에서 claude update로 새 버전을 받고, claude --version으로 2.1.299 이상인지 확인합니다.

claude update
claude --version

▲ 맨 위로

글쓴이 MinoSui · 블로그 운영자·편집 책임

편집 방침. 오류 제보는 문의로 받습니다. 글쓴이·블로그 소개

#IT·AI#클로드AI#ClaudeCode

작성일 2026-10-14 12:19

소개 · 문의 · 개인정보처리방침 · 면책 안내 · 저작권 안내 · AI, IT 글 모음

© 2026 MinoSui. 이 글의 무단 전재·재배포를 금합니다. 원문: https://minoss0918.blogspot.com/

댓글

이 블로그의 인기 게시물

트럼프 AI 속도조절론 거부와 글로벌 빅테크 및 한국 IT의 파장

KT 모두의 AI 서비스 추진 일정과 일상 속 핵심 기능 총정리

스타크래프트 AI 플루토 김성현 대결 전략 분석 및 최신 AI 기술

아이티센클로잇 AI 에이전트, 폐쇄망 연동 필수 보안 기준과 활용법

난폭운전 보복운전 기준 차이와 스마트폰 영상 신고 정리

초보 귀농인을 위한 농작물 병해충 진단 앱 설치 및 스마트팜 활용 가이드

카카오 카나나 상담매니저 도입 및 고객 응대 효율화 방법

백화점 3사 정기 휴무일 확인법과 정기 세일 공략 팁

마인크래프트 코블몬 모드 전설 포켓몬 스폰 설정 및 소환 알아둘 점

그록 AI 반도체 설계 원리와 GPU 대비 성능 벤치마크