Claude Code

Claude Codeのsettings.json設定ファイルの階層と主な設定項目の考え方

Claude Codeの動作は、settings.jsonなどの設定ファイルで管理します。ユーザー・プロジェクト・ローカルの階層、主な設定項目(権限・フック・環境変数・モデル)、優先順位の考え方、共有するときの注意を、公式ドキュメントを前提に整理します。

公的機関・公式資料などの一次情報と照合して作成しています。このサイトについて

Claude Codeのsettings.jsonとは

Claude Codeの動作(権限、フック、環境変数、使用するモデルなど)は、JSON形式の設定ファイル(settings.json)で管理できます。設定ファイルは複数の場所に置け、ユーザー全体・プロジェクト・自分だけといった範囲(スコープ)ごとに、使い分けます。設定できる項目・ファイルの場所・優先順位は、更新されることがあります。ここでは、全体の考え方を整理しますので、具体的な書式は、公式ドキュメントで確認してください(権限設定とパーミッションモード、フック(Hooks))。

設定ファイルの階層(スコープ)

階層 用途 共有
ユーザー設定(~/.claude/settings.json) 自分の、すべてのプロジェクトに共通する設定 しない(自分のPCのみ)
プロジェクト設定(.claude/settings.json) そのプロジェクトで、チーム全員が揃えたい設定 する(Gitで管理)
ローカルのプロジェクト設定(.claude/settings.local.json) 自分だけの、そのプロジェクト固有の設定 しない(Gitの管理対象から外す)
組織の管理設定 組織が一括して適用する設定(提供される場合) 組織が配布

複数の階層に同じ項目がある場合は、公式ドキュメントでは、組織の管理設定 → コマンドラインの指定 → ローカルのプロジェクト設定 → プロジェクト設定 → ユーザー設定の順に優先されると説明されています(2026年10月時点)。権限のルールなど、項目によっては階層をまたいで組み合わされるものもあるため、詳細は公式で確認してください。

主な設定項目(例)

項目の種類 内容 関連記事
権限 許可・確認・拒否のルール 権限設定とパーミッションモード
フック 特定のタイミングで実行する処理 フック(Hooks)
環境変数 Claude Code実行時に設定する変数
モデル 既定で使うモデル モデルの選択と切り替え
MCPサーバー 接続する外部ツール(サーバーの定義そのものは、.mcp.jsonや~/.claude.jsonに保存される) Claude CodeでMCPを使う
出力・表示 表示の設定、出力スタイルなど 出力スタイルとステータスライン
通知・動作 動作に関する各種の挙動

項目名・値の書式は、バージョンにより変わることがあります。設定の例は、公式の最新のページから、取得してください。

設定の確認と変更

方法 内容
/config 対話画面から、テーマ・モデル・出力スタイルなど、主な個人設定を確認・変更する(すべての項目が並ぶわけではない。スラッシュコマンド)
/permissions 権限のルールを確認・編集する
/hooks 設定済みのフックを確認する(閲覧用。編集は設定ファイルで行う)
ファイルを直接編集 エディタで、JSONを編集する

ファイルを直接編集する場合は、JSONの書式(カンマ、括弧、引用符)に注意してください。書式が壊れていると、設定が読み込まれないことがあります。編集前に、バックアップを取ると安心です。

書式の基本(JSON)

{
  "permissions": {
    "allow": [],
    "deny": []
  },
  "env": {
    "EXAMPLE_VARIABLE": "value"
  }
}
注意点 内容
最後の項目の後ろにカンマを付けない JSONの決まり
文字列は、二重引用符で囲む 一重引用符は使えない
コメントは書けない JSONでは、原則コメントを書けない
書式の検証 エディタやツールで、JSONの書式を確認する

上は、書式を示すための、概念的な例です。実際の項目名は、公式ドキュメントで確認してください。

チームでの運用

運用 内容
プロジェクトの設定をGitで共有 チーム全員が、同じ権限・フック・規約を使う
レビューする 設定の変更は、コードと同様に、レビューを通す
ローカル設定で個人差を吸収 個人の好みは、共有しない設定に
変更の理由を記録 なぜその設定か、コミットメッセージや文書に残す

Claude Codeのsettings.jsonの注意点

注意点 内容
秘密情報を書かない トークン・パスワードを、共有される設定ファイルに書かない
他人の設定の取り込み 出所不明の設定は、権限・フックの中身を確認してから使う(安全に使うための設定)
設定の競合 階層間で、意図しない上書きが起きる。最終的な状態を確認する
バージョンの違い 古い書式・廃止された項目に注意
設定が反映されない 再起動、書式エラー、階層の優先順位を確認(困ったときの対処とデバッグ)

Claude Codeのsettings.jsonの具体例

プロジェクト設定に、テストとリンターの実行を許可し、.envの読み取りを拒否する権限ルールを書いてGitで共有すれば、チーム全員が、同じ安全基準で作業できます。個人の好みの設定(表示など)は、ユーザー設定に置き、チームの設定とは分けると、管理が簡単です。

Claude Codeのsettings.jsonのFAQ(よくある質問)

Q. 設定ファイルは、どこにありますか?
A. ユーザー設定は~/.claude/settings.json、プロジェクト設定は.claude/settings.json、ローカルのプロジェクト設定は.claude/settings.local.jsonです(2026年10月時点)。組織の管理設定の場所はOSにより異なるため、公式ドキュメントで確認してください。

Q. 設定を変えても反映されません。
A. JSONの書式エラー、階層の優先順位、再起動の必要性を確認してください。

Q. 設定を元に戻したいです。
A. バックアップから戻すか、該当の項目を削除してください。Gitで管理していれば、履歴から戻せます。

筆者の見解(Claude Codeのsettings.json)

設定ファイルは、「自分たちの作業ルールを、機械が読める形で書いたもの」だと思います。CLAUDE.mdが「人間にも読める説明」だとすれば、settings.jsonは「確実に守らせる仕組み」です。この役割分担を意識すると、設定の置き場所に迷わなくなります。

Claude Codeのsettings.jsonの関連項目

出典(一次情報)

本記事は一般的な情報の提供を目的としています。AIのサービス・機能・料金・仕様は頻繁に更新されるため、最新の内容は各社の公式ドキュメントでご確認ください。「筆者の見解」は一つの考え方です。

PR当サイトはアフィリエイト広告を利用しています。掲載内容は広告主から依頼・指示を受けたものではなく、筆者の調査・体験にもとづきます。