【結論】Permission modeとTool ruleで権限を制御する
Claude Codeの権限設定は、存在しないauto_approval真偽値ではなく、Permission modeとallow・ask・deny ruleで管理します。
通常はdefaultまたはPlanから始め、必要なRead、Edit、Test Commandだけを許可します。
# 起動後のセッション内で実行:権限ルールを確認
/permissions
# ターミナルで実行:Planモードで開始
claude --permission-mode plan
# ターミナルで実行:読取とgit diffだけを許可
claude -p "差分をレビューして" \
--allowedTools "Read,Grep,Glob,Bash(git diff:*)" \
--disallowedTools "Edit,Write,WebFetch,WebSearch"
# ターミナルで実行:設定FileをReview
git diff -- .claude/settings.json具体的な手順・設定方法
Taskに必要なToolとPathを洗い出します。
deny ruleを先に作り、Production、Secret、破壊的Commandを遮断します。
頻繁に使う安全なCommandだけを狭いPatternでallowします。
変更後は新Sessionで実際のPrompt表示と拒否動作をTestします。
実践プロンプト / 活用テクニック
# 起動後のセッション内で入力
src/utilsだけを調査し、型Errorの修正計画を作成してください。
編集、Package追加、外部通信、Git操作は行わないでください。
必要な追加権限があれば理由と対象Commandを示してください。注意点・よくあるエラーと対処法
Promptで対象Pathを指定するだけではOSレベルの隔離になりません。
--dangerously-skip-permissionsは通常運用向けではありません。
未知のProject settings、Hook、MCP、PluginはTrustする前に内容を監査してください。