--dangerously-skip-permissionsとは?
読み方: デンジャラスリー スキップ パーミッションズ
定義
デンジャラスモード(Dangerously Skip Permissions モード)とは、Claude Code を `--dangerously-skip-permissions` フラグで起動し、すべてのコマンドを確認なしで実行できる状態のこと。
詳しい解説
デンジャラスモードは、claude コマンドに `--dangerously-skip-permissions` フラグを付けて起動することで有効になる自動承認モードです。ファイルの読み書き(Read / Write / Edit)、シェルコマンド実行(Bash)、Web 検索、Git 操作など、すべてのツール呼び出しがユーザー確認なしで即座に実行されます。コミュニティでは「YOLO モード」「危険モード」とも呼ばれており、フラグ名が「危険を伴う」と明示している通り、本来は限定的な場面でのみ使うことが想定された機能です。 なぜこのモードが必要かというと、人間が画面を見ていないヘッドレスな自動化シナリオで確認ダイアログが処理を止めてしまうのを避けるためです。代表的な利用シーンは、GitHub Actions の PR 自動レビュー、CI/CD パイプラインでのテストコード生成、cron ジョブでの定期コード品質チェック、夜間バッチでのリファクタリング自動化など、対話できる人間が存在しないバックグラウンド処理です。 起動コマンドは OS によって違いはなく、ターミナルから次のように実行します。Mac / Linux では `claude --dangerously-skip-permissions`、Windows(PowerShell)でも同じく `claude --dangerously-skip-permissions`、非対話ヘッドレス実行と組み合わせる場合は `claude --dangerously-skip-permissions -p "全テスト実行してエラー修正して"` のように書きます。 リスクは現実的かつ深刻です。たとえば `rm -rf` で重要ディレクトリを誤削除する、`sudo` で OS レベルの破壊操作が走る、curl や fetch で外部サーバーに機密情報を送信する、`.env` や認証トークンを Git に push する、`git reset --hard` で未コミット変更が消える、といった事故がすべてユーザー確認なしに発生し得ます。本番マシンや個人マシンで安易に有効化すべきではありません。 安全に使う 5 つのコツは次の通りです。第一に、専用の sandbox 環境(使い捨ての VM やコンテナ)でのみ実行し、ホストマシンから論理的に隔離する。第二に、Docker コンテナ内で `--network=none` を併用してネットワーク到達範囲を狭める。第三に、ホストの機密ファイル(`~/.ssh`、`~/.aws`、`.env` 等)をマウントしない。第四に、`.gitignore` と Git の状態を起動前に必ず確認し、誤って秘密情報を扱える状態にしない。第五に、可能であれば Plan モードでの事前計画レビューや、`--allowedTools` でツールを限定するなど、別の安全策と併用する。 代替案も把握しておきましょう。Plan モードは編集を伴わない計画モードで、意図確認のあとに本実行に切り替えられます。`.claude/settings.json` の `permissions.allow` / `permissions.deny` でコマンド単位のホワイトリスト・ブラックリストを設定すれば、確認なしで許可する範囲を最小限に絞れます。`--allowedTools 'Edit,Read,Glob,Grep'` のように起動時にツールを限定すれば Bash を完全に禁止することもできます。これらを使い切ってもなお自動化が回らない場合にだけ、`--dangerously-skip-permissions` を検討するのが妥当な順序です。 公式 CLI フラグ名は `--dangerously-skip-permissions` で固定です(ハイフン区切り、複数形)。短縮形や別名は提供されていないため、スクリプトやドキュメントでは正確な綴りで記述してください。
使用例
claude --dangerously-skip-permissions -p "全テスト実行してエラー修正して"