Claude Code v2.1.267 — effort 상한 설정과 보안 fail-closed 픽스 2건
AI

Claude Code v2.1.267 — effort 상한 설정과 보안 fail-closed 픽스 2건

zaq · · 3 min read

Effort 레벨을 설정으로 상한 제한하는 기능과, 보안 설정이 읽히지 않을 때 "전부 허용"되던 구멍 두 개가 잡혔습니다. v2.1.267은 관리자와 비용 절감층 모두에게 의미 있는 업데이트입니다.

한마디로 말하면, maxEffortLevel로 모든 프로바이더에서 effort 상한을 거는 기능이 추가되고, 플러그인 경로 우회·관리 설정 오류 시 무허가 허용 같은 보안 결함 두 건이 수정된 릴리스입니다.

maxEffortLevel — 비용 통제의 마지막 조각

새 설정 maxEffortLevel은 모든 프로바이더에서 effort 레벨 상한을 겁니다. 최상위 레벨로도, modelSettings 아래 모델별로도 지정 가능하고 Bedrock, Vertex, Foundry까지 커버합니다. 사용자는 여전히 더 낮은 레벨을 고를 수 있으니 "이 이상은 못 올린다"는 천장을 두는 방식이죠. 토큰 비용이 effort에 비례해 늘어나는 걸 생각하면, 팀 단위 배포에서 비용 통제의 마지막 퍼즐 조각입니다.

보안 2건 — 이번에도 경로 우회와 fail-open

어제 v2.1.265에 이어 플러그인 경로 관련 보안 픽스가 또 나왔습니다. 마켓플레이스 엔트리 경로에 백슬래시가 들어가면 macOS·Linux에서 containment 검사를 우회할 수 있던 문제입니다. 더 중요한 건 두 번째입니다 — 관리 설정의 allowedHttpHookUrls, httpHookAllowedEnvVars, allowedChannelPlugins를 읽을 수 없을 때 아무것도 허용하지 않는 대신 전부 허용하던 동작을 fail-closed로 고쳤습니다. 보안 목록은 읽기 실패 시 차단하는 게 원칙인데, 그 반대였다니 이번 픽스가 얼마나 중요한지 알 수 있죠.

대형 세션 복원과 프롬프트 반복 작업

5MB 넘는 대형 세션을 재개할 때 병렬 tool call과 hook 출력이 유실되던 문제가 해결됐고, /compact 후 -p --resume로 재개할 때 가짜 "Continue from where you left off." 턴이 삽입되던 버그도 잡혔습니다. 프롬프트를 반복해서 다듬는 개발자를 위한 신기능도 있습니다 — --system-prompt-snapshot off를 쓰면 대화에 기록된 프롬프트 대신 매 요청마다 시스템 프롬프트를 새로 렌더링합니다. 프롬프트 텍스트를 고치면서 즉시 반영 결과를 볼 수 있어요.

실전에서 어떻게 쓸까?

팀 관리자라면 maxEffortLevel로 상한을 걸어두고 개인별로는 낮춰 쓰게 하세요. 프롬프트 엔지니어링 중이라면 --system-prompt-snapshot off가 반복 작업 시간을 확 줄여줍니다. 그리고 관리 설정으로 hook URL을 통제 중인 조직은 이번 버전으로 올려 fail-closed 동작을 확인하는 걸 권합니다 — 설정 파일 파싱이 실패하는 순간이 곧 보안 사고의 순간이니까요.

Effort 상한이라는 "천장"과 fail-closed라는 "바닥"이 같이 들어온 릴리스입니다. 위험은 줄이고 비용은 통제하는, 조용하지만 단단한 업데이트입니다.

출처: https://github.com/anthropics/claude-code/releases/tag/v2.1.267

태그: AI Claude Claude Code 개발도구