Skip to main content
このページには 3 つの例 settings.json ファイルがあります。設定を保存する場所ごとに 1 つずつです:
  • 開発者の ~/.claude/settings.json
  • チームの .claude/settings.json(リポジトリにコミットされたもの)
  • 組織の managed-settings.json
それぞれが読者にとって妥当なファイルなので、形状を確認して必要な部分をコピーできます。どれも推奨されるベースラインではありません。すべての値は 設定リファレンス のキーのエントリから取得されており、そこには型、デフォルト値、および設定できる場所が記載されています。 各例には 2 つのタブがあります。コピー可能な設定ファイル は保存するファイルです。各キーの機能 は同じファイルですが、各キーの上にコメントがあります。Claude Code は設定ファイルのコメントを受け入れないため、最初のタブからコピーしてください。

独自の設定

1 人の開発者の個人設定です。モデルと努力レベルを選択し、ターミナルを調整し、読み取り専用コマンドと 1 つのファイル読み取りを事前承認します。リストされていないすべてのものはデフォルトを保持します。このようなファイルは ~/.claude/settings.json に保存され、開くすべてのプロジェクトに適用されます。
これを ~/.claude/settings.json として保存してください。コメントのない有効な JSON なので、そのまま貼り付けて、不要なキーを削除できます。
~/.claude/settings.json

チームの共有設定

1 つのチームの共有設定は、リポジトリにコミットされるため、それをクローンした全員が同じ権限、hooks、プラグインマーケットプレイスを取得します。リポジトリのトップレベルに .claude/settings.json のようなファイルを保存してください。コミットする前に知っておくべきことは以下の通りです。
  • プロジェクトのスレッド外のクラウドセッションもこれを読みます。 1 つのリポジトリを持つクラウドセッションはクローン内で開始されるため、コミットされたファイルはそこにも適用されます。
  • テレメトリは管理設定または個人設定に入ります。 Claude Code は、リポジトリの設定ファイルの OpenTelemetry エクスポーター変数を無視します。ただし、テレメトリをオフにする値は除きます。組織の管理設定、または各ユーザーの ~/.claude/settings.json で設定してください。
  • 許可ルールは信頼を待ちます。 許可ルールと extraKnownMarketplaces エントリは、各ユーザーがこのフォルダ自体を信頼した後に有効になります。親フォルダだけではなく、このフォルダ自体を信頼する必要があります。拒否ルールと確認ルールは、信頼されているセッションでもそうでないセッションでも、すべてのセッションで適用されます。
  • hook はリポジトリ内のスクリプトです。 このファイルの hook は .claude/hooks/block-rm.sh を実行します。hook がどのように解決されるかでは、これを書く方法について説明しています。
  • ルールはコマンドとパスを記述されたとおりにマッチします。 Bash(git push *) は git -C . push にはマッチしません。Read(./.env) 単独では、ファイルツールと cat .env のようにファイルを名前で指定するコマンドを停止しますが、grep -r をディレクトリ上で実行することは停止しません。このファイルの sandbox ブロックはそのギャップを埋めます。sandbox はあなたの Read 拒否パスをすべてのサンドボックス化されたコマンドが読み取れないものに追加するためです。
これをリポジトリのトップレベルに .claude/settings.json として保存してコミットしてください。コメントのない有効な JSON なので、そのまま貼り付けて、不要なキーを削除できます。
.claude/settings.json

組織の管理設定

managed-settings.json ファイルは、管理キーの形状を示し、各キーに対して 1 つの妥当な値を含みます。これは推奨ポリシーではありません。自分の要件に合致するキーを選択し、独自の値を設定してください。この例では、以下のキーを設定しています。
  • forceLoginMethod と forceLoginOrgUUID はログイン方法と組織を固定します
  • availableModels と enforceAvailableModels はセッションが使用できるモデルを制限します
  • permissions.deny は 2 つのファイル読み取りと curl コマンドをブロックし(Claude が記述する方法)、disableBypassPermissionsMode は権限モードのバイパスを削除します
  • allowManagedPermissionRulesOnly と allowManagedMcpServersOnly は、管理権限と MCP 許可リストのみを適用対象にします
  • allowedMcpServers は MCP サーバーを URL で固定します
  • strictKnownMarketplaces は 1 つのプラグインマーケットプレイスを許可します
  • sandbox はコマンドを固定ネットワーク許可リストでサンドボックス化し、サンドボックス外での再試行を許可しません。その failIfUnavailable キーは、サンドボックスを実行できない環境では Claude Code を起動させないようにします
  • requiredMinimumVersion は最小 Claude Code バージョンを設定します
  • cleanupPeriodDays はセッショントランスクリプトおよび他のローカルデータの保持期間を 7 日に短縮します
  • companyAnnouncements は起動時にメッセージを表示します
管理者は、このようなファイルを managed-settings.json として、または MDM もしくは サーバー管理設定 を通じて同じ JSON をデプロイします。デプロイされた 1 つのファイルは、それが到達するすべてのマシンまたはアカウントに適用されます。グループに異なる値を付与するには、そのグループに異なるファイルまたはプロファイルをデプロイしてください。サーバー管理設定はまだグループごとのポリシーをサポートしていない ためです。
これを managed-settings.json としてデプロイするか、MDM または claude.ai コンソールを通じて同じ JSON をデプロイしてください。コメントのない有効な JSON です。例の組織 UUID、サーバー URL、およびマーケットプレイスを自分のものに置き換え、不要なキーを削除してください。
managed-settings.json