티스토리 뷰

반응형

클로드 코드 2.1.49 업데이트
<클로드 코드 2.1.49 업데이트>

2026년 2월 20일, 클로드 코드 2.1.49 버전이 배포되었습니다. 이번 업데이트는 신규 기능 여덟 가지, 성능 개선 네 가지, 버그 수정 열한 가지로 구성되어 있습니다. Worktree 격리 실행, 장시간 세션의 메모리 안정성 확보, 시작 속도 개선이 핵심입니다.

3줄 요약

  • '--worktree' 플래그가 추가되어 격리된 환경에서 안전하게 작업할 수 있습니다.
  • 장시간 세션에서 WASM 메모리가 무한히 증가하던 구조적 문제가 해결되었습니다.
  • MCP 인증 캐싱과 API 호출 배치 처리로 시작 속도가 개선되었습니다.

신규 기능

Worktree 격리 실행 지원

'--worktree'('-w') 플래그가 추가되었습니다. Git worktree는 하나의 저장소에서 별도의 작업 디렉토리를 만들어 독립적으로 코드를 수정할 수 있는 기능입니다. 이 플래그를 사용하면 Claude Code가 임시 worktree를 자동으로 생성하고 그 안에서 작업을 시작합니다. 원본 브랜치에 영향을 주지 않으므로, 실험적인 변경을 시도할 때 안전합니다.

서브에이전트에도 같은 격리 옵션이 적용됩니다. 에이전트 정의에서 '"worktree"' 격리 모드를 지정하면 해당 서브에이전트가 별도의 worktree에서 동작합니다.

백그라운드 에이전트 제어 개선

두 가지가 변경되었습니다. 첫째, 에이전트 정의 파일에 'background: true' 속성을 추가하면 해당 에이전트가 항상 백그라운드 작업으로 실행됩니다. 매번 실행 옵션을 지정할 필요가 없어졌습니다.

둘째, 백그라운드 에이전트가 실행 중일 때 Ctrl+C와 ESC가 무시되던 문제가 수정되었습니다. 이제 3초 이내에 두 번 누르면 모든 백그라운드 에이전트가 종료됩니다.

플러그인 기본 설정 제공

플러그인이 자체 'settings.json'을 포함할 수 있게 되었습니다. 플러그인 개발자가 권장 설정값을 미리 정의해두면, 사용자가 별도로 설정하지 않아도 기본값이 자동으로 적용됩니다.

Simple 모드에 파일 편집 도구 추가

Simple 모드('CLAUDE_CODE_SIMPLE')에서 파일 편집 도구를 사용할 수 있게 되었습니다. Simple 모드는 도구 세트를 최소화하여 간단한 작업에 집중하는 실행 모드입니다. 기존에는 Bash 도구만 제공되었지만, 이제 직접 파일을 편집할 수 있어 활용도가 높아졌습니다.

ConfigChange 훅 이벤트 추가

세션 도중 설정 파일이 변경될 때 발생하는 ConfigChange 훅 이벤트가 추가되었습니다. 훅은 특정 이벤트가 발생할 때 자동으로 실행되는 사용자 정의 명령어입니다. 이 이벤트를 활용하면 설정 변경을 감사 로그로 기록하거나, 특정 설정 변경을 차단하는 보안 정책을 구현할 수 있습니다. 기업 환경에서 유용합니다.

Sonnet 4.6 모델 전환 안내

Max 플랜에서 Sonnet 4.5(1M 컨텍스트)가 제거되고 Sonnet 4.6(1M 컨텍스트)으로 대체됩니다. 기존에 Sonnet 4.5를 사용하던 경우 '/model' 명령어로 Sonnet 4.6으로 전환해야 합니다.

SDK 관련 소규모 개선

  • SDK의 모델 정보에 'supportsEffort', 'supportedEffortLevels', 'supportsAdaptiveThinking' 필드가 추가되었습니다. SDK 소비자가 모델의 사고 능력을 프로그래밍 방식으로 확인할 수 있습니다.
  • 안전성 검사가 권한 요청을 발생시킬 때 권한 제안(Permission suggestions)이 함께 제공됩니다. SDK 소비자가 사용자에게 권한 옵션을 표시할 수 있습니다.

성능 개선

시작 속도 향상

세 가지 최적화로 시작 속도가 개선되었습니다. 첫째, MCP 서버 인증 실패 결과를 캐싱하여 같은 서버에 반복적으로 연결을 시도하지 않습니다. 둘째, 분석용 토큰 카운팅의 HTTP 호출 횟수가 줄었습니다. 셋째, MCP 도구의 토큰 카운팅이 개별 호출 대신 단일 API 호출로 배치 처리됩니다.

비대화형 모드 시작 최적화

'-p' 플래그로 실행하는 비대화형 모드의 시작 성능이 개선되었습니다. 비대화형 모드는 사용자 입력 없이 단일 프롬프트를 실행하고 결과를 반환하는 모드입니다. 시작 시 불필요한 API 호출을 건너뛰어 응답까지의 시간이 단축되었습니다.

버그 수정

장시간 세션의 WASM 메모리 누수 해결

장시간 세션에서 WASM 메모리가 무한히 증가하던 두 가지 문제가 수정되었습니다. WASM(WebAssembly)은 고성능 코드를 실행하기 위한 바이너리 형식입니다.

첫 번째는 tree-sitter 파서의 메모리 누수입니다. tree-sitter는 소스 코드의 구문을 분석하는 파서로, 세션이 길어질수록 메모리를 해제하지 않고 계속 쌓아가고 있었습니다. 이제 주기적으로 파서를 리셋하여 메모리를 반환합니다.

두 번째는 Yoga 레이아웃 엔진의 선형 메모리 미축소 문제입니다. Yoga는 UI 레이아웃을 계산하는 엔진으로, 할당된 WASM 메모리가 한 번도 줄어들지 않아 세션이 길어질수록 메모리 사용량이 계속 증가했습니다. 오래된 레이아웃 참조가 남아 렌더링 문제를 유발하던 부분도 함께 수정되었습니다.

파일 경로 오류 시 올바른 경로 제안

Claude가 저장소 폴더명을 누락하여 파일을 찾지 못하는 오류가 발생할 때, 올바른 경로를 제안하도록 변경되었습니다. 기존에는 "파일을 찾을 수 없다"는 오류 메시지만 표시되어 원인 파악이 어려웠습니다.

프롬프트 제안 캐시 회귀 수정

프롬프트 제안의 캐시 적중률이 떨어지던 회귀 문제가 수정되었습니다. 캐시 적중률이란 이전에 저장해둔 결과를 재활용하는 비율입니다. 이 수치가 낮아지면 동일한 작업을 반복 처리하게 되어 응답 속도가 느려집니다.

플러그인 스코프 자동 감지

'plugin enable'과 'plugin disable' 명령어에서 '--scope' 옵션을 지정하지 않으면 항상 사용자 범위로 기본 설정되던 문제가 수정되었습니다. 이제 프로젝트 범위인지 사용자 범위인지를 자동으로 감지합니다.

verbose 모드 토글 시 thinking 블록 미갱신

'/config'에서 verbose 모드를 토글해도 thinking 블록 표시가 즉시 반영되지 않던 문제가 수정되었습니다. 내부적으로 설정 변경을 감지하는 비교 로직이 verbose 옵션의 변경을 인식하지 못하고 있었습니다.

훅 보안 계층 준수

'disableAllHooks' 설정이 관리 설정(managed settings) 계층을 무시할 수 있던 문제가 수정되었습니다. 관리 설정은 조직 관리자가 정책으로 강제하는 설정입니다. 기존에는 일반 사용자의 설정으로도 관리자가 지정한 훅을 비활성화할 수 있었습니다. 이제 관리 설정으로 지정된 훅은 비관리 설정으로 해제할 수 없습니다.

/resume 세션 목록 표시 오류

'--resume' 세션 선택기에서 '/clear' 명령어로 시작하는 세션이 원시 XML 태그로 표시되던 문제가 수정되었습니다. 이제 올바르게 세션 ID 형식으로 표시됩니다.

권한 프롬프트에 차단 사유 표시

경로 안전성 검사나 작업 디렉토리 제한으로 권한 요청이 발생할 때, 차단 사유가 함께 표시되도록 개선되었습니다. 기존에는 맥락 없이 권한 요청만 표시되어 왜 차단되었는지 알기 어려웠습니다.

결론

2.1.49 버전의 가장 주목할 변화는 '--worktree' 플래그입니다. 원본 브랜치를 보호하면서 실험적인 작업을 진행할 수 있어, 코드 리뷰나 대규모 리팩터링에 특히 유용합니다. 장시간 Claude Code를 사용하는 사용자에게는 WASM 메모리 누수 수정이 체감되는 개선입니다. 시작 속도 최적화도 MCP 서버를 여러 개 연동하는 환경에서 효과가 큽니다.

개인적으로 -p 플래그를 종종 사용하면서 사용 모델과 무관하게 느리다고 느꼈었는데 속도 개선 소식은 반갑습니다. ㅎㅎ

반응형
댓글
최근에 올라온 글
최근에 달린 댓글