「このコマンドは毎回確認しなくていい」「このファイルには絶対に触らせない」——こうした線引きは、AIにお願いするのではなく、ファイルに書いて決める。その置き場所が settings.json である。この章を読むと、設定をどこに書けば自分の全作業に効くのか、このプロジェクトだけに効かせるにはどうするかが分かる。

目次

章タイトル
1設定ファイルとは
2settings.json の置き場所
3置き場所ごとの優先順位
4settings.json ファイルの書き方
5settings.json で設定できること
6settings.json を実際に書く
7書くときの注意点

1. 設定ファイルとは

settings.json は、Claude Codeというツール自体の動作を決めるファイルである。

書かれた内容は、AIの判断を経ずにClaude Code自体が読んで動作に反映する。ここで禁止した操作は、AIがどう判断しても実行されない。

形式はJSONという決まった書式で、普通の文章ではない。「このコマンドは確認なしで実行してよい」「このファイルには触らせない」といった設定を、決まった書き方で並べていく。

最初は存在しない

Claude Codeをインストールしても、このファイルは作られない。自分で作るか、Claude Codeが必要になったタイミングで作る。

「見当たらない」のは正常である。設定を変える必要が出たときに初めて登場する。


2. settings.json の置き場所

置き場所によって、どの範囲に効くかが変わる。

まず2つだけ覚える

置き場所は4つあるが、一人で使う場合に関係するのは2つだけである。

【自分専用】パソコンの中の、自分のユーザーフォルダー
~/.claude/settings.json          ← どのフォルダーで作業しても効く

【プロジェクト専用】
資料/
└── .claude/
    └── settings.local.json      ← 資料フォルダーで作業するときだけ効く

先頭の ~ は、自分のユーザーフォルダーを表す記号になる。Windowsなら C:\Users\自分の名前、Macなら /Users/自分の名前 にあたる。~/.claude/ と書いてあれば、そのユーザーフォルダーの中の .claude を指している。

使い分けは1行で決まる。

  • どの作業でもそうしたいこと → ユーザー用(~/.claude/settings.json)
  • このプロジェクトだけの設定 → プロジェクト個人用(.claude/settings.local.json)

残り2つは、人と共有するとき

4つの全体は次の通りである。下2つは、チームで共有する場合や会社が配布する場合に使う。個人利用なら意識しなくてよい。

置き場所ファイル効く範囲
ユーザー用~/.claude/settings.json自分の全作業
プロジェクト個人用.claude/settings.local.jsonそのフォルダーでの作業(自分だけ)
プロジェクト共有用.claude/settings.jsonそのフォルダーでの作業(全員)
組織用(管理者が配布)組織全体

プロジェクト用に2種類あるのは、共有するかどうかの違いになる。settings.local.json は自分だけのもので、settings.json はチーム全員で同じものを使う。一人で使う間は、前者だけでよい。


3. 置き場所ごとの優先順位

同じ項目が複数の場所に書かれていると、どれか1つが選ばれる。順位は次の通りである。

強い
 ↑   ① 組織用(管理者が配布)
 │   ② プロジェクト個人用(.claude/settings.local.json)
 │   ③ プロジェクト共有用(.claude/settings.json)
 ↓   ④ ユーザー用(~/.claude/settings.json)
弱い

上にあるものが勝つ。

たとえばユーザー用に「モデルA」、プロジェクト個人用に「モデルB」と書いてあれば、そのフォルダではBが使われる。

なぜ順位があるか

範囲が狭い設定ほど優先されるという考え方になっている。

全体の方針をユーザー用に書いておき、特定のフォルダだけ例外にしたい場合はプロジェクト側に書く。こうすると、例外のために全体の設定を書き換えなくて済む。

組織用が最も強いのは、会社が定めた方針を個人が上書きできないようにするためである。


4. settings.json ファイルの書き方

置き場所が決まったので、中身をどう書くかに移る。

このファイルは JSON という形式で書く。プログラミングの知識は要らないが、書式を外すとファイル全体が読まれなくなるため、最低限の決まりを押さえる。

3つの決まり

{
  "model": "claude-sonnet-5",
  "permissions": {
    "allow": ["Bash(npm test)"]
  }
}
  1. 全体を波括弧 { } で囲む
  2. 項目名も値も、ダブルクォート " で囲む
  3. 項目が複数あるときはカンマ , で区切る

これだけである。

入れ子になることがある

上の例の permissions のように、項目の中にさらに項目が入ることがある。その場合も決まりは同じで、内側にもう1組の { } が増えるだけになる。

深く考えなくてよい。書く場所は以降の章がそれぞれ示すため、この章では「こういう形をしている」と分かれば足りる。


5. settings.json で設定できること

設定できる項目は多いが、よく使うものは限られる。詳細はそれぞれの章で扱う。

項目何が変わるか扱う章
permissions許可する操作・禁止する操作Permissions
hooks決まったタイミングで走る処理Hooks
model使用するAIモデル基本的なコマンド(/model で変えられる)
env環境変数(本シリーズでは扱わない)

この章で全部を覚える必要はない。 「こういう項目がここに書かれる」という位置づけだけ分かればよい。

実際に触るのは、次の「Permissions — 確認を減らしつつ、危険な操作だけ止める」の permissions が最初になる。


6. settings.json を実際に書く

4章「settings.json ファイルの書き方」と5章「settings.json で設定できること」を使って、実際に1つ書いてみる。

ファイルを開く

VSCode拡張版では、ファイルを直接開いて編集する。

1. VSCodeで作業フォルダーを開く
2. .claude/settings.local.json を開く
   (無ければ .claude フォルダーごと作る)
3. 編集して保存する

「無い」と思ったら、「.claude フォルダー — Claude Codeの持ち物が集まる場所」で見た性質を思い出す。 ドットで始まるフォルダーはパソコンの標準設定では表示されないため、すでに在るのに見えていないことがある。VSCodeの左側のファイル一覧には出るので、そちらで確かめてから作る。

ユーザー用を編集する場合は、~/.claude/settings.json を開く。VSCodeの「ファイル → ファイルを開く」から辿ればよい。

保存すればすぐ効く

編集して保存すると、多くの設定はその場で反映される。Claude Codeを再起動する必要はない。

ただし一部の設定は、会話を開始したときに一度だけ読まれる。使用するモデルの設定などがこれにあたり、変更を反映するには会話を切り替える必要がある。

Claude Code自身が書き込むこともある

このファイルは、Claude Codeが自分で作ることもある。

次の「Permissions — 確認を減らしつつ、危険な操作だけ止める」で扱うが、確認画面で「今後は確認しない」を選ぶと、その内容が settings.local.json に自動で保存される。

覚えのないファイルができていても、故障ではない。自分が承認した内容が記録されたものになる。


7. 書くときの注意点

書式を外すと、そのファイルは丸ごと読まれなくなる。 1文字の違いで全部の設定が無効になるため、先に2つだけ押さえておく。

コメントは書けない

// によるメモは書けない。 書くとファイル全体が読まれなくなる。

(✕ 壊れる)
{
  // モデルの設定
  "model": "claude-sonnet-5"
}

何のための設定かを書き残したくなるが、JSONでは不可能である。

末尾のカンマは書けない

最後の項目の後ろにカンマを付けてはいけない。 これも壊れる原因になる。

(✕ 壊れる)
{
  "model": "claude-sonnet-5",
}

(○ 正しい)
{
  "model": "claude-sonnet-5"
}

項目を削ったときに起きやすい。この2つが、書式ミスのほぼ全部になる。

壊れたときは知らせてくれる

書式を外すと、Claude Codeが起動時に知らせてくる。

表示意味対処
Settings Errorファイル全体が読めない上の2点(コメント・末尾カンマ)を確認する
Settings Warning一部の項目だけ無効該当項目の書き方を確認する

Settings Error が出たときは、その画面からClaude Codeに直させることもできる。 自分で原因を探さなくてよい。

心配であれば、編集する前にファイルの内容をコピーしておくとよい。戻したいときに貼り直せば済む。


次のページ

設定ファイルの置き場所と書き方が分かった。次は、そこに何を書くかを決める段階になる。

次の「Permissions — 確認を減らしつつ、危険な操作だけ止める」では、どの操作を自動で許可し、どの操作は毎回確認させるかを決める設定を扱う。「基本操作 — 指示を出し、変更を確認して承認する」で「最初はManualを勧める」と書いたが、すべてを確認し続けるのは現実的ではない。安全を保ったまま確認の回数を減らす方法を見ていく。この章で出てくる設定が、まさに settings.json の permissions に書かれるものになる。


← ⑩ CLAUDE.md | 次:⑫ Permissions →