Claude Code의 --dangerously-skip-permissions를 안전하게 사용하는 방법

Claude Code가 권한을 묻지 않게 하면서 컴퓨터를 안전하게 지키는 방법. --dangerously-skip-permissions가 무엇을 건너뛰는지, auto 모드로 충분한 경우, 컨테이너에서 실행하는 방법.

기준 버전
CLI
0.2.17
프리뷰 ref
a2c45c8

요약

--dangerously-skip-permissions는 Claude Code의 권한 프롬프트를 끕니다. 도구 호출이 묻지 않고 실행됩니다. 접근 범위를 제한하는 경계 안에서는 괜찮지만, SSH 키가 있는 노트북에서는 위험합니다.

짧은 판단 목록:

  • 지켜보는 동안 프롬프트를 줄이고 싶다면: 먼저 auto 모드나 허용 목록을 써 보세요. 검사가 남아 있습니다.
  • 오랜 무인 실행을 원한다면: 컨테이너, VM, dev container 안에서, root가 아닌 사용자로, 네트워크 송신을 제한하고 호스트 비밀을 마운트하지 않은 채 --dangerously-skip-permissions를 쓰세요.
  • 자리를 비워도 연락이 닿고 싶다면: 프롬프트를 띄우는 권한 모드를 유지하고 휴대폰에서 응답하세요.

문제

익숙한 이야기입니다. 리팩터링을 시작하고 부엌에 다녀왔더니 터미널이 20분째 "Allow this command?"에서 기다리고 있습니다. 두 번째로 그런 일이 생기면 Claude Code가 권한을 묻지 않게 하는 방법을 검색하게 되고, --dangerously-skip-permissions를 찾게 됩니다. 쓰기 전에 SSH 키, 클라우드 자격 증명, 브라우저 프로필이 있는 노트북에서 그것이 무엇을 뜻하는지 생각해 볼 만합니다.

이 플래그는 실제로 있고 유용합니다. 문제는 어디서 안전하게 쓸 수 있는지, 그리고 안전하지 않을 때 무엇을 써야 하는지입니다.

Claude Code의 --dangerously-skip-permissions가 하는 일

Anthropic의 권한 모드 페이지에 따르면:

  • --dangerously-skip-permissions는 --permission-mode bypassPermissions와 같습니다. 보호된 경로에 대한 쓰기를 포함해 도구 호출이 즉시 실행됩니다.
  • 명시적 ask 규칙, 중요한 경로에 대한 rm과 rmdir 삭제로 인식된 것 등 일부 동작은 여전히 프롬프트를 띄웁니다.
  • 이를 켜지 않고 시작한 세션에서는 bypass 모드로 들어갈 수 없습니다.
  • Linux와 macOS에서는 root로 이 플래그를 쓰면 Claude Code가 시작을 거부합니다.
  • Anthropic은 컨테이너, VM, dev container 같은 격리된 환경에서만 쓰라고 말합니다.

샌드박스 페이지의 표현으로는, 권한 모드는 도구 호출이 실행될지를 정하고, 격리는 실행된 뒤 무엇에 닿을 수 있는지를 정합니다. 앞의 것을 건너뛰면 남는 것은 뒤의 것뿐입니다.

방법 1: auto 모드나 허용 목록으로 Claude Code 프롬프트 줄이기

프롬프트를 끄기 전에 그 중간 모드를 시도해 볼 만합니다.

auto 모드.

claude --permission-mode auto

나에게 묻는 대신 분류기가 각 동작을 검토합니다. Anthropic은 이를 격리 경계가 아니라 동작별 제어로 설명합니다. 지원되는 모델이 필요하고 조직이 끌 수 있습니다.

스크립트 실행용 정확한 허용 목록.

claude -p "run the test suite" --permission-mode dontAsk --allowedTools "Bash(npm test)" "Read"

목록 밖의 것은 프롬프트 없이 거부됩니다. CI처럼 형태가 정해진 작업에 맞습니다.

Bash 샌드박스. 수동 모드 세션에서 auto-allow와 함께 /sandbox를 쓰면 macOS, Linux, WSL2에서 셸 명령을 OS 수준으로 제한합니다. 셸 명령만 다루므로 무인 실행에는 이것만으로 충분하지 않습니다.

방법 2: 컨테이너나 VM 안에서 Claude Code 권한 건너뛰기

정말 손을 떼고 실행하고 싶다면 세션 전체를 버려도 되는 환경 안에 넣으세요.

dev container에서 Claude Code 실행

Anthropic은 Claude Code 저장소에 기본 거부 방화벽 스크립트가 포함된 참조 dev container를 공개합니다. 그 지침을 요약하면:

  1. 컨테이너에서 Claude Code를 root가 아닌 사용자로 실행하세요(dev container 설정의 remoteUser).
  2. 네트워크 송신을 Claude Code가 필요한 도메인으로 제한하세요. 참조 init-firewall.sh가 이를 수행하며 NET_ADMIN과 NET_RAW 권한이 필요합니다.
  3. ~/.ssh나 클라우드 자격 증명 파일 같은 호스트 비밀을 마운트하지 마세요. 수명이 짧고 저장소 범위로 제한된 토큰을 선호하세요.
  4. 신뢰할 수 있는 저장소에서 쓰세요. 악의적인 프로젝트는 Claude Code 자체의 자격 증명을 포함해 컨테이너 안의 무엇이든 읽을 수 있습니다.

그런 다음:

claude --dangerously-skip-permissions

일회용 VM이나 남는 서버 사용

일회용 VM이나 작은 서버는 같은 성질을 더 단단한 경계로 제공합니다. 별도 사용자를 만들고, 작업에 필요한 저장소만 클론하고, 그 사용자에게는 프로덕션 자격 증명 접근을 주지 마세요.

bypass 세션이 여전히 닿을 수 있는 것 점검

  • 마운트된 작업 공간은 여전히 내 것입니다. Claude는 바인드 마운트된 프로젝트의 어떤 파일이든 수정할 수 있고, 그 수정은 호스트에 반영됩니다. 긴 실행 전에 커밋이나 stash를 해 두어 diff를 보고 되돌릴 수 있게 하세요.
  • 네트워크는 여전히 문입니다. 송신 규칙이 허용하는 곳이라면 세션도 닿을 수 있습니다.
  • 나중에 검토하세요. 병합하기 전에 다른 사람의 풀 리퀘스트처럼 diff를 읽으세요.

방법 3: Claude Code 권한 프롬프트를 유지하고 휴대폰에서 응답하기

애초에 이 플래그를 원하게 되는 이유는 대개 프롬프트 자체가 아닙니다. 프롬프트가 떴을 때 키보드 앞에 없다는 것입니다. 이것에는 다른 해결책이 있습니다.

권한 프롬프트를 휴대폰으로 받아 실행 중인 세션이 내가 돌아올 때까지 막혀 있지 않게 하면서 더 안전한 모드를 계속 쓰고 싶다면, Happier는 Claude Code, Codex 등 여러 에이전트를 휴대폰, 데스크톱, 웹에서 크로스 디바이스로 실행하고 오케스트레이션할 수 있는 오픈 소스 앱입니다.

에이전트는 내 컴퓨터에서 실행되고 휴대폰, 데스크톱, 웹 앱이 여기에 연결됩니다. 설정 방법은 휴대폰에서 Happier 사용하기에 있습니다. GitHub에 공개되어 있고, 여기서 다운로드할 수 있으며, Discord도 있습니다.

구체적으로는:

  • 권한 프롬프트가 휴대폰에 표시되고, 세션이 나를 기다릴 때 푸시 알림이 옵니다. 거기서 허용하거나 거부하세요. 자세한 내용은 승인 가이드에 있습니다.
  • 세션마다 권한 모드를 고릅니다. 세션의 권한 칩에 에이전트가 지원하는 모드가 나열되며, Claude는 Default, Read Only, Auto, YOLO입니다. 백엔드별 기본값은 Settings → Session → Permissions에 있고, Apply permission changes는 변경을 즉시 적용할지 다음 메시지부터 적용할지 정합니다.
  • YOLO는 Claude Code를 bypass 모드로 실행합니다. Claude에서 Happier의 YOLO는 --dangerously-skip-permissions가 켜는 것과 같은 bypassPermissions 모드이므로, 지워도 괜찮은 컴퓨터에서 고르세요.
  • 생성된 세션은 부모의 권한 모드 이하로 유지됩니다. 에이전트가 다른 세션을 시작할 때 더 높은 모드 요청은 거부됩니다. Settings → Actions → AI session spawn policy에는 Permission ceiling도 있어서, 에이전트에게 작업을 위임하면서 그것이 시작하는 모든 것을 Read-only로 둘 수 있습니다.

잘 통하는 패턴: 실제 자격 증명에 닿는 일은 노트북의 Default 세션에서, 길고 기계적인 작업은 일회용 서버의 YOLO 세션에서 하고, 둘 다 같은 세션 목록에서 봅니다.

솔직한 한계: Happier는 프롬프트와 설정을 전달할 뿐이고, 격리는 세션이 실행되는 컴퓨터나 컨테이너에서 나옵니다.

문제 해결

--dangerously-skip-permissions로 Claude Code가 시작을 거부함

Linux와 macOS에서 Claude Code는 root로 이 플래그를 쓰는 것을 거부합니다. 컨테이너 안에서 whoami를 확인하세요. 컨테이너나 VM에 일반 사용자를 만들고 그 사용자로 실행하세요.

조직에서 bypass permissions 모드가 비활성화됨

관리자는 관리형 설정의 permissions.disableBypassPermissionsMode로 bypass 모드를 끌 수 있습니다. 그렇다면 auto 모드나 허용 목록을 쓰세요.

실행 중인 Claude Code 세션이 bypass 모드로 바뀌지 않음

Anthropic 문서에 따르면 이를 켜지 않고 시작한 세션에서는 bypass 모드로 들어갈 수 없습니다. 플래그를 붙여 새 세션을 시작하세요.

Claude Code plan 모드가 편집을 막지 못함

Anthropic에 따르면 bypass를 쓸 수 있는 대화형 터미널 세션에서는 plan 모드의 차단이 강제되지 않습니다. Claude는 여전히 계획하라는 지시를 받지만, 시도한 편집이 실행될 수 있습니다. plan 모드에 의존할 때는 bypass를 꺼 두세요.

자주 묻는 질문

--dangerously-skip-permissions는 안전한가요?

네트워크 접근이 제한되고 호스트 비밀이 없는 격리된 비root 환경이라면, 신뢰할 수 있는 저장소에 대해 합리적인 선택입니다. 평소 쓰는 컴퓨터에서는 에이전트가 나와 같은 범위에 닿습니다.

auto 모드와 권한 건너뛰기의 차이는?

auto 모드는 프롬프트를 각 동작을 검토하는 분류기로 대체합니다. bypass 모드는 검사를 없앱니다. 둘 다 격리 경계는 아닙니다.

같은 명령에 대해 Claude Code가 계속 묻지 않게 하려면?

설정에 그 명령의 허용 규칙을 추가하거나, 스크립트 실행이라면 --allowedTools를 쓰세요. 나머지에 대한 프롬프트는 유지됩니다.

Happier의 YOLO는 Codex에서도 되나요?

Happier는 Codex와 다른 백엔드에도 YOLO가 있으며, 각 공급자가 자체 정책으로 적용합니다. Codex에서는 승인 없는 전체 접근에 해당하므로 같은 격리 조언이 적용됩니다.

관련 가이드

claudepermissionssecuritycontainersapprovals
마지막 업데이트: 2026-10-26