홍드로이드의 야매코딩

Claude Code 권한 모드 6가지 총정리 — plan·auto·dangerous까지 본문

AI & Vibe Coding

Claude Code 권한 모드 6가지 총정리 — plan·auto·dangerous까지

홍드로이드 2026. 7. 1. 02:34

 

Claude Code를 쓰다 보면 "이 작업 해도 될까요?" 하고 물어볼 때가 있죠. 이 물음의 빈도를 정하는 게 권한 모드(permission mode)입니다. 매번 확인받을지, 알아서 쭉 진행할지를 고르는 거예요. 공식적으로 6가지 모드가 있는데, 이 글에서 전부 정리하고 위험한 'dangerous' 모드의 주의점까지 짚습니다.

📌 이 글에서 얻어갈 것
✓ 6가지 권한 모드가 각각 뭘 허용하나
Shift+Tab 등 전환 방법
dangerous(bypassPermissions)의 위험과 대안
✓ 어떤 모드에서도 보호되는 '보호 경로'

한눈에 보는 6가지 모드

모드 물어보지 않고 실행하는 것
default 읽기만 (그 외엔 매번 확인)
acceptEdits 읽기 + 파일 편집 + 기본 파일 명령(mkdir·mv·cp 등)
plan 읽기만 (수정 없이 '계획'만 제안)
auto 거의 전부 (백그라운드 안전 검사 통과 시)
dontAsk 사전 승인한 도구만 (나머지는 자동 거부)
bypassPermissions ⚠️ 전부 (검사 없음 — 위험)

각 모드 자세히

default
기본값. 읽기는 알아서, 편집·명령은 매번 확인. 처음 시작하거나 민감한 작업에 안전합니다.
acceptEdits
파일 편집을 묻지 않고 진행(작업 폴더 내). mkdir·touch·mv·cp·rm·sed 같은 기본 명령도 자동 승인. 그 외 Bash는 여전히 확인. 상태바에 ⏵⏵ accept edits on 표시.
plan
고치지 않고 '계획'만. 코드를 읽고 탐색해 수정안을 제시하되 소스는 건드리지 않아요. 검토 후 승인하면 편집 모드로 전환. 코드베이스 파악·큰 변경 전에 안전합니다.
auto
프롬프트 피로를 줄이는 자율 모드. 거의 다 알아서 하되, 별도 분류기(classifier) 모델이 매 작업을 검사해 위험행동(예: curl | bash, 프로덕션 배포, main 강제 푸시)을 차단합니다. 리서치 프리뷰, 최신 모델 필요.
dontAsk
사전 승인(allow 규칙)한 것만 실행, 나머지는 자동 거부. 묻지 않고 차단하니 완전 비대화형 — CI 파이프라인·잠긴 환경용입니다.
bypass
모든 검사 끄기(이른바 'dangerous'). 무엇이든 즉시 실행. 격리된 컨테이너·VM에서만 쓰라고 공식 경고. (단, rm -rf /·rm -rf ~는 여기서도 막아줌)

모드 전환하는 법

# 세션 중 (Shift+Tab) — default → acceptEdits → plan 순환
Shift+Tab

# 시작할 때 플래그로
claude --permission-mode plan
claude --permission-mode acceptEdits

# 위험 모드는 별도 플래그로만 진입
claude --permission-mode bypassPermissions
claude --dangerously-skip-permissions   # 동일

# 기본 모드 고정 (settings.json)
{ "permissions": { "defaultMode": "acceptEdits" } }

/plan을 프롬프트 앞에 붙이면 그 한 번만 plan 모드로 실행됩니다. defaultMode 유효값: default·acceptEdits·plan·auto·dontAsk·bypassPermissions.

⚠️ 'dangerous' 모드, 꼭 알아둘 것

🚨 이름에 'dangerously'가 붙은 이유

bypassPermissions는 프롬프트 인젝션에 무방비입니다. Claude가 읽는 코드/문서에 악성 지시가 한 줄만 숨어 있어도, 아무 제지 없이 임의 명령이 실행될 수 있어요. 그래서 인터넷 없는 격리 컨테이너·VM에서만 권장하고, Linux/macOS에선 root·sudo로는 아예 실행을 거부합니다.

"프롬프트는 줄이되 안전은 챙기고 싶다면 → auto 모드"
공식 권장: bypass 대신 백그라운드 검사가 있는 auto를 쓰자

어떤 모드에서도 지켜지는 '보호 경로'

bypassPermissions를 제외한 모든 모드에서, 일부 민감한 경로에 대한 쓰기는 절대 자동 승인되지 않습니다. 실수로 저장소·설정이 망가지는 걸 막아줘요.

🛡️ .git · .claude · .vscode · .idea 등 설정 디렉터리
🛡️ 셸 설정(.zshrc·.bashrc), .npmrc, .mcp.json 등 민감 파일

자주 묻는 질문 (FAQ)

Q. 초보는 뭘 쓰면 되나요?

default로 시작해 익숙해지면, 코드를 검토하며 빠르게 가고 싶을 때 acceptEdits, 큰 변경 전엔 plan을 쓰세요. Shift+Tab로 쉽게 오갈 수 있습니다.

Q. dangerous(bypass)는 절대 쓰면 안 되나요?

호스트에 피해가 없는 격리 환경(컨테이너·VM)이라면 생산성에 유용합니다. 하지만 일반 작업 PC에선 피하고, 대신 auto 모드를 권합니다.

Q. auto 모드는 안전한가요?

분류기가 위험행동을 막아주지만 "안전을 보장"하진 않습니다(리서치 프리뷰). 방향을 신뢰하는 작업에 쓰고, 민감한 작업은 여전히 검토하세요.

마치며

권한 모드는 "자율성 vs 안전"의 다이얼입니다. 민감한 작업엔 default·plan으로 꼼꼼히, 신뢰하는 작업엔 acceptEdits·auto로 빠르게. dangerous는 격리 환경에서만. 이 6가지를 손에 익히면 Claude Code를 훨씬 안전하고 효율적으로 부릴 수 있습니다.

여러분은 주로 어떤 권한 모드로 작업하시나요? 댓글로 노하우를 공유해주세요 🙌


※ 본 글은 2026년 7월 기준 Claude Code 공식 문서(code.claude.com/docs/en/permission-modes)를 확인해 작성했습니다. 모드·플래그·기본값은 버전에 따라 바뀔 수 있으니 공식 문서에서 현행 사양을 확인하세요.

Comments