티스토리 뷰

2026년 3월 27일 Claude Code 2.1.85가 배포되었습니다. 이번 버전의 가장 눈에 띄는 변화는 훅에 조건부 if 필드가 추가된 것입니다. 권한 규칙 문법으로 훅이 실행될 조건을 지정할 수 있어 불필요한 프로세스 생성을 줄일 수 있습니다. PreToolUse 훅이 AskUserQuestion에 직접 응답할 수 있게 되어 헤드리스 통합이 가능해졌고 Ghostty, Kitty, WezTerm 등 키보드 프로토콜 기반 터미널에서 종료 후 Ctrl+C와 Ctrl+D가 동작하지 않던 문제가 수정되었습니다.
3줄 요약
- 훅에
if필드가 추가되어 권한 규칙 문법(예:Bash(git *))으로 훅 실행 조건을 제한할 수 있어 프로세스 생성 오버헤드가 줄어듭니다. - PreToolUse 훅이
updatedInput과permissionDecision: "allow"를 반환하여 AskUserQuestion에 자동 응답할 수 있어 헤드리스 자동화를 구성할 수 있습니다. - Ghostty, Kitty, WezTerm 등에서 종료 후 터미널이 향상된 키보드 모드에 머물던 문제가 수정되어 Ctrl+C와 Ctrl+D가 정상 동작합니다.
주요 변경사항
훅에 조건부 실행 필드가 추가되었습니다
훅 설정에 if 필드가 추가되었습니다. 권한 규칙과 동일한 문법(예: Bash(git *))을 사용하여 훅이 실행될 조건을 지정할 수 있습니다. 기존에는 모든 도구 호출마다 훅 프로세스가 생성되어 오버헤드가 발생했는데 이제 특정 패턴에 매칭되는 경우에만 훅이 실행됩니다. 예를 들어 Bash(git *) 조건을 걸면 git 명령을 실행할 때만 훅이 동작하고 다른 Bash 명령에서는 프로세스가 생성되지 않습니다.
PreToolUse 훅으로 AskUserQuestion에 자동 응답할 수 있습니다
PreToolUse 훅이 updatedInput과 함께 permissionDecision: "allow"를 반환하면 AskUserQuestion 도구에 직접 응답할 수 있게 되었습니다. Claude Code가 사용자에게 질문을 할 때 훅이 자체 UI나 외부 시스템을 통해 답변을 수집하고 그 결과를 Claude에게 전달할 수 있습니다. CI/CD 파이프라인이나 원격 자동화 환경처럼 터미널 앞에 사람이 없는 헤드리스 통합 시나리오에서 유용합니다.
Kitty 키보드 프로토콜 터미널에서 종료 후 키 입력 문제가 수정되었습니다
Ghostty, Kitty, WezTerm 등 Kitty 키보드 프로토콜을 지원하는 터미널에서 Claude Code를 종료한 뒤 터미널이 향상된 키보드 모드에 머물러 있던 문제가 수정되었습니다. 이 문제가 발생하면 종료 후 Ctrl+C와 Ctrl+D가 정상적으로 동작하지 않아 터미널을 새로 열어야 했습니다. 이제 종료 시 키보드 모드가 올바르게 해제됩니다.
부가 변경사항
MCP
- MCP 헤더에
CLAUDE_CODE_MCP_SERVER_NAME과CLAUDE_CODE_MCP_SERVER_URL환경 변수가 추가되었습니다. 하나의 헬퍼 스크립트로 여러 MCP 서버를 구분하여 처리할 수 있습니다. - MCP OAuth가 RFC 9728 Protected Resource Metadata 검색을 따라 인증 서버를 찾습니다.
- MCP 단계적 권한 상승(step-up authorization)에서 리프레시 토큰이 존재할 때 실패하던 문제가 수정되었습니다. 서버가 403
insufficient_scope로 추가 권한을 요청하면 재인증 흐름이 올바르게 시작됩니다.
플러그인 및 관리
- 조직 정책(
managed-settings.json)으로 차단된 플러그인은 설치나 활성화가 불가능하며 마켓플레이스 목록에서도 숨겨집니다. /plugin enable과/plugin disable이 플러그인의 설치 경로와 설정에 선언된 경로가 다를 때 실패하던 문제가 수정되었습니다.- Python Agent SDK에서
type:'sdk'MCP 서버를--mcp-config로 전달하면 시작 시 누락되던 문제가 수정되었습니다.
딥링크 및 트랜스크립트
- 딥링크 쿼리(
claude-cli://open?q=…)가 최대 5,000자를 지원합니다. 긴 프롬프트가 미리 채워진 경우 "스크롤하여 확인" 경고가 표시됩니다. - 예약 작업(
/loop,CronCreate)이 실행될 때 트랜스크립트에 타임스탬프 표시가 추가되었습니다. - 이미지를 붙여넣을 때
[Image #N]플레이스홀더 뒤에 공백이 자동으로 추가됩니다.
성능 개선
- WASM 기반 yoga-layout을 순수 TypeScript 구현으로 교체하여 대용량 트랜스크립트의 스크롤 성능이 개선되었습니다.
- 대규모 리포지토리에서
@멘션 파일 자동완성 성능이 개선되었습니다. - 대규모 세션에서 컴팩션이 실행될 때 발생하던 UI 끊김이 줄었습니다.
보안 및 모니터링
- OpenTelemetry
tool_result이벤트의tool_parameters필드가OTEL_LOG_TOOL_DETAILS=1환경 변수로 제어됩니다. 기본값은 비활성입니다. - PowerShell 위험 명령 감지가 개선되었습니다.
deniedMcpServers설정이 claude.ai MCP 서버를 차단하지 못하던 문제가 수정되었습니다.
버그 수정
/compact가 대화가 너무 길어져 압축 요청 자체가 컨텍스트에 맞지 않을 때 "context exceeded"로 실패하던 문제가 수정되었습니다.--worktree가 git이 아닌 리포지토리에서 WorktreeCreate 훅이 실행되기 전에 오류와 함께 종료되던 문제가 수정되었습니다.- computer-use 도구의
switch_display가 멀티 모니터 환경에서 "not available in this session"을 반환하던 문제가 수정되었습니다. OTEL_LOGS_EXPORTER,OTEL_METRICS_EXPORTER,OTEL_TRACES_EXPORTER를none으로 설정했을 때 발생하던 크래시가 수정되었습니다.- 비네이티브 빌드에서 diff 구문 강조가 동작하지 않던 문제가 수정되었습니다.
- 원격 세션에서 스트리밍 응답이 중단될 때 발생하던 메모리 누수가 수정되었습니다.
- 엣지 연결 교체 시 지속적으로 발생하던 ECONNRESET 오류가 재시도 시 새 TCP 연결을 사용하도록 수정되었습니다.
- 특정 슬래시 명령 실행 후 프롬프트가 큐에 머물러 위쪽 화살표로 복원할 수 없던 문제가 수정되었습니다.
- SSH나 VS Code 통합 터미널에서 원시 키 시퀀스가 프롬프트에 표시되던 문제가 수정되었습니다.
- Remote Control 세션 상태가 권한 문제가 해결된 후에도 "Requires Action"에 머물던 문제가 수정되었습니다.
- Shift+Enter와 Meta+Enter가 줄바꿈 대신 자동완성 제안에 의해 가로채어지던 문제가 수정되었습니다.
- 스트리밍 중 위로 스크롤할 때 이전 내용이 겹쳐 보이던 문제가 수정되었습니다.
결론
Claude Code 2.1.85는 훅의 조건부 실행(if 필드)이 가장 주목할 만한 변화입니다. 불필요한 훅 프로세스 생성을 줄여 자동화 성능을 개선하고 PreToolUse 훅의 AskUserQuestion 응답 기능으로 헤드리스 통합의 가능성이 넓어졌습니다.
Kitty 키보드 프로토콜 터미널 사용자에게는 종료 후 키 입력 문제 수정이 반가울 것입니다. yoga-layout의 TypeScript 전환으로 대용량 트랜스크립트 스크롤이 빨라졌고 /compact 실패 수정으로 긴 세션 관리가 안정적으로 개선되었습니다.
'클로드 코드 > 패치노트' 카테고리의 다른 글
| Claude Code 2.1.88 업데이트 정리 (0) | 2026.03.31 |
|---|---|
| Claude Code 2.1.86 업데이트 정리 (0) | 2026.03.28 |
| Claude Code 2.1.84 업데이트 정리 (0) | 2026.03.26 |
| Claude Code 2.1.83 업데이트 정리 (0) | 2026.03.25 |
| Claude Code 2.1.81 업데이트 정리 (0) | 2026.03.21 |