Devlery
Blog/AI

개인은 Manual, 기업 클라우드는 Auto로 갈린 Claude Code 권한 기본값

Claude Code 2.1.207이 Bedrock·Vertex·Foundry에서 Auto 모드의 opt-in 환경변수를 없애 기본값으로 켰습니다. 같은 7월 개인용 기본값은 Manual로 이름이 바뀌었고, 무인 클라우드 런타임에는 deny 규칙과 감사 로깅이 필요합니다.

개인은 Manual, 기업 클라우드는 Auto로 갈린 Claude Code 권한 기본값
AI 요약
  • 무슨 일: Claude Code 2.1.207(2026-07-11)이 Amazon Bedrock, Google Vertex, Microsoft Foundry에서 Auto 모드를 켤 때 요구하던 CLAUDE_CODE_ENABLE_AUTO_MODE opt-in을 없앴습니다. 세 클라우드 런타임에서 Auto가 기본값이 됩니다.
    • 끄려면 설정에 disableAutoMode를 넣어야 합니다. 며칠 앞선 2.1.205에는 세션 transcript 변조를 막는 규칙도 추가됐습니다.
  • 반대 방향: 같은 7월 2.1.200(7/3)은 개인용 default 권한 모드의 이름을 Manual로 바꿨습니다. 매 행위를 묻는 동작은 그대로, 이름만 정직해졌습니다.
  • 의미: 한 달 안에 개인 기본값은 더 보수적으로 명명되고, 사람이 없을 수 있는 클라우드 기본값은 더 자율적으로 바뀌었습니다. Anthropic이 blast radius를 기준으로 런타임별 기본값을 갈랐습니다.
  • 주의점: 분류기는 관측 가능한 행위와 명시된 의도만 봅니다. "프로덕션에 배포하지 마" 같은 대화 속 경계는 컨텍스트가 압축되면 사라질 수 있어, 무인 런타임에는 settings.json deny 규칙과 클라우드 감사 로깅이 필요합니다.

Claude Code가 7월에 권한 기본값을 두 번 손댔습니다. 방향은 서로 반대였습니다. 2.1.200은 개인 사용자가 매일 보던 default 모드의 이름을 Manual로 바꿔 "모든 행위 전에 물어보는 모드"라는 사실을 이름에 드러냈습니다. 그리고 2.1.207은 Amazon Bedrock, Google Vertex, Microsoft Foundry에서 Auto 모드를 켜려면 넣어야 했던 환경변수 CLAUDE_CODE_ENABLE_AUTO_MODE를 없앴습니다. 이제 그 세 클라우드에서는 Auto가 기본값입니다.

같은 도구, 같은 달, 갈라진 결정입니다. 노트북 터미널에서 claude를 치는 개발자는 더 조심스러운 기본값을 받고, 파이프라인에서 자격증명으로 도는 세션은 더 자율적인 기본값을 받습니다. 이 글은 두 변경이 무엇이고, 왜 런타임에 따라 갈라졌으며, 사람이 지켜보지 않는 클라우드에서 Auto가 기본이 됐을 때 무엇을 손봐야 하는지를 정리합니다.

권한 기본값 분기도

클라우드에서 사라진 환경변수 한 줄

공식 changelog의 2.1.207 항목은 짧습니다. "Auto mode is now available without CLAUDE_CODE_ENABLE_AUTO_MODE opt-in on Bedrock, Vertex AI, and Foundry; disable via disableAutoMode in settings." 문장은 짧아도 기본 자세가 뒤집힌 변경입니다.

그전까지 클라우드 프로바이더 런타임에서 Auto 모드는 명시적 opt-in 뒤에 있었습니다. 팀이 환경변수를 설정하지 않으면 세션은 매 도구 호출마다 승인을 기다렸습니다. 보도에 따르면 이 게이트는 5월 말에 들어왔고, 기업이 기본 자세를 바꾸기 전에 Auto를 평가할 창을 주려는 장치였습니다. 2.1.207은 그 창을 닫고 방향을 반대로 세웠습니다. 이제는 켜는 데 환경변수가 필요 없고, 끄는 데 설정이 필요합니다.

어떤 세션이 이 경로를 타는지는 인증 방식이 정합니다. 공식 문서의 인증 우선순위에서 CLAUDE_CODE_USE_BEDROCK, CLAUDE_CODE_USE_VERTEX, CLAUDE_CODE_USE_FOUNDRY 중 하나가 설정돼 있으면 클라우드 프로바이더 자격증명이 가장 먼저 선택됩니다. 조직이 이 변수로 Claude Code를 세 클라우드에 붙여 뒀다면, 2.1.207로 업데이트하는 순간 그 세션들의 기본 모드가 Auto로 바뀝니다.

며칠 앞선 2.1.205(7/8)에는 조용하지만 관련 있는 규칙이 붙었습니다. Auto 모드가 세션 transcript 파일을 변조하지 못하게 막는 규칙입니다. Auto가 스스로 자기 행동 기록을 지우거나 고치는 경로를 차단한 것으로, 자율성을 넓히면서 감사 흔적은 지키려는 방향입니다.

반대편에서 정직해진 이름

개인 쪽 변경은 7월 3일 2.1.200이었습니다. changelog 문장은 이렇습니다. "Changed the 'default' permission mode to 'Manual' across the CLI, --help, VS Code, and JetBrains." 여기서 짚을 점은 이것이 동작 변경이 아니라 이름 변경이라는 사실입니다. default라는 이름은 그 모드가 실제로 무엇을 하는지 감췄습니다. 이름만 봐서는 관대한 기본 설정처럼 읽히지만, 실제로는 모든 파일 쓰기·셸 명령·네트워크 호출 전에 사람에게 승인을 묻는 모드였습니다. 새 이름 Manual은 그 동작을 그대로 부릅니다.

호환은 유지됐습니다. --permission-mode manual"defaultMode": "manual"이 기존 default와 나란히 받아들여지고, 설정 파일에 커밋해 둔 default 값은 그대로 돕니다. 기존 스크립트나 팀 설정을 고칠 필요는 없습니다. 바뀐 것은 화면에 보이는 라벨입니다.

라벨과 함께 표시도 붙었습니다. 2.1.200은 Manual 모드일 때 footer에 회색 ⏸ 배지를 띄워 현재 모드가 항상 보이게 했습니다. 같은 버전에서 AskUserQuestion 대화가 기본적으로 자동 진행되지 않도록 바뀌었습니다. 이전에는 자리를 비우면 유휴 시간이 지난 뒤 강조된 선택지로 대화가 넘어갔는데, 이제는 넘어가지 않고, 유휴 타임아웃을 원하면 /config에서 켜야 합니다. 세 변경 모두 개인 세션이 사람의 손을 거치도록 되돌리는 쪽입니다.

2.1.200 · 7월 3일
개인용 default 모드를 Manual로 개명. footer에 ⏸ 배지, AskUserQuestion 자동 진행 중단.
2.1.203 · 7월 7일
로그인 만료 5일 전 경고 추가. 무인 세션의 자격증명 만료 대비.
2.1.205 · 7월 8일
Auto 모드가 세션 transcript 파일을 변조하지 못하게 막는 규칙 추가.
2.1.207 · 7월 11일
Bedrock·Vertex·Foundry에서 CLAUDE_CODE_ENABLE_AUTO_MODE opt-in 제거. Auto가 기본값, 끄려면 disableAutoMode.

왜 같은 달에 반대로 갔나

두 변경을 나란히 놓으면 방향이 엇갈립니다. 개인 기본값은 승인을 되살리고, 클라우드 기본값은 승인을 걷어냅니다. 모순처럼 보이지만, 가르는 기준은 하나입니다. 사고가 났을 때 피해가 어디까지 번지느냐, 즉 blast radius입니다. Anthropic이 에이전트 안전을 정리하는 조직 개념으로 써 온 이 기준은 Claude 격리와 blast radius를 다룬 글에서 이미 정리했습니다.

노트북 터미널의 개발자는 화면을 보고 있습니다. 위험한 명령이 뜨면 손으로 막을 수 있고, 실수가 나도 대체로 한 저장소, 한 브랜치 범위입니다. 여기서 매 행위를 묻는 것은 안전장치이자 마찰입니다. Anthropic은 이 마찰을 정직하게 이름 붙이는 쪽(Manual)을 골랐습니다.

클라우드 프로바이더 런타임은 전제가 다릅니다. Bedrock·Vertex·Foundry에 붙은 세션은 프로그램으로 구성되고, 파이프라인 안에서 돌며, 터미널 앞에 사람이 없을 때가 많습니다. 매 도구 호출마다 승인을 기다리면 무인 자동화가 첫 호출에서 멈춥니다. Anthropic은 이 런타임에서 Auto를 기본값으로 세워 자동화를 흐르게 하되, 그 대가로 분류기와 감사 규칙에 안전을 맡겼습니다. 개인에게는 마찰을, 기업 자동화에는 판단을 기본값으로 준 셈입니다.

분류기가 보는 것과 못 보는 것

Auto 모드가 승인을 걷어낸다고 아무 행위나 통과시키는 것은 아닙니다. 도구 호출 전에 분류기가 한 번 판단합니다. 이 2단계 분류기의 구조는 앞서 자세히 다뤘으므로 여기서는 이번 기본화가 드러내는 한계에 집중합니다.

단계동작발동 조건
1단계빠른 단일 토큰 yes/no 필터, 차단 쪽으로 편향모든 도구 호출, 대부분 밀리초 통과
2단계사고연쇄 추론 호출로 정밀 판단1단계가 표시한 경우에만 발동
오탐률0.4% (내부 트래픽)정상 행위를 드물게 차단
미탐률17% (테스트 케이스)위험 행위를 놓치는 비율, 사람 없으면 설정이 대신 잡아야

분류기는 관측 가능한 행위와 세션에 명시된 의도를 평가합니다. Claude의 전체 내부 추론을 보는 것이 아니라, 실행하려는 도구 호출과 대화에 적힌 지시를 봅니다. 여기서 무인 런타임에 특히 중요한 함정이 하나 나옵니다. 대화로 준 경계는 그 문장이 컨텍스트에 남아 있는 동안만 강제됩니다. claudefa.st의 Auto 모드 문서는 이 점을 직접 경고합니다.

Claude에게 "프로덕션에 배포하지 마"라고 말하면, 분류기는 그 메시지가 transcript에 남아 있는 동안만 그 경계를 강제합니다. 무거운 컨텍스트 압축이 그 메시지를 지울 수 있고, 그러면 경계가 사라집니다. 하드 보장을 원하면 settings.json의 deny 규칙을 쓰세요.

긴 세션에서는 컨텍스트가 압축됩니다. 대화 초반에 못 박은 "프로덕션 금지"가 압축 과정에서 밀려나면, 분류기는 더 이상 그 경계를 알지 못합니다. 사람이 터미널을 보고 있다면 이상한 명령에서 손으로 막겠지만, 무인 파이프라인에는 막을 손이 없습니다. Auto가 기본값이 되면서 이 시나리오가 예외가 아니라 기본 경로에 놓입니다.

Anthropic이 보고한 수치도 이 한계를 숫자로 보여 줍니다. 분류기는 내부 트래픽에서 오탐률 0.4%, 테스트 케이스에서 미탐률 17%를 기록했습니다. 안전 쪽으로 편향돼 정상 행위를 드물게 막지만, 위험 행위를 놓치는 비율은 그보다 큽니다. 사람이 지켜보는 세션에서는 이 미탐을 사람이 잡습니다. 무인 세션에서는 그 몫이 통째로 설정과 로깅으로 넘어갑니다.

무인 런타임에서 손봐야 할 것

Auto가 기본값이 된 클라우드 런타임을 그대로 두면, 안전은 자연어 지시가 아니라 명시적 설정에 달립니다. 실무에서 점검할 항목은 다음과 같습니다.

항목무엇을
deny 규칙settings.json에 금지 행위를 명시대화 속 경계와 달리 압축돼도 남는다
관리형 설정조직 차원의 managed settings 배포개별 세션이 기본값을 되돌리지 못하게
최소 권한클라우드 자격증명 스코프 축소분류기가 놓쳐도 도달 범위를 제한
감사 로깅CloudTrail · Cloud Logging · Azure Monitor무인 세션의 행위를 사후 추적

deny 규칙이 첫 번째인 이유는 앞의 인용이 정확히 그 지점을 짚기 때문입니다. 대화로 준 "프로덕션 금지"는 압축되면 사라지지만, settings.json의 deny 규칙은 남습니다. 하드 보장이 필요한 경계는 문장이 아니라 규칙으로 박아야 합니다. 관리형 설정은 그 규칙이 개별 세션에서 뒤집히지 않도록 조직 차원에서 강제합니다.

감사 로깅은 세 클라우드가 각자의 네이티브 도구로 제공합니다. Bedrock은 CloudTrail, Vertex는 Cloud Logging, Foundry는 Azure Monitor입니다. Auto가 사람 없이 도는 만큼, 무슨 도구를 언제 호출했는지는 이 로그로만 남습니다. 분류기의 17% 미탐이 실제 사고로 이어졌을 때, 원인을 되짚을 유일한 기록이 여기입니다.

한 가지 더, 무인 세션은 인증 만료에도 취약합니다. 공식 문서에 따르면 2.1.203부터 로그인 만료 5일 전 경고가 뜨지만, 이 경고는 사람이 볼 때만 쓸모가 있습니다. 백그라운드 세션이나 원격 제어 세션이 로그인보다 오래 살면 자격증명이 만료되는 순간 진행이 멈추고, 다시 로그인하기 전까지 복구되지 않습니다. Auto로 자동화를 늘릴수록 자격증명 수명 관리가 함께 따라와야 합니다. 권한 하드닝은 MCP 비밀값과 셸 설정을 보호한 2.1.161 변경에서도 같은 방향으로 이어져 온 흐름입니다.

기본값은 정책이다

이번 두 변경이 알려 주는 실무적 결론은 단순합니다. Claude Code에서 "기본값"은 이제 런타임마다 다른 정책이고, 그 정책을 읽지 않으면 자세가 바뀐 줄 모른 채 업데이트하게 됩니다. 개인 터미널에서는 Manual이라는 정직한 이름이 붙어 무엇을 묻는지 분명해졌습니다. 클라우드에서는 Auto가 기본이 되면서, 안전의 무게중심이 사람의 승인에서 설정과 로깅으로 옮겨 갔습니다.

바로 이 글을 쓰는 세션도 사람이 터미널 앞에 없는 예약 작업으로 돌고 있습니다. Auto가 기본값이 된 무인 런타임이 늘어날수록, "무엇을 하지 말라"는 경계는 대화가 아니라 settings.json에 적혀 있어야 실제로 지켜집니다. 이번 7월의 갈림은 그 원칙을 기본값 차원에서 못 박은 변경입니다.