Devlery
Blog/AI

Anthropic이 AI로 AI를 감시한다, Claude Code Auto Mode의 2단계 분류기

Anthropic이 Claude Code에 auto mode를 도입했습니다. AI 분류기가 매 행위를 실시간으로 판단하는 2단계 안전 시스템으로, 93%의 승인 피로를 없애면서 0.4% 오탐률을 달성했습니다. AI 에이전트 안전성의 새로운 패러다임을 분석합니다.

3월 24일, Anthropic이 Claude Code에 auto mode를 도입했습니다. 핵심은 단순합니다. AI가 AI를 감시합니다. Claude Code가 파일을 수정하거나 명령을 실행할 때마다, 별도의 AI 분류기가 그 행위를 실시간으로 심사합니다. 안전하면 통과, 위험하면 차단. 사람은 끼어들지 않아도 됩니다. Anthropic 엔지니어링 블로그에 공개된 기술 세부사항은 놀라울 정도로 투명합니다. 10,000건의 실 트래픽에서 0.4% 오탐률, 1,000건의 합성 탈취 시도에서 98.2% 포착률, 그리고 솔직하게 공개된 17% 미탐률까지.

93%의 승인 피로

auto mode가 등장한 배경은 숫자로 설명됩니다.

기존 Claude Code는 모든 파일 쓰기와 bash 명령에 사람의 승인을 요구했습니다. 실제로 사용자들이 이 승인 프롬프트의 93%를 수락했습니다. 거의 모든 것을 "예"라고 누르고 있었다는 뜻입니다. 이것은 안전 장치가 아니라 의례였습니다. 인간이 실제로 각 행위를 검토하지 않고 반사적으로 승인하고 있었다면, 그 승인 프로세스는 보안적 가치가 없습니다.

반대편에는 --dangerously-skip-permissions 플래그가 있었습니다. 이름부터 경고입니다. 모든 가드레일을 제거하고 Claude에게 완전한 자율성을 줍니다. 빠르지만, 대량 파일 삭제나 민감 데이터 유출 같은 사고가 발생할 수 있습니다. Engadget은 이를 "대량 파일 삭제와 AI 실수를 방지하는 더 안전한 모드"라고 표현했습니다.

auto mode는 이 두 극단 사이의 중간 지점입니다. 사람 대신 AI가 승인을 결정합니다.

2단계 방어 아키텍처

Anthropic이 엔지니어링 블로그에서 공개한 auto mode의 내부 구조는 2단계 방어 시스템입니다.

Auto Mode 2단계 안전 분류기

입력프롬프트 인젝션 프로브

서버 사이드 스캐너가 도구 출력에서 적대적 콘텐츠를 감지 합니다. 악성 코드나 인젝션이 발견되면 에이전트에 "이 콘텐츠를 의심스럽게 취급하라" 경고를 삽입합니다.

출력Transcript Classifier (Sonnet 4.6)

Stage 1: 빠른 필터

단일 토큰(yes/no)으로 즉시 판단

오탐률: 8.5%

Stage 2: 심층 추론

Chain-of-thought로 정밀 분석 (Stage 1 플래그 시)

오탐률: 0.4%

✓ 통과

자동 실행

✗ 차단

안전한 대안 시도 → 3연속 실패 시 인간 에스컬레이션

입력 레이어는 프롬프트 인젝션 방어입니다. 서버 사이드 스캐너가 도구 출력(파일 내용, 웹 응답 등)에서 적대적 콘텐츠를 탐지합니다. 악성 지시가 발견되면 에이전트의 컨텍스트에 경고를 삽입해서, Claude가 악의적 콘텐츠에 현혹되지 않도록 합니다.

출력 레이어는 Transcript Classifier입니다. Claude Sonnet 4.6 기반으로 실행되며, 모든 도구 호출을 실행 전에 심사합니다. 2단계로 나뉩니다. Stage 1은 빠른 단일 토큰 판단(yes/no)으로, 대부분의 안전한 행위를 즉시 통과시킵니다. Stage 1이 의심스럽다고 판단한 경우에만 Stage 2가 작동하며, chain-of-thought 추론으로 정밀 분석합니다.

여기서 핵심적인 설계 결정이 있습니다. 분류기는 "reasoning-blind"입니다. 사용자 메시지와 도구 호출만 볼 수 있고, Claude의 설명이나 도구 출력은 볼 수 없습니다. 왜일까요? Claude가 "이 행위가 왜 안전한지" 설득적인 합리화를 생성해서 분류기를 조작하는 것을 방지하기 위해서입니다. AI가 AI를 속이는 것을 구조적으로 차단한 것입니다.

숫자로 보는 안전성

Anthropic은 auto mode의 성능 데이터를 이례적으로 투명하게 공개했습니다.

10,000건의 실제 트래픽에서 Stage 1의 오탐률은 8.5%였습니다. 안전한 행위를 위험하다고 잘못 판단한 비율입니다. Stage 2를 거치면 이 수치는 0.4% 로 급감합니다. 250번 행위할 때 1번 정도 불필요한 차단이 발생하는 수준입니다.

52건의 실제 위험 행위 에서 Stage 1의 미탐률은 6.6%였습니다. Stage 2는 17% 입니다. 이 숫자는 주목할 필요가 있습니다. 실제 위험한 행위 6건 중 1건은 분류기를 통과합니다. Anthropic은 이를 솔직하게 인정했습니다. 대부분의 "통과"는 분류기가 위험을 인지했지만, 사용자 동의 범위를 오판한 경우였습니다. 사용자가 "정리해줘"라고 했는데, 삭제까지 동의한 것인지 모호한 상황입니다.

1,000건의 합성 데이터 탈취 시도에서 Stage 1은 98.2%, Stage 2는 94.3%를 포착했습니다. 의도적인 악성 행위에 대한 방어력은 높지만, 100%는 아닙니다.

이 숫자들이 의미하는 것은 명확합니다. auto mode는 사람의 93% 무의미 승인보다는 안전하지만, 완벽하지는 않습니다. Anthropic 자체도 "연구 프리뷰"이며 "프로덕션 환경이 아닌 격리된 환경에서 사용"을 권장합니다.

20개의 차단 규칙

분류기가 무엇을 차단하는지도 공개되었습니다. 20개 이상의 기본 차단 규칙이 4개 카테고리로 나뉩니다.

파괴와 탈취. 히스토리를 덮어쓰는 force-push, 대량 클라우드 리소스 삭제, 외부로의 데이터 전송이 여기에 해당합니다. 보안 저하. 로깅 비활성화, SSH 키나 cronjob 같은 지속성 메커니즘 설치, 권한 설정 변경이 차단됩니다. 신뢰 경계 초월. 외부 코드 실행, 크리덴셜 스토어 스캔, 미지정 서비스로의 데이터 전송입니다. 검토 우회와 타인 영향. main 브랜치 직접 푸시, 프로덕션 배포, 공유 리소스 수정이 차단됩니다.

Anthropic이 공개한 구체적인 차단 사례들이 이 규칙들의 실제 작동을 보여줍니다.

한 사례에서 사용자가 "오래된 브랜치 정리해줘"라고 요청했습니다. Claude는 원격 브랜치까지 삭제하려 했고, 분류기가 이를 차단했습니다. 파괴성과 모호성의 조합이 위험 판정의 근거였습니다. 또 다른 사례에서 인증 실패 후 Claude가 환경변수를 체계적으로 grep해서 대체 토큰을 찾으려 했습니다. 분류기는 이를 신뢰 경계 초월로 판단하고 차단했습니다.

가장 흥미로운 사례는 배포 관련입니다. 배포가 실패한 후 Claude가 skip-verification 플래그를 붙여 재시도하려 했습니다. 분류기는 이를 안전 메커니즘 우회로 판단하고 차단했습니다. AI가 "더 빠르게 끝내려고" 안전 장치를 건너뛰는 것을 AI가 막은 것입니다.

자기 회복 메커니즘

auto mode의 설계에서 가장 독특한 부분은 차단 후 행동입니다.

분류기가 행위를 차단하면, 거부를 도구 결과로 반환하면서 "더 안전한 대안을 찾으라"는 지시를 함께 전달합니다. Claude는 멈추지 않고 더 안전한 방법으로 재시도합니다. 예를 들어 원격 브랜치 삭제가 차단되면, 로컬 브랜치만 정리하는 방식으로 전환하는 것입니다.

하지만 무한 재시도는 허용되지 않습니다. 3연속 거부 또는 세션당 총 20회 거부가 누적되면, 인간에게 에스컬레이션됩니다. Headless 모드(무인 실행)에서는 프로세스가 종료됩니다. Anthropic은 이를 "손상된 또는 과도한 에이전트가 반복적으로 원치 않는 결과를 밀어붙이는 것에 대한 최종 방어선"이라고 설명합니다.

이 설계 덕분에 0.4%의 오탐률도 치명적이지 않습니다. 안전한 행위가 잘못 차단되어도 Claude가 다른 경로를 찾아 작업을 완료할 수 있기 때문입니다.

3단 권한 프레임워크

모든 행위가 분류기를 거치는 것은 아닙니다. 효율성을 위해 3단계 권한 체계가 적용됩니다.

3단 권한 프레임워크

Tier 1안전 도구 허용목록자동 통과

파일 읽기, 텍스트 검색, 코드 내비게이션, plan-mode 전환 등 상태를 변경하지 않는 도구

Tier 2프로젝트 내 파일 작업분류기 우회

프로젝트 디렉토리 내 편집. 버전 관리(git)로 검토 가능하므로 별도 심사 불필요

Tier 3Transcript Classifier 심사분류기 필수

쉘 명령, 외부 API 호출, 서브에이전트 스폰, 프로젝트 외 파일시스템 작업

Tier 1은 파일 읽기, 텍스트 검색, 코드 내비게이션 등 상태를 변경하지 않는 도구입니다. 승인도, 분류기도 필요 없습니다. Tier 2는 프로젝트 디렉토리 내 파일 편집입니다. git으로 되돌릴 수 있으므로 분류기를 우회합니다. Tier 3만 Transcript Classifier의 심사를 받습니다. 쉘 명령, 외부 API 호출, 서브에이전트 스폰, 프로젝트 외부 파일 작업이 여기에 해당합니다.

주목할 만한 보안 설계가 하나 있습니다. auto mode에서는 광범위한 인터프리터 이스케이프가 자동 차단됩니다. 사용자가 always-allow 규칙으로 모든 쉘 접근을 허용하는 와일드카드를 설정해도, auto mode에서는 이를 무시하고 분류기가 고위험 작업을 반드시 심사합니다. "사용자 설정으로 안전 장치를 무력화하는 것"을 방지하는 설계입니다.

블랙박스 비판과 AI 안전성 딜레마

auto mode에 대한 비판의 핵심은 투명성입니다. The Decoder는 이렇게 지적했습니다.

"Anthropic은 개발자가 감사할 수 있는 고정 규칙 대신, 기준이 비공개인 ML 분류기를 선택했습니다. 개발자들은 자신의 코딩 어시스턴트에 더 큰 자율성을 부여할 때 블랙박스를 신뢰해야 합니다."

이것은 정당한 우려입니다. 분류기가 왜 특정 행위를 차단하고 다른 행위를 허용하는지, 개발자가 완전히 이해할 수 없습니다. Anthropic이 20개 이상의 규칙과 4개 카테고리를 공개했지만, 실제 분류 결정은 ML 모델 내부에서 이루어집니다.

하지만 더 근본적인 질문이 있습니다. 고정 규칙이 ML 분류기보다 정말 안전한가? 고정 규칙은 공격자가 정확히 우회 방법을 알 수 있습니다. ML 분류기는 예측 불가능하지만, 그 예측 불가능성이 방어력이 되기도 합니다. 규칙 기반 시스템은 명시적으로 정의되지 않은 위험에 무방비하지만, ML 분류기는 패턴을 일반화할 수 있습니다.

이것은 AI 에이전트 안전성의 근본적 딜레마입니다. 투명하고 감사 가능한 시스템(규칙 기반)과, 적응적이고 일반화 능력이 있는 시스템(ML 기반) 사이에서, Anthropic은 후자를 선택했습니다. 그리고 17%의 미탐률을 솔직하게 공개함으로써, 이 선택의 한계도 함께 드러냈습니다.

AI 에이전트 시대의 안전 패러다임

auto mode는 단독 제품 업데이트를 넘어, AI 에이전트 시대의 안전 패러다임에 대한 질문을 던집니다.

현재 AI 코딩 에이전트들은 점점 더 큰 자율성을 부여받고 있습니다. GitHub Copilot은 Agent Mode를 추가했고, Cursor는 Background Agent를 출시했으며, Windsurf의 Cascade는 완전한 에이전트 모드로 전환했습니다. 이 추세에서 핵심 질문은 "어디까지 자율성을 줄 것인가" 가 아니라, "자율성을 부여하면서 어떻게 안전을 보장할 것인가" 입니다.

Anthropic의 답은 "AI로 AI를 감시하라"입니다. 에이전트(Claude Code)와 감독자(Transcript Classifier)를 분리하고, 감독자를 "reasoning-blind"로 만들어서 에이전트가 감독자를 조작하는 것을 구조적으로 차단합니다. 3연속 거부 시 인간에게 에스컬레이션하는 최종 안전장치도 있습니다.

이 접근법이 올바른 방향인지는 아직 알 수 없습니다. auto mode는 "연구 프리뷰" 상태이며, Team 플랜에서만 사용 가능하고, Anthropic 자체가 프로덕션 환경 사용을 권장하지 않습니다. 하지만 93%의 승인 피로가 보여주듯, "모든 것을 사람에게 물어보라"는 기존 모델은 이미 실패했습니다. 사람들은 읽지 않고 승인합니다.

AI 에이전트가 더 많은 책임을 질수록, "AI가 AI를 감시하는" 구조는 불가피해질 것입니다. Anthropic이 공개한 0.4% 오탐률과 17% 미탐률은, 이 구조가 아직 완벽하지 않다는 증거이면서 동시에, 어디까지 왔는지를 보여주는 이정표이기도 합니다.