【結論】settings.jsonを階層と権限ルールで管理
Claude Codeの設定は、ユーザー設定、プロジェクト設定、ローカル設定、管理者配布設定を目的別に分けます。
対話画面の設定変更には/configを使い、共有すべき設定だけを.claude/settings.jsonへコミットします。
# ターミナルでプロジェクト設定ディレクトリを作成
mkdir -p .claude
# 設定ファイルをJSONとして検証
python -m json.tool .claude/settings.json >/dev/null具体的な手順・設定方法
個人設定は
~/.claude/settings.json、チーム設定は.claude/settings.jsonへ分離します。権限はallow、ask、denyを最小限で定義します。
Auto modeを使う場合も、信頼するリポジトリやドメインを明示し、Sandboxと併用します。
# 起動後のセッション内で設定画面を開く
/config
# 起動後のセッション内で権限を確認
/permissions実践プロンプト / 活用テクニック
設定変更をAIへ依頼する場合は、まず差分だけを提示させ、JSON検証後に保存させます。
モデル名や未確認キーを直接書かせず、公式リファレンスに存在する項目だけを採用します。
現在の設定ファイルを読み、重複・無効キー・過剰な権限を指摘してください。
ファイルは変更せず、修正版JSONの差分だけを提示してください。
Bashの公開、削除、強制Pushはaskまたはdenyにしてください。注意点・よくあるエラーと対処法
claude config setで任意の設定項目を自由に追加できるわけではありません。
存在しないremoteControlや古いモデルIDを設定すると、無視または起動エラーの原因になります。
共有設定へ秘密鍵や個人用パスを書かず、Secret Managerや環境変数で注入してください。