~/.claude.json に保持する短いキーグループを一覧表示しています。ファイルを選択するか、優先順位を確認するには、設定ファイルと優先順位から始めてください。
設定インデックス
以下の各キーは、それぞれの項目にリンクしています。Scope 列には、そのキーを記述できるファイルが示されています。User は ~/.claude/settings.json、Project は .claude/settings.json、Local は .claude/settings.local.json、Managed は組織がデプロイするものです。Any file はこの 4 つすべてを意味し、Global config は ~/.claude.json を意味します。
モデルと応答
Claude Code が使用するモデルと応答方法を選択します。これらの設定が/model コマンドと環境変数とどのように相互作用するかについては、モデル設定を参照してください。
advisorModel
Claude がサーバー側のアドバイザーツールを呼び出すときに回答するモデルを選択します。これを設定解除するとアドバイザーがオフになります。アドバイザーはメインモデル以上の能力を持つ必要があります。受け入れられるペアリングと受け入れられないペアリングを選択した場合の動作については、アドバイザーモデルを選択を参照してください。
通常、このキーを手動で編集することはありません。/advisor を実行して、現在の選択、アドバイザーができるモデル、およびアドバイザーなしを表示するピッカーを開きます。Claude Code は選択を ~/.claude/settings.json のこのキーに保存します。リモートコントロールクライアントから、またはリモートワーカーに接続されたセッションで選択した場合、その選択はそのセッションのみに適用され、このキーは変更されません。
アカウントが使用クレジット同意を必要とする場合は、/model fable を実行して最初に同意を受け入れます。これを行うまで、/advisor で Fable を選択しても何も保存されず、Claude Code は最初に /model fable を実行するよう指示します。
- スコープ:
任意のファイル - タイプ: 文字列、エイリアス
"fable"、"opus"、または"sonnet"のいずれか。これらは Claude Code の現在のデフォルトバージョンのそのモデルファミリーに解決されます。または、"claude-opus-5-5"などの完全なモデル ID - デフォルト: 設定解除されているため、アドバイザーはオフです
- セッションごとのオーバーライド:
--advisorはこのキーより優先されます。CLAUDE_CODE_DISABLE_ADVISOR_TOOLはアドバイザーをオフにし、このキーはそれをオンに戻すことはできません
settings.json
"fable" にはFable アクセスが必要です。
alwaysThinkingEnabled
このキーを false に設定して、すべてのセッションで拡張思考をオフにします。思考はデフォルトでオンなので、true は何も変わりません。ほとんどの人はファイルを編集するのではなく /config を通じてこれを設定します。
Opus 5.5、Sonnet 5.5、Fable モデルなど、常に思考するモデルでは、false は効果がありません。サードパーティプロバイダーでは、Claude Code は思考をオフにするのではなく thinking パラメータを省略するため、適応推論モデルは依然として思考する可能性があります。Anthropic API で思考をオフにした場合、Claude Code は、Opus 5 などその組み合わせを受け入れないことが分かっているモデルに、より高いレベルではなく努力 high を送信します。
- スコープ:
任意のファイル - タイプ: ブール値
true: 効果なし。思考は既にオンですfalse: Claude Code はすべてのセッションで拡張思考をオフにします
- デフォルト: 設定解除されているため、思考はそれをサポートするモデルではオンです
- セッションごとのオーバーライド:
MAX_THINKING_TOKENSはこのキーより優先されます。0はfalseと同じモデルおよびプロバイダーの制限の下で思考をオフにし、正の値は、このキーがfalseの場合でも思考をオンにします。適応推論モデルでは、数値自体は無視されます
settings.json
availableModels
メインセッション、サブエージェント、スキル、およびアドバイザーで選択できるモデルを制限します。管理リストは /model、--model、および開発者自身のファイルの model キーを制限します。リスト外のモデルは選択できません。デフォルトのプレフィックスマッチングでは、これは Default オプション自体には影響しません。enforceAvailableModelsとペアにしてください。
- スコープ:
任意のファイル。組織に対して強制するために、管理設定にデプロイします。 - タイプ: モデルエイリアスまたは ID の配列
- デフォルト: 設定解除されているため、すべてのモデルが利用可能です
settings.json
"claude-opus-5" などのモデル ID エントリは、Opus 5.5 などそれを拡張する後のバージョンも許可します。これらのバージョンのいずれかをブロックするには、deniedModelsを使用します。各モデル ID エントリが名前を付けたバージョンのみを許可するようにするには、availableModelsMatchを使用します。モデル選択を制限を参照してください。
availableModelsMatch
availableModelsエントリがモデル ID とどのように一致するかを選択します。デフォルトでは、モデル ID エントリはそれを拡張する後のバージョンも許可するため、"claude-opus-5" は Opus 5.5 を許可します。"exact" では、各モデル ID エントリは名前を付けたバージョンのみを許可するため、そのモデルの新しいバージョンはリストに追加されるまでブロックされたままです。Claude Code v2.1.283 以降が必要です。
- スコープ:
管理。Claude Code はユーザー、プロジェクト、ローカル設定および--settingsのキーを無視し、警告を表示します - タイプ: 文字列、以下のいずれか:
"prefix": モデル ID エントリはそのバージョンと、別のセグメントで拡張するモデル ID を許可します"exact": モデル ID エントリは名前を付けたバージョンのみを許可します。日付付き ID を含むため、"claude-opus-5"は Opus 5 を許可しますがclaude-opus-5-5は許可しません。"opus"などのファミリーエイリアスは依然としてファミリー全体を許可し、best、opusplan、およびdefaultエントリは無視されます
- デフォルト:
"prefix"
managed-settings.json
"exact" では、リストが少なくとも 1 つのモデルまたはファミリーを名前付けするときはいつでも、Default オプションもリストされたモデルに制限されます。特定のモデルまたはバージョンをブロックを参照してください。
deniedModels
availableModels許可リストの有無にかかわらず、特定のモデルをブロックし、そのリストがそれらを許可する場合でもブロックします。Claude Code はブロックされたモデルを /model ピッカーから非表示にし、availableModels が強制される場所ではどこでもモデルを選択できません。Default オプションのセッションは、特定のモデルまたはバージョンをブロックで説明されているように、ブロックされたモデルも実行しません。Claude Code v2.1.283 以降が必要です。
- スコープ:
管理。Claude Code はユーザー、プロジェクト、ローカル設定および--settingsのキーを無視し、警告を表示します - タイプ: モデルエイリアスまたは ID の配列
"opus"などのファミリーエイリアスはそのファミリーのすべてのモデルをブロックします"claude-opus-5-5"などのモデル ID は、日付付きおよびプロバイダー固有の ID を含むすべてのスペルでそのバージョンをブロックします"claude-opus-5"などのマイナーバージョンなしのモデル ID は、Opus 5.5 などの後のマイナーバージョンもブロックします。Opus 5 のみをブロックするには"claude-opus-5-0"を記述しますbest、opusplan、およびdefaultエントリは無視されます
- デフォルト: 設定解除されているため、モデルはブロックされません
managed-settings.json
effortLevel
保存していないモデルのデフォルト努力レベルを設定します。低いレベルは単純なタスクではより高速で安価であり、高いレベルは複雑な問題でより深く推論します。
マシン上のインタラクティブセッションで /effort low、medium、high、または xhigh を実行すると、Claude Code はレベルをファイルを編集するのではなく modelSettingsの下のアクティブなモデルに保存します。v2.1.251 より前では、/effort はこのキーを書き込みました。
同じ設定ファイル内で、Claude Code はこのキーではなくモデルの保存されたレベルを使用します。modelSettingsはクロスファイルの優先順位を述べています。
リモートワーカーに接続されたセッション、-p 実行、および Agent SDK では、/effort はそのセッションのみに適用されます。努力レベルを調整はそのセッションのみに適用されるインタラクティブな選択肢もリストします。/effort が出力するメッセージは、どちらが起こったかを示します。
- スコープ:
任意のファイル - タイプ: 文字列、以下のいずれか:
"low": 最小限の推論。短く、スコープが限定され、レイテンシに敏感で、インテリジェンスに敏感ではないタスク用"medium": コスト敏感な作業のトークン使用量を削減します。インテリジェンスをいくらか取引できます"high": トークン使用量とインテリジェンスのバランスを取ります"xhigh": より高いトークン支出でより深い推論
- デフォルト: 設定解除されています
- セッションごとのオーバーライド:
--effortはこのキーより優先されます。CLAUDE_CODE_EFFORT_LEVELは両方より優先されます
settings.json
~/.claude/settings.json では、このキーは /effort が保存する前の古い形式です。モデルごとにレベルを保存し、以前に適用された場所に適用され続けます。Opus 5、Fable 5.1、および以前のモデルで。Opus 5.5 およびそれ以降にリリースされたモデルはそれを無視し、modelSettingsの下でレベルを保存するまで独自のデフォルトで開始します。これは /effort が書き込みます。プロジェクト、ローカル、管理設定、および --settings では、このキーはすべてのモデルに適用されます。
enforceAvailableModels
/model ピッカーにはDefaultオプションがあり、default モデル設定はそれが解決するモデルを説明します。availableModels許可リストは名前を付けることができるモデルを制限しますが、デフォルトプレフィックスマッチングでは、アカウントタイプのデフォルトを再マップしないため、Defaultはリスト外のモデルに解決できます。このキーはそのギャップを閉じます。Claude Code v2.1.175 以降が必要です。
組織が管理設定をデプロイすると、Claude Code はこのキーを管理ソースからのみ読み取り、他のファイルでは無視します。
起動時のモデルチェックにこのキーがどのように適用されるかについては、Amazon Bedrock および Google Cloud の Agent Platform を参照してください。
- スコープ:
任意のファイル - タイプ: ブール値
true: DefaultがavailableModels外のモデルに解決される場合、Claude Code はそれをリスト内の最初の利用可能なモデルに解決しますfalse: このキーはDefaultの解決方法を変更しません
- デフォルト:
false
settings.json
availableModels が設定解除されているか空の場合は効果がありません。Default モデルの許可リストを強制を参照してください。Claude Code v2.1.175 以降が必要です。
fallbackModel
プライマリモデルがオーバーロードされているか利用できない場合に、Claude Code が順番に試すバックアップモデルに名前を付けます。Claude Code はターンの残りの間、チェーン内の次の利用可能なモデルに切り替え、通知を表示します。チェーンがない場合、Claude Code は同じモデルを再試行してからサーバーのエラーを表示し、再試行するか自分でモデルを切り替えます。
切り替えは、フォールバックモデルでコールドプロンプトキャッシュを使用した 1 ターンを意味します。次のメッセージはプライマリモデルを最初に再度試します。
- スコープ:
任意のファイル - タイプ: モデルエイリアスまたは ID の配列。
"default"はデフォルトモデルに展開されます - デフォルト: 設定解除されているため、失敗したリクエストは別のモデルで再試行されません
- セッションごとのオーバーライド:
--fallback-modelはこのキーより優先されます
settings.json
["claude-sonnet-5"] を設定し、ユーザーファイルが ["claude-haiku-4-5"] を設定する場合、チェーンは ["claude-sonnet-5"] のみです。Claude Code はリストから最大 3 つの異なる許可されたモデルを保持し、残りを無視します。フォールバックモデルチェーンを参照してください。
fastMode
利用可能なセッションで高速モードをオンにします。高速反復やライブデバッグなどのインタラクティブな作業用で、トークンあたりのコストが高い速度が必要な場合。通常、このキーを手動で編集することはありません。/fast を実行すると fastMode: true が ~/.claude/settings.json に書き込まれ、再度実行すると高速モードをオフにするキーが削除されます。高速モードは Opus 5.5、Opus 5、および Opus 4.8 でのみ実行されます。別のモデルからオンにするとあなたを Opus に切り替え、サポートされていないモデルに切り替えるとオフになります。高速モードがオンの間にモデルを切り替えを参照してください。
- スコープ:
任意のファイル - タイプ: ブール値
true: Claude Code は利用可能なセッションで高速モードをオンにしますfalse: 高速モードはオフのままです
- デフォルト: 設定解除されているため、高速モードはオフです
- セッションごとのオーバーライド:
CLAUDE_CODE_DISABLE_FAST_MODEは 1 つのセッションで高速モードをオフにし、このキーはそれをオンに戻すことはできません
settings.json
fastModePerSessionOptIn
通常、/fast を実行すると fastModeがユーザー設定に保存されるため、高速モードは後のすべてのセッションの開始時にオンになります。このキーを true に設定して、それを停止します。保存された fastMode: true はセッション開始時に高速モードをオンにしなくなり、各ユーザーは必要な各セッションで /fast を実行する必要があります。Claude Code は fastMode キーをファイルに残すため、このキーをオフにすると古い動作が復元されます。
Team または Enterprise プランのオーナーは、サーバー管理設定を通じて組織全体にデプロイできます。管理設定がキーを設定すると、/fast on はインタラクティブターミナルセッション外で拒否され、組織が高速モードを無効にしたことを報告します。これは非インタラクティブモード、VS Code 拡張機能、およびクラウドセッションをカバーします。
- スコープ:
任意のファイル - タイプ: ブール値
true: 保存されたfastMode: trueはセッション開始時に高速モードをオンにしなくなるため、各ユーザーは必要な各セッションで/fastを実行します。--settingsで渡されたfastMode: trueは、管理設定がこのキーを設定しない限り、そのセッションでもカウントされますfalse: 保存されたfastMode: trueは後のすべてのセッションの開始時に高速モードをオンにします
- デフォルト:
false
settings.json
language
Claude がデフォルトで英語以外の言語で応答するようにします。応答の固定リストはありません。Claude Code は値を Claude に逐語的に、常にその言語で応答するという指示として渡すため、Claude が読むことができる言語名は機能します。Claude Code は値をチェックしないため、スペルが間違った名前はエラーを生成するのではなく、書かれたとおりに Claude に到達します。同じ値は音声ディクテーションの言語を設定します。これはサポートされているディクテーション言語の固定リストを持ち、自動生成されたセッションタイトルも設定します。
- スコープ:
任意のファイル - タイプ: 文字列、
"japanese"、"spanish"、"french"などの言語名。Claude Code はそれを検証しません - デフォルト: 設定解除されています。セッションタイトルは会話の言語と一致します
settings.json
maxEffortLevel
セッションが使用できる努力レベルをキャップし、低いレベルを利用可能なままにします。より高いレベルはキャップで実行されます。/effort、/model ピッカー、--effort、CLAUDE_CODE_EFFORT_LEVEL、スキルまたはサブエージェントの effort frontmatter、またはモデル自体のデフォルトから。Claude Code はリクエストの前にキャップ自体を適用するため、Amazon Bedrock、Google Cloud の Agent Platform、Microsoft Foundry を含むすべてのプロバイダーで保持されます。Claude Code v2.1.267 以降が必要です。
- スコープ:
任意のファイル。組織に対して強制するために、管理設定にデプロイします。複数のスコープがキャップを設定する場合、最も低いものが適用されるため、1 つのスコープで設定されたキャップを別のスコープから上げることはできません - タイプ: 文字列、
"low"、"medium"、"high"、"xhigh"、または"max"のいずれか。"max"値はキャップを設定しません - デフォルト: 設定解除されているため、キャップは適用されません
- モデルごとのキャップ: モデルの
modelSettingsエントリにmaxEffortLevelを追加します。そのエントリは、ユーザー設定や 1 つの管理ソースなど、両方を設定する設定ソース内でのみこのキーを置き換えます。そこで"max"を設定して、そのソースのキャップからモデルを除外します。Claude Code は他のソースからのキャップを依然として適用します
medium でキャップし、Sonnet 4.6 を除外します:
settings.json
model
すべての新しいセッションが使用するモデルを設定するため、毎回 /model で 1 つを選択する必要はありません。ここで設定してもセッション中に切り替えることは止まりません。管理者が組織デフォルトモデルを設定してユーザー選択をオーバーライドした場合、ユーザー、プロジェクト、またはローカル設定でこのキーを設定しても、そのモデルを取得します。
- スコープ:
任意のファイル - タイプ: 文字列、モデルエイリアスまたは完全なモデル ID
- デフォルト: 設定解除されているため、Claude Code はアカウントのデフォルトモデルを使用します
- セッションごとのオーバーライド:
--modelはANTHROPIC_MODELより優先され、両方は 1 つのセッションでこのキーより優先されます。管理modelを含む。availableModelsリストは依然として選択に適用されます
settings.json
ANTHROPIC_DEFAULT_MODELをランク付けし、Claude Code は他に何もモデルを選択しない場合にのみ使用します。
modelOverrides
Anthropic モデル ID をプロバイダー固有のモデル ID (Amazon Bedrock 推論プロファイル ARN など)にマップします。各モデルピッカーエントリは、プロバイダー API を呼び出すときにマップされた値を使用します。管理者はAmazon Bedrock、Google Cloud の Agent Platform、Microsoft Foundryでこれを使用して、各モデルバージョンを特定の推論プロファイル、バージョン名、またはガバナンス、コスト配分、または地域ルーティングのためのデプロイメントにルーティングします。
- スコープ:
任意のファイル - タイプ: モデル ID をプロバイダーモデル ID にマップするオブジェクト
- デフォルト: 設定解除されています
settings.json
modelPicker
/model ピッカーが提供するモデルを、書き込む順序で、選択するラベルの下にリストします。ピッカーは組織が実行するモデルをリストします。組み込みラインアップの後または代わりに。各行の model は逐語的に取得されるため、--model が受け入れるもの、opus などのエイリアス、Anthropic モデル ID、または Amazon Bedrock、Google Cloud の Agent Platform、Microsoft Foundry、または LLM ゲートウェイのプロバイダー形式 ID を受け入れます。Claude Code v2.1.242 以降が必要です。
- スコープ:
ユーザーまたは管理。Claude Code は管理設定、--settings、およびユーザー設定からキーを読み取り、プロジェクトおよびローカル設定では無視するため、クローンするリポジトリはピッカーを再ラベルできません。これら 3 つの最も高いものがキーを設定すると、ラインアップ全体が供給され、Claude Code は 2 つのソースからラインアップをマージしません。 - タイプ:
options配列と行とオプションのreplaceBuiltInOptionsブール値を持つオブジェクト - デフォルト: 設定解除されているため、ピッカーは組み込みラインアップを表示します
managed-settings.json
modelPicker のフィールド
キーは 2 つのフィールドを取ります。1 つは行自体用で、もう 1 つは組み込みラインアップを置き換えるか追加するかです。
options のエントリは、その model の横にオプションの behavesAs 文字列を持つこともできます。これには v2.1.257 以降が必要です。Claude Code バージョンが既に知っている claude-opus-4-8 などのモデルの ID に設定します。model が バージョンより新しいエントリで。Claude Code はそれ以降、既知のモデルの機能と努力デフォルトをエントリに適用し、そのモデルを不明として扱いません。エントリのラベルと Claude Code がリクエストで送信するモデル ID は変わりません。
replaceBuiltInOptions がオンの場合、Claude Code はすべての他の行を非表示にします。組み込みラインアップ、availableModelsエントリ用に追加する行、ゲートウェイディスカバリーが見つけたモデル、および ANTHROPIC_CUSTOM_MODEL_OPTION。オフの場合、Claude Code は組み込みラインアップが既にカバーするリストされたモデルをスキップします。ラベルはピッカーが表示するものを変更し、Claude Code が実行するモデルではありません。
availableModels許可リストはこれらの行に依然として適用されます。リストされたモデルを許可リストに追加する前に、マージ動作を読んでください。特定のモデル ID はそのファミリーのワイルドカード エントリを絞ります。Claude Code はピッカーを表示する前に各行をセッションに対してチェックします:
- 削除: Claude Code が提供できない行。廃止されたモデルや組織がアクセスできないモデルなど
- グレーアウト: まだ選択できない行。理由を示して表示されます
- 行が生き残らない: Claude Code は通常どおり許可リストでフィルタリングされた組み込みラインアップを保持します
modelPricing
組織が支払うレートでリスト価格の代わりに支出を報告します。組織が契約レートを持っている場合に設定するため、開発者が見るドル数字は請求書と一致します。Claude Code は /usage、ステータスライン、Agent SDK の total_cost_usd、--max-budget-usd制限、およびOpenTelemetryコストメトリックとイベントのレートを適用します。レートを供給します。Claude Code は契約またはClaude Console から読み取りません。Claude Code v2.1.242 以降が必要です。
- スコープ:
管理。サーバー管理設定、MDM ポリシー、managed-settings.jsonファイル、またはポリシーヘルパーを通じてキーをデプロイします。Claude Code はユーザー、プロジェクト、ローカル設定、--settings、および Windows のユーザー書き込み可能なHKCU レジストリでは無視します。サーバー管理設定では、各セッションはそのセッションの設定フェッチが設定を確認するまでリスト価格でコストを報告します。Claude Code を埋め込み、CLAUDE_CODE_PROVIDER_MANAGED_BY_HOSTを設定するホストアプリケーションは、SDKmanagedSettingsオプションを通じて独自のテーブルを供給でき、Claude Code はマネージドソースがキーを設定しない場合にのみ使用し、Claude Code v2.1.246 以降でのみ使用します。 - タイプ: オプションの
multiplierとオプションのoverridesマップを持つオブジェクト - デフォルト: 設定解除されているため、Claude Code はリスト価格を報告します。ホストアプリケーションがテーブルを供給しない限り
multiplier のみを設定して定額割引またはマークアップ、overrides のみをモデルごとのレート、または両方を設定します。
この例は Sonnet 4.6 の契約レートを設定し、すべての数字を 15% 削減します。Sonnet 行を含む:
managed-settings.json
multiplier を設定します。マークアップには Claude Code v2.1.271 以降が必要です。以前のバージョンは警告付きで 1 より上の multiplier を無視し、設定の残りを保持します。
手順を含む、レートが有効であることを確認する方法については、契約レートで支出を報告を参照してください。
modelPricing のフィールド
Claude Code はレートを書き込んだとおりに使用し、高速モード割増料金またはUS のみの推論レートを追加しません。
multiplier も設定する場合、Claude Code はそれを行のレートの上に適用します。Claude Code は解析できないレートを持つ行、または解析できない multiplier を削除し、残りを保持します。壊れた設定ファイルを修正を参照してください。
どのモデルが modelPricing 行に適用されるか
Claude Code は行のキーから行が適用されるモデルを決定します:
- 組み込みモデルの ID: Claude Code 自体がモデルの独自の ID (例:
claude-sonnet-4-6) またはその Bedrock、Agent Platform、または Foundry ID であるかどうかに関わらず、組み込みモデルに使用するキー。Claude Code はそのモデルのすべての日付スナップショット ID とプロバイダー固有の ID に行を適用します。 - その他のキー: 組み込みモデルの ID ではないキー。ゲートウェイモデルエイリアスなど。Claude Code はそのキーのみに行を適用します。モデル ID がキーの 1 つと正確に一致し、組み込みモデルの ID でキーされた行の下にも該当する場合、Claude Code は正確な一致を使用します。
- Bedrock アプリケーション推論プロファイル: Claude Code がプロファイルを
modelOverridesマップまたはbedrock:GetInferenceProfileルックアップを通じてルーティングするモデルに解決した後、Claude Code はそのモデルの行をプロファイルに適用します。
modelSettings
使用する各モデルの努力レベルを保存します。Claude Code v2.1.251 以降が必要です。
マシン上のインタラクティブセッションで、/effort または /model ピッカーの努力スライダーで low、medium、high、または xhigh をデフォルトとして保存すると、Claude Code はそれを使用しているモデルの下にここにそのレベルを書き込むため、このキーを自分で編集することはめったにありません。VS Code 拡張機能のモデルピッカーでこれらのレベルのいずれかを選択すると、Claude Code は同じ方法でここに保存します。effortLevelエントリは /effort がそのセッションのみに適用されるセッションをリストします。
レベルを変更または削除するには、キーを手動で編集します。
ここで指定するモデルの effortLevel は、同じ設定ファイルの最上位 effortLevelより優先されます。ファイル間では、Claude Code は各モデルを個別に解決します。そのモデルの effortLevel またはそのモデルに適用される最上位 effortLevel のいずれかを設定する最も優先度の高い設定ファイルが決定するため、管理設定の effortLevel はユーザー設定で保存されたレベルより優先されます。努力レベルを調整は、起動時の --effort など、保存されたレベルをオーバーライドできるその他のものをリストします。
1 つのモデルの努力レベルを設定するのではなくキャップするには、そのモデルのエントリに maxEffortLevelフィールドを追加します。フィールドには Claude Code v2.1.267 以降が必要です。
- スコープ:
任意のファイル - タイプ: モデル名を、以下のいずれかのフィールドを持つオブジェクトにマッピングするオブジェクト:
effortLevel:"low"、"medium"、"high"、"xhigh"のいずれかmaxEffortLevel: モデルが実行できる最も高い effort レベルautoCompactWindow:100000から1000000までのトークン数、またはモデルに合わせて調整されたウィンドウを使う"auto"。/autocompactはここに保存します。そのモデルについては、この値が同じ設定ファイル内の最上位のautoCompactWindowより優先されます。Claude Code v2.1.288 以降が必要です
- デフォルト: 設定解除されています
claude-opus-5-5 などのモデルの正規名の下に書き込み、そのモデルのエイリアス、日付サフィックス、[1m]、および認識されたプロバイダー固有の ID を同じエントリと一致させます。
この例は Opus 5.5 を high に保ちながら、他のモデルは独自の保存またはデフォルトレベルを使用します:
settings.json
/effort auto を実行して、使用しているモデルの保存されたレベルをクリアします。Claude Code は他のエントリと最上位の effortLevel をそのままにします。
outputStyle
出力スタイルを名前で選択します。出力スタイルは、Claude の役割、トーン、出力形式を変更する保存された指示のセットです。組み込みの Explanatory および Learning スタイルや自分で書いたものなど。
セッション中にこのキーを変更すると、Claude は次のメッセージから新しいスタイルを使用します。そのメッセージがプロンプトキャッシュでコストするものについては、出力スタイルを変更を参照してください。v2.1.251 より前では、編集は /clear を実行した後またはセッションを開始した後にのみ適用されました。
この例は、タスク間に教育的な洞察を追加する組み込みの Explanatory スタイルを選択します:
settings.json
promptCacheTtl
プロンプトキャッシュがメイン会話を保持する期間を選択します。このキーはインタラクティブ、-p、および Agent SDK ターンに適用されます。Claude Code がインラインで実行するヘルパーと一緒に。1 時間のライフタイムはより長い休憩全体でキャッシュを温かく保ち、API は各キャッシュ書き込みを 5 分のライフタイムより高いレートで請求します。Claude Code v2.1.242 以降が必要です。
- スコープ:
任意のファイル - タイプ: 文字列、以下のいずれか:
"5m": キャッシュは 5 分間保持されます"1h": キャッシュは 1 時間保持されます
- デフォルト: 設定解除されているため、各メイン会話リクエストはそのデフォルトライフタイムを取得します
- セッションごとのオーバーライド:
FORCE_PROMPT_CACHING_5Mはすべてを優先し、次にCLAUDE_CODE_PROMPT_CACHE_TTL、次にこのキー、最後にENABLE_PROMPT_CACHING_1H
settings.json
showThinkingSummaries
インタラクティブセッションで Claude の拡張思考の概要を参照してください。Ctrl+O で思考を展開するときに完全な概要が必要な場合に設定します。設定解除または false の場合、Anthropic API は思考ブロックを編集し、Claude Code は折りたたまれたスタブを表示します。サードパーティプロバイダーは編集しません。
- スコープ:
任意のファイル - タイプ: ブール値
true:Ctrl+Oで思考を展開するときに完全な思考概要が表示されますfalse: Anthropic API は思考ブロックを編集し、Claude Code は折りたたまれたスタブを表示します
- デフォルト:
false
settings.json
subagentPromptCacheTtl
プロンプトキャッシュがメイン会話外で Claude Code が行うリクエストを保持する期間を選択します。このキーはサブエージェント、ワークフロー、および Claude Code 独自のバックグラウンドおよびヘルパーリクエスト (圧縮やセッションタイトルなど)に適用されます。1 時間のライフタイムはより長い休憩全体でキャッシュを温かく保ち、API は各キャッシュ書き込みを 5 分のライフタイムより高いレートで請求します。Claude Code v2.1.242 以降が必要です。
- スコープ:
任意のファイル - タイプ: 文字列、以下のいずれか:
"5m": キャッシュは 5 分間保持されます"1h": キャッシュは 1 時間保持されます
- デフォルト: 設定解除されているため、これらの各リクエストはそのデフォルトライフタイムを取得します
- セッションごとのオーバーライド:
FORCE_PROMPT_CACHING_5Mはすべてを優先し、次にCLAUDE_CODE_SUBAGENT_PROMPT_CACHE_TTL、次にこのキー、次にENABLE_PROMPT_CACHING_1H。サブエージェント独自の frontmatter 値がランク付けされる場所については、TTL を自分で選択を参照してください
settings.json
promptCacheTtlがカバーしないリクエストをカバーするため、Claude Code が行うすべてのリクエストのライフタイムを選択するには両方を設定します。サブエージェントのキャッシュがメイン会話のキャッシュとどのように異なるかについては、サブエージェントとキャッシュを参照してください。
switchModelsOnFlag
安全分類器がリクエストにフラグを立てた場合に何が起こるかを選択します。フォールバックモデルに切り替えて続行するか、切り替えるかプロンプトを編集するかを選択できるように一時停止します。
- スコープ:
任意のファイル。/configにメッセージがフラグされたときにモデルを切り替えとして表示されます。 - タイプ: ブール値
true: Claude Code はフォールバックモデルに切り替えて続行しますfalse: インタラクティブセッションで Claude Code は一時停止して、切り替えるかプロンプトを編集するかを選択できます。ダイアログが表示できない場所 (-p実行など)では、フラグされたリクエストはエラーで終了します
- デフォルト:
true。自動的に切り替え
settings.json
ultracode
セッションをultracodeでオンで開始します。オンの場合、Claude は、あなたが尋ねるのを待つのではなく、各実質的なタスクのワークフローを計画します。Claude は動的ワークフローが有効になっており、モデルが xhigh 努力をサポートする場合にのみワークフローを計画します。キーはセッションの努力レベルを変更しません。ultracode はセッションが使用するレベルで実行されます。Claude Code はこのキーを読み取りますが、決して書き込みません。/effort ultracode は現在のセッションのみで ultracode をオンにします。
- スコープ:
任意のファイル - タイプ: ブール値
true: 動的ワークフローが有効になっており、モデルがxhighをサポートする場合、セッションは ultracode でオンで開始されますfalse: セッションは ultracode でオフで開始されます
- デフォルト: 設定解除されているため、ultracode はオフです
- セッションごとのオーバーライド:
/effort ultracodeはこのキーなしで 1 つのセッションで ultracode をオンにし、/effort ultracode offはこのキーがtrueの場合、1 つのセッションでそれをオフにします。--effort ultracodeフラグも 1 つのセッションでそれをオンにし、xhigh努力で、Claude Code v2.1.203 以降が必要です
settings.json
effortLevel、modelSettings、および他の努力ソースから来ます。maxEffortLevelなどの努力キャップはそのレベルを低下させますが、ultracode をオフにしません。これと /effort ultracode off フォームには Claude Code v2.1.284 以降が必要です。v2.1.284 より前では、ultracode: true はセッションを xhigh 努力で実行し、xhigh より下の努力キャップは ultracode をオフに保ちました。Agent SDK apply_flag_settings コントロールリクエストもキーを受け入れます。
権限設定
Claude が何を確認なしで実行できるか、セッションがどの権限モードで開始するか、auto モードの分類器が何を許可するかを決定します。ルール構文と権限モデルについては、権限を設定するを参照してください。allowManagedPermissionRulesOnly
管理設定を権限ルールの唯一の設定ソースにします。Claude Code はユーザー、プロジェクト、ローカル、および --settings ファイル内の allow、ask、deny ルールを無視し、--allowedTools を無視し、権限プロンプトで常に許可する選択肢を非表示にし、新しいルールの保存を停止します。
埋め込みホストからの親設定が適用される場合、Claude Code はそれらを管理層の一部として扱います。それらの allow ルールと additionalDirectories を削除し、deny および ask ルールは保持します。ただし、パターンが ! で始まる Read および Edit ルールは除きます。このキーを設定しているかどうかに関わらず、ホストは ! ルールで管理ルールからパスを除外することはできません。
--disallowedTools ルールと現在のセッションの deny および ask ルールは、Claude Code が設定をセッション中に再度読み込んだ後を含めて、引き続き適用されます。これらは制限のみを行うため、管理ルールが付与するものを拡大することはできません。v2.1.257 より前では、Claude Code は最初の設定再度読み込み時にそれらのコマンドラインおよびセッションルールを削除していました。
--disallowedTools またはセッションルール内の ! パターンが除外できるものについては、Read および Edit ルールを参照してください。
このキーを設定すると、Claude Code v2.1.282 以降では、次のソースにあるスキルおよび .claude/commands/ ファイルの allowed-tools フロントマターも無視されます。
- リポジトリの
.claude/ディレクトリ ~/.claude/skills/および~/.claude/commands/ディレクトリ(claude.ai から同期されたスキルを含む)--add-dirディレクトリ~/.claude/skills/またはプロジェクトの.claude/skills/内で.claude-pluginマニフェストにより宣言されたプラグイン
allowed-tools を保持します。スキルの disallowed-tools は引き続き適用されます。Claude Code がこのフィールドを無視したときに開発者に何が表示されるかについては、管理権限ルールのみが適用される場合を参照してください。
- スコープ:
Managed - タイプ: ブール値
true: 管理設定が権限ルールの唯一の設定ソースになりますfalse: Claude Code は管理ルールに加えて、ユーザー、プロジェクト、ローカル、および--settingsファイルから権限ルールを適用します
- デフォルト: 未設定。Claude Code はユーザー、プロジェクト、ローカル設定、および
--settingsから権限ルールを管理ルールに加えて適用します
managed-settings.json
allowManagedMcpServersOnlyを設定してください。管理のみの設定を参照してください。
autoMode
auto モードの分類器がブロックおよび許可するものに独自のルールを追加します。これを使用して、分類器に組織が信頼するリポジトリ、バケット、ドメインを伝え、日常的な内部操作のブロックを停止させます。分類器には組み込みの許可および拒否ルールが付属しています。リテラル文字列 "$defaults" を配列に含めて、それらの組み込みルールをその位置に保持し、その周りに独自のルールを追加します。省略すると、それらを独自のルールに置き換えます。
- スコープ:
User or managed - タイプ:
environment、allow、soft_deny、hard_denyの散文ルール配列、およびclassifyAllShellブール値を含むオブジェクト - デフォルト: 未設定。分類器は組み込みルールのみを使用します
"$defaults" を通じて組み込みの soft_deny ルールを保持し、terraform apply をブロックするルールを 1 つ追加します。
settings.json
autoMode.classifyAllShell
auto モードがアクティブな間、すべての Bash および PowerShell コマンドを auto モードの分類器に通します。デフォルトでは、auto モードは任意のコードを実行できる許可ルールのみを一時停止します。具体的には、Bash(*) などのツール全体およびワイルドカードのルールと、Bash(python *) などのインタープリタまたはシェルラッパーのプレフィックスです。Bash(npm test) など、それ以外の許可ルールに一致するコマンドは、コマンドごとの許可ドメインを持たない限り分類器をスキップします。スキップした場合、ルールのプレフィックスが想定していなかった破壊的な引数が見過ごされたまま通過する可能性があります。このキーを設定すると、セッションのすべてのシェル許可ルールが一時停止され、分類器がすべてのコマンドを確認します。Claude Code v2.1.193 以降が必要です。
- スコープ:
User or managed。autoModeが読み取られる場所で読み取られます。 - タイプ: ブール値
true: auto モードがアクティブな間、Claude Code はすべての Bash および PowerShell コマンドを分類器に通し、シェル許可ルールを一時停止します。auto モード外では、ルールは引き続き適用されますfalse: auto モードはBash(*)やBash(python *)など、任意のコードを実行できる許可ルールのみを一時停止します。それ以外の許可ルールに一致するコマンドは、コマンドごとの許可ドメインを持たない限り分類器をスキップし、その他すべてのシェルコマンドは分類器を通ります
- デフォルト:
false
settings.json
disableAutoMode
auto モードを Shift+Tab サイクルから削除します。--permission-mode auto、設定ファイル、または組み込みデフォルトからauto モードで開始する可能性があるセッションは、代わりに default で開始します。管理者は管理設定で設定して、組織内の開発者が auto モードを使用するのを防ぎます。
- スコープ:
Any file。管理設定で最も有用です。ユーザーはそれを上書きできません。permissionsの下でpermissions.disableAutoModeとしても受け入れられます。 - タイプ: 文字列
"disable" - デフォルト: 未設定
settings.json
permissions
Claude が確認なしで使用できるツール、常にプロンプトを表示するツール、ブロックされるツールを制御し、セッションが開始する権限モードを設定します。以下のすべての permissions.* キーはこのオブジェクトの下にネストされます。
- スコープ:
Any file - タイプ:
allow、ask、deny、additionalDirectories、blockReadsOutsideWorkingDirectories、defaultMode、disableBypassPermissionsMode、disableAutoModeを含むオブジェクト - デフォルト: 未設定
npm run コマンドを確認なしで承認し、git push の前にプロンプトを表示し、.env の読み取りをブロックし、セッションを acceptEdits で開始します。
settings.json
permissions.allow の下の権限ルール構文を参照してください。異なるファイルからの権限ルールがどのように結合されるかについては、スコープ全体での権限ルールのマージ方法を参照してください。一般的に設定キーがどのように結合されるかについては、設定ガイドの設定の優先順位を参照してください。
useAutoModeDuringPlan
Claude Code が plan モード中にシェルコマンドを確認するために auto モードの分類器を使用するかどうかを選択します。デフォルトの true では、auto モードが利用可能な場合、分類器は計画中に各コマンドを確認し、プロンプトは表示されません。ただし、重要パスの削除を除きます。false に設定すると、組み込みの読み取り専用セット外のすべてのコマンドに対して権限プロンプトが表示されます。/config にプラン中に auto モードを使用として表示されます。
- スコープ:
User, local, or managed。リポジトリがこれをオフにすることはできません。 - タイプ: ブール値
true: 未設定と同じです。auto モードが利用可能な場合、分類器は計画中に各シェルコマンドを確認し、プロンプトを表示しません。ただし、重要パスの削除を除きます。これらのファイルのいずれかでfalseが設定されていれば、引き続きオフになりますfalse: 組み込みの読み取り専用セット外のすべてのコマンドに対して権限プロンプトが表示されます
- デフォルト:
true
settings.json
permissions.allow
Claude Code が確認なしで承認するツール使用をリストします。MCP ルールでは、* はツール名内の mcp__<server>__ プレフィックスの後にのみ使用できます(例:mcp__github__get_*)。サーバー名には使用できません。
- スコープ:
Any file - タイプ: 権限ルール文字列の配列
- デフォルト: 未設定
- セッションごとの上書き:
--allowedToolsは 1 つのセッションに許可ルールを追加しますが、任意の設定ファイルからの拒否ルールは、それが指定するツールを引き続きブロックします
git diff を承認し、Claude Code が確認なしに .zshrc を読み取ることを許可します。
settings.json
.claude/settings.json から allow ルールを適用するのは、そのフォルダのワークスペース信頼ダイアログを受け入れた後のみです。
権限ルール構文
権限ルールはTool または Tool(specifier) の形式に従います。Claude Code は deny ルールを最初に評価し、次に ask、次に allow を評価し、各ルールの具体性に関係なく最初に一致したものが結果を決定します。権限ルール評価順序を参照してください。
各行は 1 つのルール形状とそれが一致するものを示します。
ワイルドカード動作、Read、Edit、WebFetch、MCP、Agent ルールのツール固有パターン、および Bash パターンのセキュリティ制限を含む完全なルール構文については、権限ルール構文を参照してください。
permissions.ask
acceptEdits や bypassPermissions など、本来であれば承認される権限モードであっても確認を求めるツール使用をリストします。dontAsk モードでは、Claude Code は一致するツール使用に対してプロンプトを表示する代わりに拒否します。
- スコープ:
Any file - タイプ: 権限ルール文字列の配列
- デフォルト: 未設定
settings.json
permissions.deny
Claude Code がブロックするツール使用をリストします。API キー、シークレット、または環境値を保持するファイルに使用します。Claude Code は一致するファイルをファイル検出と検索結果から除外し、それらの読み取りを拒否し、一致するパスのEdit および Write ツールをブロックします。
Read および Edit 拒否ルールは Claude の組み込みファイルツール、Claude Code が Bash で認識するファイルコマンド(cat、head、tail、sed、tee など)、および > file や < file などの Bash リダイレクションのターゲットに適用されます。ファイル名を指定せずにファイルを読み取るコマンド(grep -r pattern . など)や任意のサブプロセスには適用されないため、OS レベルで強制するにはサンドボックスを有効にしてください。
- スコープ:
Any file - タイプ: 権限ルール文字列の配列
- デフォルト: 未設定
- セッションごとの上書き:
--disallowedToolsはこのキーと並行して 1 つのセッションに拒否ルールを追加します
.env ファイル、secrets ディレクトリ、認証情報ファイルの読み取りを拒否し、curl コマンドをブロックします。
settings.json
"*" はすべてのツールを拒否し、"mcp__*" はすべての MCP ツールを拒否します。Claude Code は、他のツールがまだ Claude で利用可能である限り、EndConversationツールの拒否ルールを無視します。Bash 拒否ルールは Claude が書いたコマンドと一致するため、Bash(curl *) は /usr/bin/curl や sh -c 'curl …' を停止しません。Bash ルールが一致しないものを参照してください。このキーは非推奨の ignorePatterns 設定に置き換わるものです。
permissions.additionalDirectories
Claude に開始したディレクトリ外のディレクトリへのファイルアクセスを付与し、追加の作業ディレクトリとして使用します。ほとんどの .claude/ 設定は、これらのディレクトリから検出されません。
- スコープ:
Any file。ただし、プロジェクトおよびローカルのエントリが付与するサンドボックスの書き込みアクセスには制限があります - タイプ: ディレクトリパスの配列
- デフォルト: 未設定
- セッションごとの上書き:
--add-dirおよび/add-dirはこのキーと並行して 1 つのセッションにディレクトリを追加します
settings.json
allow ルールと同様に、プロジェクトの .claude/settings.json のエントリは、そのフォルダのワークスペース信頼ダイアログを受け入れた後にのみ有効になります。
permissions.blockReadsOutsideWorkingDirectories
bypassPermissions を含むすべての権限モードで、Claude のファイルツールが作業ディレクトリ外の読み取りを拒否するようにします。Claude Code はそれらのパスに対する Read、Grep、Glob、LSP の呼び出しを拒否し、/add-dir でディレクトリを追加するようユーザーに求めるよう Claude に指示します。Claude Code 自体が必要とするファイル(~/.claude/ の下のスキル、プラグイン、ルール、エージェント、コマンド、CLAUDE.md メモリファイルなど)は読み取り可能なままです。Claude Code v2.1.257 以降が必要です。
Claude Code はシェルコマンドを同じ方法では拒否しません。
- どのモードでも自動承認されないアクションでは、そのようなパスを読み取るシェルコマンドがいつプロンプトを表示するかを説明しています
- ブロック下のサンドボックス化されたコマンドでは、サンドボックス化されたコマンドが何を読み取れるかを説明しています
bypassPermissions モードでもプロンプトを表示します。プロンプトは、コマンドが作業ディレクトリ外のパスを指定していない場合でも表示されます。このプロンプトは、コマンドがサンドボックスで実行され、サンドボックスがブロックを強制する場合には適用されません。
また、作業ディレクトリ外の最初の読み取り前に表示される auto モードのプロンプトでそのような読み取りをブロックすることを選択した場合も、Claude Code はここに true を書き込みます。
- スコープ:
Any file。いずれかのファイルのtrueが適用されるため、リポジトリは自身に対してブロックをオンにできますが、ユーザーが設定したブロックを解除することはできません。 - タイプ: ブール値
true: Claude のファイルツールは作業ディレクトリ外の読み取りを拒否しますfalse: 未設定と同じです。別のファイルがtrueを設定している場合、ブロックは引き続き適用されます
- デフォルト: 未設定。作業ディレクトリ外の読み取りは権限モードに従います
settings.json
--add-dir、/add-dir、またはユーザー設定や管理設定の additionalDirectories で追加したディレクトリは、ブロックにおいて作業ディレクトリとしてカウントされます。リポジトリ設定でのみ追加されたディレクトリはカウントされません。該当するのは .claude/settings.json のディレクトリと、git がそのファイルを未追跡として報告する場合を除く .claude/settings.local.json のディレクトリです。git リポジトリではないディレクトリ、または git がそのファイルを追跡している場合、Claude Code は .claude/settings.local.json をリポジトリ設定として扱うため、読み取り可能にしておきたいディレクトリは代わりにユーザー設定に配置してください。
autoMemoryDirectoryがプロジェクトの .claude/settings.json から、またはリポジトリ提供として扱われる.claude/settings.local.json から来る場合、Claude Code はそのディレクトリから自動メモリを読み込まず、そこに保存もしません。
ブロックを解除するには、それを設定しているすべての設定ファイルからキーを削除し、新しいセッションを開始します。
ブロック下のサンドボックス化されたコマンド
サンドボックス化がオンの場合、ブロックはサンドボックス化されたコマンドにも適用されます。Claude Code はホームディレクトリおよびユーザーファイルを保持する他のルート(/Users、/home、/root、/Volumes、/mnt、/media、/run/media、/srv)への読み取りアクセスを拒否します。その後、作業ディレクトリ、Claude Code がセッション中に作成する worktree、セッションの一時ディレクトリ、およびコマンドが必要とする ~/.claude の部分(スキルやプラグインなど)を再度開きます。ブロックが有効な間、リポジトリ設定からの allowRead および allowWrite エントリはカウントされません。
セッションの作業ディレクトリがリンクされた git worktree である場合(Claude Code がセッション中に入ったものを含む)、リポジトリの共通 .git ディレクトリはサンドボックス化されたコマンドに対して読み取り可能および書き込み可能なままなので、git はそこで引き続き機能します。
次の場合、ブロックはサンドボックス化されたコマンドには及びませんが、Claude のファイルツールは引き続きそれを強制します。
- ファイルシステム分離が
sandbox.filesystem.disabledによってオフになっている allowManagedReadPathsOnlyが設定されている- Claude Code を開始したディレクトリのパスに
*、?、[などのグロブ文字が含まれている
git はユーザーのアイデンティティと設定を保持します。
~/.gitconfig$XDG_CONFIG_HOME/gitの下のconfig、ignore、attributesファイル(デフォルトは~/.config/git)- グローバル git 設定が
[include]、[includeIf]、core.excludesFile、core.attributesFileを通じて指定するファイル
git はそのファイルなしで実行されます。~/.git-credentials および $XDG_CONFIG_HOME/git/credentials はブロックされたままです。
再度開いたファイルがシークレット(http.extraHeader トークンなど)を保持する場合、そのパスを sandbox.filesystem.denyRead に追加してください。ファイルをカバーする denyRead エントリは、常にこの再度開く処理より優先されます。
permissions.defaultMode
新しいセッションが開始する権限モードを設定します。未設定のままにすると、セッションは使用しているサーフェスの組み込みデフォルトで開始します。
- スコープ:
Any file。autoおよびbypassPermissionsはプロジェクトまたはローカル設定からは有効にならないため、代わりに~/.claude/settings.jsonで設定してください。v2.1.257 より前では、bypassPermissionsは任意のファイルから有効になりました。VS Code 拡張機能が開始する会話の場合、Claude Code はユーザー、管理、および--settingsの値のみを読み取ります。 - タイプ: 文字列。次のいずれか:
"default": Claude Code は確認なしで読み取りのみを実行します"acceptEdits": Claude Code は確認なしでファイル編集とmkdirやmvなどの一般的なファイルシステムコマンドも実行します"plan": Claude Code は読み取りと計画を行いますが、計画を承認するまで編集をブロックします"auto": Claude Code は日常的なプロンプトなしで実行します。シェルコマンドやネットワークリクエストなどのアクションが実行される前に、バックグラウンドの分類器がそれらがユーザーのリクエストに沿っているかを確認します"dontAsk": Claude Code はプロンプトを表示するはずのすべての呼び出しを自動的に拒否します。読み取り、承認が不要な他のアクション、事前承認されたツールは引き続き実行されます"bypassPermissions": Claude Code はすべてを確認なしで実行します"manual":"default"のエイリアス
- デフォルト: 未設定
- セッションごとの上書き:
--permission-mode、およびbypassPermissionsに相当する--dangerously-skip-permissionsは、1 つのセッションにおいてこのキーより優先されます
settings.json
deny ルールは bypassPermissions を含むすべてのモードでブロックします。権限モードを参照してください。クラウドセッションでは、Claude Code はこのキーのうち acceptEdits、plan、default、auto のみを尊重します。VS Code 拡張機能が開始する会話については、拡張機能が開始権限モードとして読み取る設定を参照してください。
permissions.disableBypassPermissionsMode
誰も bypassPermissions モードに入れないようにします。Claude Code は --dangerously-skip-permissions フラグを拒否し、エージェント定義の permissionMode: bypassPermissions を無視するため、サブエージェントは親セッションの権限モードで実行されます。
- スコープ:
Any file。通常、組織のポリシーを強制するために管理設定で設定します。 - タイプ: 文字列
"disable" - デフォルト: 未設定
- セッションごとの上書き: このキーは
--dangerously-skip-permissionsより優先されます。キーが設定されている間、Claude Code はそのフラグを拒否します
settings.json
skipAutoPermissionPrompt
組み込みデフォルトによってセッションが auto モードで開始された場合ではなく、ユーザー自身の設定やモードセレクターなどを通じて初めて auto モードに入ったときに Claude Code が表示する、auto モードを説明する 1 回限りの通知をスキップします。Claude Code はその通知を 1 回表示した後、表示済みであることを記録するため、このキーは通知がまだ表示されていない場合にのみ意味を持ちます。
- スコープ:
User or managed。リポジトリがこれを設定することはできません。 - タイプ: ブール値
true: Claude Code は通知をスキップしますfalse: 未設定と同じです。これらのファイルのいずれかがtrueを設定しない限り、通知が 1 回表示されます
- デフォルト: 未設定。通知が 1 回表示されます
settings.json
skipDangerousModePermissionPrompt
--dangerously-skip-permissions からか defaultMode: "bypassPermissions" からかに関わらず、セッションが bypassPermissions モードに入る前に Claude Code が表示する確認ダイアログをスキップします。そのダイアログを一度受け入れると、Claude Code はユーザー設定のこのキーに true を書き込みます。
- スコープ:
User, local, or managed。信頼されていないリポジトリがダイアログをスキップさせることはできません。 - タイプ: ブール値
true: Claude Code はセッションがbypassPermissionsモードに入る前の確認ダイアログをスキップしますfalse: 未設定と同じです。これらのファイルのいずれかがtrueを設定しない限り、ダイアログが表示されます
- デフォルト: 未設定。ダイアログが表示されます
settings.json
サンドボックス設定
Claude が実行するコマンドをファイルシステム、ネットワーク、認証情報から分離します。サンドボックスの仕組みとプラットフォーム要件については、サンドボックスを参照してください。sandbox
サンドボックスを使用して、Claude が実行する Bash コマンドをファイルシステムとネットワークから分離します。enabled でサンドボックスをオンにしてから、filesystem、network、credentials サブオブジェクトを使用して、サンドボックス化されたコマンドが何にアクセスできるかを制限または拡大します。サンドボックスは macOS、Linux、WSL2 で実行されます。
- Scope:
Any file - Type:
enabled、failIfUnavailable、autoAllowBashIfSandboxed、excludedCommands、allowUnsandboxedCommands、enableWeakerNestedSandbox、enableWeakerNetworkIsolation、allowAppleEvents、bwrapPath、socatPath、ignoreViolations、ripgrepを含むオブジェクト、およびfilesystem、network、credentialsオブジェクト - Default: 未設定。Claude Code はサンドボックスなしでコマンドを実行します
docker をサンドボックスの外で実行し、2 つの追加の書き込みパスを開き、AWS 認証情報ファイルを非表示にし、GitHub と npm を事前に許可します:
settings.json
enabled や failIfUnavailable などのブール値キーを設定した場合、その値は開発者が設定したものをすべて上書きします。Claude Code は配列キーをセッションが読み込む設定スコープ全体でマージするため、開発者はエントリを追加できます。管理設定専用のロックについては、ポリシーの拡大を開発者に防止させるを参照してください。組織に対してサンドボックスを必須にするには、管理設定でサンドボックスを強制するを参照してください。
sandbox.enabled
Bash コマンドのサンドボックスをオンにします。/sandbox パネルでモードを選択すると、Claude Code はこのキーを現在のプロジェクトの .claude/settings.local.json に書き込みます。~/.claude/settings.json に設定して、すべてのプロジェクトをサンドボックス化します。
- Scope:
Any file(プロジェクト設定とローカル設定には制限あり) - Type: ブール値
true: Claude Code は Bash コマンドをサンドボックス化しますfalse: Bash コマンドはサンドボックスなしで実行されます
- Default:
false
settings.json
bubblewrap と socat が必要です。Linux と WSL2 をセットアップするを参照してください。サンドボックスが起動できない場合、failIfUnavailable も設定していない限り、Claude Code はコマンドをサンドボックスなしで実行します。
sandbox.failIfUnavailable
sandbox.enabled が true であるにもかかわらず、依存関係の不足やプラットフォームの非対応によりサンドボックスが起動できない場合に、Claude Code がスタートアップ時にエラーで終了するようにします。このキーがない場合、Claude Code はコマンドをサンドボックスなしで実行します。セキュリティゲートとしてサンドボックスを必須とする管理対象のデプロイでは、この設定を使用できます。
サンドボックスがサポートしていないプラットフォームでは、このキーがオンの場合、Claude Code は起動しません。管理設定でサンドボックスを強制するを参照してください。
- Scope:
Any file(プロジェクト設定とローカル設定には制限あり) - Type: ブール値
true:sandbox.enabledがtrueであるにもかかわらずサンドボックスが起動できない場合、Claude Code はスタートアップ時にエラーで終了しますfalse: サンドボックスが起動できない場合、Claude Code はコマンドをサンドボックスなしで実行します
- Default:
false
managed-settings.json
sandbox.autoAllowBashIfSandboxed
Claude Code がサンドボックス化された Bash コマンドを権限プロンプトなしで実行できるようにします。サンドボックスで実行できないコマンドは通常の権限フローを通過し、deny ルールと Bash(git push *) などのコンテンツスコープ付き ask ルールは引き続き適用されます。ベアの Bash ask ルールはサンドボックス化されたコマンドではスキップされます。これを false に設定して、サンドボックス化されたコマンドも通常の権限フローを通すようにします。これは /sandbox Mode タブが通常権限モードと呼ぶものです。
- Scope:
Any file - Type: ブール値
true: Claude Code はサンドボックス化された Bash コマンドを権限プロンプトなしで実行します。denyルールとコンテンツスコープ付きaskルールの対象です。CLAUDE_CODE_SUBPROCESS_ENV_SCRUBは自動許可をオフにしますfalse: サンドボックス化されたコマンドは通常の権限フローを通過するため、許可ルールと権限モードが決定します。/sandboxMode タブはこれを通常権限モードと呼びます
- Default:
true
settings.json
sandbox.excludedCommands
Claude Code がサンドボックスの外で実行するコマンド(サンドボックスで動作しないツールなど)に名前を付けます。各エントリは、Bash(...) 権限ルールの内容と同じ構文を使用します:正確なコマンド、docker * などのプレフィックス、またはワイルドカードパターン。ワイルドカードを含まないパターンは完全一致となるため、docker は引数なしの docker にのみ一致します。
エントリは、Bash 呼び出しのすべてのコマンドをカバーする場合にのみ、Bash 呼び出しをサンドボックスから外します。一部の呼び出し形式はそれでもサンドボックス化されたままです。docker * エントリだけでは、npm ci && docker build . をサンドボックスから外しません。
- Scope:
Any file(プロジェクト設定とローカル設定には制限あり) - Type: コマンドパターンの配列
- Default: 未設定。コマンドは除外されません
settings.json
sudo、eval、またはxargsで始まるコマンドcd、pushd、またはpopd(呼び出しのどこにでも出現)- コマンド置換、サブシェル、または
ifやforなどの制御フロー ブロック docker build . > build.logなど、ファイル記述子を複製するもの以外のリダイレクト(2>&1など)- 変数から来るコマンド名
- パス引数が絶対パスである、
~で始まる、または..セグメントを含むgit clone、git init、git worktree add、git worktree move、またはgit bundle create
cd build && docker compose up は docker * エントリの下でサンドボックス化されたままであり、cd エントリを追加してもそれは変わりません。git * エントリの下では、git clone <url> vendor/lib はサンドボックスの外で実行されますが、git clone <url> ~/tools はサンドボックス化されたままです。クローンは、宛先パスが指す場所に、実行可能なものを含む可能性のあるファイルツリー全体を書き込みます。
除外されたコマンドも通常の権限フローを通過します。除外は便宜的なものであり、セキュリティ境界ではありません。ツールが特定の場所にのみ書き込む必要がある場合は、filesystem.allowWrite を使えばサンドボックス化されたままにできます。
サンドボックスが管理者必須でない限り、セッションが読み込む設定スコープのエントリは 1 つのリストに結合されます。管理者必須の間、Claude Code は .claude/settings.json と .claude/settings.local.json のエントリを無視するため、クローンしたリポジトリがコマンドをサンドボックスの外に出すことはできません。管理設定、--settings、および ~/.claude/settings.json のエントリは引き続き適用され、このリストに対する管理設定専用のロックはありません。
sandbox.allowUnsandboxedCommands
サンドボックスによってブロックされた後、Claude が dangerouslyDisableSandbox パラメータを使用してコマンドをサンドボックスの外で再試行できるようにします。false の場合、Claude Code はそのパラメータを無視します。その結果、サンドボックスの実行中は、Claude が実行するコマンドは excludedCommands のエントリに一致しない限りサンドボックス化されます。/sandbox Overrides タブはその状態を厳密なサンドボックスモードとして表示します。管理設定で false にすると、その対象となる開発者に対して厳密なサンドボックスモードがオンになります。
- Scope:
Any file(プロジェクト設定とローカル設定には制限あり) - Type: ブール値
true: Claude がサンドボックスによってブロックされた後、dangerouslyDisableSandboxパラメータを使用してコマンドをサンドボックスの外で再試行できますfalse: Claude Code はそのパラメータを無視するため、サンドボックスの実行中は、Claude が実行するコマンドはexcludedCommandsのエントリに一致しない限りサンドボックス化されます
- Default:
true
managed-settings.json
--settings からの false は、サンドボックスを管理者必須にもします。ユーザー設定の false はプロジェクトの true よりも優先されますが、サンドボックスを管理者必須にはしません。プロジェクトの値よりも優先させるには Claude Code v2.1.285 以降が必要です。
サンドボックスなしの再試行を誰が承認するかは、権限モードと許可ルールによって決まります。サンドボックスなしの再試行エスケープハッチを参照してください。
! シェルモードプロンプトで自分で入力するコマンドがサンドボックス化されるときを確認するには、厳密なサンドボックスモードを参照してください。
sandbox.filesystem
サンドボックス化されたコマンドが読み取りおよび書き込みできるパスを制御します。デフォルトでは、作業ディレクトリ、ユーザーごとの一時ディレクトリ、--add-dir、/add-dir、または permissions.additionalDirectories で追加したディレクトリに書き込むことができ、認証情報ファイルを含むファイルシステムの残りの部分を読み取ることができます。4 つのパスリストで制限または拡大するか、disabled でファイルシステムレイヤーをオフにします。ファイルシステム分離のデフォルト境界を参照してください。
- Scope:
Any file - Type:
allowWrite、denyWrite、denyRead、allowRead配列を含むオブジェクト、およびallowManagedReadPathsOnlyとdisabledブール値 - Default: 未設定。デフォルトの読み取りおよび書き込み境界が適用されます
settings.json
kubectl、terraform、npm などのサンドボックス化されたコマンドが開始するすべてのサブプロセスに適用されます。Claude Code は権限ルールを同じリストに追加します:Edit 許可および拒否ルールを allowWrite および denyWrite に、Read 拒否ルールを denyRead に、WebFetch(domain:...) 許可および拒否ルールをnetworkドメインリストに追加します。
ロックが適用されない限り、Claude Code はセッションが読み込む設定ファイル全体でこれらのリストをマージします。allowManagedReadPathsOnlyは allowRead を管理設定からのエントリに制限し、allowManagedDomainsOnlyは許可されたドメインに対して同じことを行います。リポジトリロックは、リポジトリの設定ファイルからのエントリを除外します。
サンドボックスを設定するは、--setting-sources で除外するソースをカバーしています。セッション中にリストを編集すると、Claude Code は実行中のセッションに変更を適用します。
サンドボックスパスプレフィックス
allowWrite、denyWrite、denyRead、allowRead、および credentials.files のパスはプレフィックスで解決されます:
絶対パスの
//path プレフィックスも機能します。プロジェクト相対解決を期待して単一スラッシュ /path を使用する場合は、./path に切り替えます。この構文は、//path を絶対パスに、/path をプロジェクト相対に使用するRead および Edit 権限ルールとは異なります。サンドボックスファイルシステムパスは標準規則を使用するため、/tmp/build は絶対パスです。
Claude Code はディレクトリパスから末尾のスラッシュを削除するため、~/.aws と ~/.aws/ は同じディレクトリと一致します。v2.1.224 より前では、Claude Code は末尾のスラッシュをサンドボックスに渡していたため、末尾のスラッシュ付きで記述された denyRead または denyWrite エントリの下のパスを、Claude が引き続き読み取りまたは書き込みできました。
Claude Code は末尾の /** も削除するため、~/build/** と ~/build は同じディレクトリをカバーします。* などのワイルドカードが機能するかどうかは、エントリがどのリストにあるか、およびプラットフォームに依存します:
allowWriteおよびdenyWrite: macOS ではワイルドカードが機能します。Linux と WSL2 では、サンドボックスは具体的なパスをマウントするため、Claude Code は末尾の/**を削除した後に*、?、または[を含むエントリをスキップし、そのエントリは効果がありません。Claude Code はEdit権限ルールからパスを追加するため、同じ制限が適用され、/sandboxの Config タブはワイルドカードを含むEditおよびRead権限ルールについて警告します。denyReadおよびallowRead: ワイルドカードはすべてのプラットフォームで機能します。Linux と WSL2 では、Claude Code は読み取りエントリを、それが一致する具体的なパスに展開します。これは書き込みリストでは行いません。
sandbox.filesystem.allowWrite
作業ディレクトリ、ユーザーごとの一時ディレクトリ、--add-dir、/add-dir、または permissions.additionalDirectories で追加したディレクトリを超えて、サンドボックス化されたコマンドが書き込むことができるパスを追加します。kubectl やビルドツールなどのサブプロセスがプロジェクト外に書き込む必要がある場合に使用します。
- Scope:
Any file(プロジェクト設定とローカル設定には制限あり) - Type: サンドボックスパスプレフィックスを使用するパス文字列の配列
- Default: 未設定。サンドボックス化されたコマンドは、作業ディレクトリ、ユーザーごとの一時ディレクトリ、
--add-dirまたは/add-dirで追加したディレクトリ、およびpermissions.additionalDirectoriesのディレクトリに書き込むことができます
/tmp/build の下に書き込むことができ、kubectl は kubeconfig を更新できます:
settings.json
allowWrite エントリと Edit(...) 許可権限ルールからのパスをセッションが読み込むすべての設定スコープ全体でマージし、permissions.blockReadsOutsideWorkingDirectoriesがオンの間、リポジトリ設定からのものを除外します。リポジトリロックによってリポジトリのエントリが除外されることもあります。allowWrite エントリは保護されたパスを解除できません。
sandbox.filesystem.denyWrite
サンドボックス化されたコマンドが特定のパスへの書き込みをブロックします。これには、別の方法で書き込み可能なディレクトリ内のパスが含まれます。
- Scope:
Any file - Type: サンドボックスパスプレフィックスを使用するパス文字列の配列
- Default: 未設定
settings.json
Edit(...) 拒否権限ルールからのパスを追加します。
sandbox.filesystem.denyRead
サンドボックス化されたコマンドが特定のパス(デフォルトの読み取りポリシーが公開する認証情報ファイルなど)の読み取りをブロックします。認証情報ファイルを保護し、サンドボックスプロキシを通じて使用可能に保つには、代わりに sandbox.credentials を参照してください。
- Scope:
Any file - Type: サンドボックスパスプレフィックスを使用するパス文字列の配列
- Default: 未設定。サンドボックス化されたコマンドはデフォルト読み取りアクセスを保持します。これには
~/.aws/credentialsなどの認証情報ファイルが含まれます
settings.json
Read(...) 拒否権限ルールからのパスを追加します。filesystem.disabledが true の場合、Claude Code はこれらのエントリを強制しません。
sandbox.filesystem.allowRead
denyReadがブロックする領域内の特定のパスの読み取りを再度開き、ワークスペースのみの読み取りアクセスを構築します。正確またはワイルドカード denyRead エントリは、より広い allowRead 内でブロックされたままです。重複テーブルが示すとおりです。ワイルドカード denyRead エントリ(~/**/.env など)がディレクトリと一致する場合、Claude Code はその内容の読み取りもブロックします。v2.1.236 より前の macOS では、Claude Code はワイルドカード denyRead エントリが一致したパスを、より広い allowRead エントリがカバーしている場所で再度開き、一致したディレクトリの内容を読み取り可能なままにしました。
- Scope:
Any file(プロジェクト設定とローカル設定には制限あり) - Type: サンドボックスパスプレフィックスを使用するパス文字列の配列
- Default: 未設定
settings.json
. エントリをプロジェクト設定ではプロジェクトルートに、ユーザー設定では ~/.claude に解決します。allowManagedReadPathsOnly が設定されていない限り、Claude Code はセッションが読み込む設定ファイル全体でエントリをマージし、permissions.blockReadsOutsideWorkingDirectories がオンの間はリポジトリ設定からのエントリを除外します。リポジトリロックによってリポジトリのエントリが除外されることもあります。
sandbox.filesystem.allowManagedReadPathsOnly
管理設定から来る allowRead エントリのみを尊重するため、開発者は組織がブロックしたパスへの読み取りアクセスを再度開くことができません。Claude Code は引き続きセッションが読み込むすべての設定スコープから denyRead エントリをマージします。
- Scope:
Managed - Type: ブール値
true: Claude Code は管理設定からのallowReadエントリのみを尊重しますfalse: 他の設定ファイルからのallowReadエントリもマージされます
- Default:
false
~/work が再度開かれ、開発者が他のものを再度開くのが停止されます:
managed-settings.json
sandbox.filesystem.disabled
ネットワーク分離を保持しながらファイルシステム分離をスキップします。サンドボックス化されたコマンドはホストファイルシステムへの無制限の読み取りおよび書き込みアクセスを取得し、それらのネットワーク出力は network.allowedDomains に限定されたままです。コマンドが何を書き込むかではなく、どこに接続するかを制御するためにサンドボックスを使用する場合に使用します。Claude Code v2.1.216 以降が必要です。
- Scope:
User or managed。管理設定がsandbox.filesystemをまったく設定する場合、または"mode": "deny"を持つsandbox.credentials.filesエントリをリストする場合、管理設定のみがそれを設定できます。 - Type: ブール値
true: Claude Code はファイルシステム分離をスキップし、ネットワーク分離を保持しますfalse: ファイルシステム分離は有効なままです
- Default:
false。ファイルシステム分離は有効なままです
settings.json
denyRead または credentials.files deny エントリを強制しませんが、credentials.envVars エントリと適用された mask エントリは引き続き機能します。autoAllowBashIfSandboxedは引き続き true にデフォルト設定されるため、プロンプトを続けるには false に設定します。ファイルシステム分離を無効にするを参照して、それを設定できるソースの完全なリストと、分離がオフの場合に何が変わるかを確認してください。Claude Code v2.1.216 以降が必要です。
sandbox.ignoreViolations
コマンドがプローブして拒否されることが予想されるパスのサンドボックス違反レポートを沈黙させます(例えば、スタートアップ時に /etc/hosts をチェックするツール)。これらの拒否は違反として表示されず、Claude が見るものにも表示されません。サンドボックスはアクセスをブロックしたままです。レポートのみが抑制されます。キーはコマンドに対して一致するサブストリング(* はすべてのコマンドに一致)で、値はそのコマンドで無視する違反のサブストリング(ファイルシステムパスなど)です。
- Scope:
Any file(プロジェクト設定とローカル設定には制限あり) - Type: コマンドサブストリングを違反サブストリングの配列にマップするオブジェクト(通常はパス)
- Default: 未設定。すべての違反が報告されます
settings.json
sandbox.enableWeakerNestedSandbox
Linux サンドボックスを非特権 Docker コンテナ内で実行します。bubblewrap は新しい /proc をマウントできません。代わりに、内部サンドボックスはコンテナの既存の /proc をバインドマウントします。これにより、新しいマウントが非表示にするプロセス情報が公開されます。これはセキュリティを低下させます。外部コンテナが既に必要な分離を提供する場合にのみ使用します。
- Scope:
Any file(プロジェクト設定とローカル設定には制限あり) - Type: ブール値
true: 内部サンドボックスは新しい/procをマウントする代わりに、コンテナの既存の/procをバインドマウントしますfalse: サンドボックスは新しい/procをマウントします。これは非特権 Docker コンテナでは機能しません
- Default:
false
settings.json
sandbox.enableWeakerNetworkIsolation
macOS でサンドボックス化されたコマンドがシステム TLS トラストサービス com.apple.trustd.agent に到達できるようにします。gh、gcloud、terraform などの Go ベースのツールは、network.httpProxyPortを MITM プロキシとカスタム CA で使用する場合、TLS 証明書を検証するために必要です。これはトラストサービスを通じた潜在的なデータ流出パスを開くことでセキュリティを低下させます。
- Scope:
Any file(プロジェクト設定とローカル設定には制限あり) - Type: ブール値
true: macOS でサンドボックス化されたコマンドはcom.apple.trustd.agentに到達できますfalse: macOS でサンドボックス化されたコマンドはシステム TLS トラストサービスに到達できません
- Default:
false
settings.json
excludedCommands にリストします。Go ベースの CLI が macOS で TLS 検証に失敗するを参照してください。
sandbox.allowAppleEvents
macOS でサンドボックス化されたコマンドが Apple Events を送信できるようにします。open、osascript、およびブラウザで URL を開くツールはこれが必要です。これがないと、エラー -600 で失敗します。これはコード実行分離を削除します。サンドボックス化されたコマンドはユーザープロンプトなしで他のアプリケーションを非サンドボックス化で起動でき、Terminal などの実行中のアプリケーションに AppleScript コマンドを送信できます。これはアプリごとの macOS オートメーション同意プロンプト(TCC)の対象です。
- Scope:
User or managed - Type: ブール値
true: macOS でサンドボックス化されたコマンドは Apple Events を送信できますfalse: macOS でサンドボックス化されたコマンドは Apple Events を送信できないため、openとosascriptはエラー-600で失敗します
- Default:
false
settings.json
excludedCommands に追加します。macOS の Apple Eventsを参照してください。
sandbox.ripgrep
Claude Code が使用するものの代わりに、独自の ripgrep バイナリをサンドボックスに指定します。たとえば、プラットフォームが異なる方法でビルドされた rg を必要とする場合です。
- Scope:
User or managed - Type: ripgrep バイナリへのパスである
commandを含むオブジェクト、および前置する引数の配列である optionalargs - Default: 未設定。サンドボックスは Claude Code と同じ ripgrep バイナリを使用します。
USE_BUILTIN_RIPGREPを0に設定しない限り、これはバンドルされたバイナリです
settings.json
sandbox.bwrapPath
PATH の外にインストールされた bubblewrap バイナリ(エアギャップホスト上のベンダー版など)をサンドボックスに指定します。Claude Code はスタートアップ依存関係チェックと、サンドボックス化された各コマンドをラップするときの両方でパスを使用します。
- Scope:
Managed。Claude Code はユーザー、プロジェクト、またはローカルファイルがサンドボックスを別のバイナリに指定できないように、管理設定からのみ読み取ります。 - Type: 文字列。絶対パス。Claude Code は相対パスを削除し、
PATHルックアップにフォールバックします - Default: 未設定。Claude Code は
PATHでbwrapを見つけます
managed-settings.json
sandbox.socatPath
PATH の外にインストールされた socat バイナリをサンドボックスネットワークプロキシに指定します。
- Scope:
Managed - Type: 文字列。絶対パス。Claude Code は相対パスを削除し、
PATHルックアップにフォールバックします - Default: 未設定。Claude Code は
PATHでsocatを見つけます
managed-settings.json
sandbox.credentials
サンドボックス化されたコマンドから保護する認証情報ファイルと環境変数を宣言します。各エントリはファイル path または変数 name と mode に名前を付けます:deny はサンドボックス内の認証情報を非表示にし、mask はサンドボックス化されたコマンドにプレースホルダーを表示します。サンドボックスプロキシは送信リクエストで実際の値を置き換えます。Claude Code はリストしたエントリのみを保護します。組み込みの認証情報拒否リストはありません。
- Scope:
Any file。Claude Code はmaskエントリ、allowPlaintextInject、awsPairs、sigv4をユーザー設定、管理設定、--settingsフラグからのみ尊重します。 - Type:
files、envVars、allowPlaintextInject、awsPairs、sigv4を含むオブジェクト - Default: 未設定。認証情報は保護されません
GITHUB_TOKEN がサンドボックス化されたコマンドから削除されます:
settings.json
deny ファイル保護はファイルシステムレイヤーの一部であるため、ファイルシステム分離を無効にする場合は適用されません。環境変数保護は引き続き適用されます。
管理設定の無効な認証情報エントリ
管理対象のsandbox.credentials エントリが検証に失敗した場合、Claude Code は可能な限り認証情報を保護し続けます:
filesまたはenvVarsのエントリで、有効なpathまたはnameとmaskまたはdenyのmodeを持つもの(キャプチャグループがないextractパターンなど)は、警告とともにmode: "deny"に低下されるため、認証情報はマスクされず、エントリを修正するまでブロックされたままです。低下したfilesエントリは、明示的なdenyエントリのようにfilesystem.disabledをピンします。警告は、管理設定がファイルシステム分離をオフにする場合、その読み取りブロックが強制されないことを記します。- 不明な
modeまたは無効なpathまたはnameを持つエントリは削除されます。 - 各ケースは警告します。エントリが低下または削除されるかどうかに関わらず、残りの有効なエントリは引き続き強制され、完全に無効な
credentials値は削除されますが、sandboxの残りは引き続き適用されます。
sandbox.credentials.files
認証情報ファイルまたはディレクトリをサンドボックス化されたコマンドから保護します。"mode": "deny" の場合、Claude Code はサンドボックス内のパスの読み取りをブロックします。これは sandbox.filesystem.denyRead と同じ読み取りブロックです。"mode": "mask" の場合、Linux と WSL2 でサンドボックス化されたコマンドはファイルのセンチネルコピーを読み取り、サンドボックスプロキシはそのエントリの injectHosts への送信リクエストで実際の値を置き換えます。macOS ではファイルはサンドボックス内で読み取り不可です。"mode": "mask" には Claude Code v2.1.221 以降が必要です。
- Scope:
Any file。Claude Code はプロジェクト.claude/settings.jsonとローカル.claude/settings.local.jsonからmaskエントリを削除します。 - Type: オブジェクトの配列。各オブジェクトは
pathと"deny"または"mask"のmode、および optional ファイルのマスクフィールドを含みます - Default: 未設定。認証情報ファイルは保護されません
gh ホストファイルがマスクされ、api.github.com へのリクエストでのみ実際の値が置き換えられます:
settings.json
sandbox.filesystem.* 設定と同じプレフィックスを使用し、Claude Code はセッションが読み込むすべての設定スコープから配列をマージします。認証情報を保護するは、--setting-sources で除外するソースから何が引き続き適用されるかをカバーしています。mask エントリには Claude Code v2.1.221 以降が必要です。
mask 置換はサンドボックスプロキシを通じてのみ実行されるため、sandbox.network.tlsTerminate、または プレーン HTTP テストネットワークの場合は allowPlaintextInject を設定します。mask は単一ファイルに適用されるため、各認証情報ファイルを個別にリストします。Claude Code は deny エントリの mask フィールドを受け入れますが、無視します。認証情報をマスクするはどの設定ソースが尊重されるかを、認証情報ファイルをマスクするはエントリが deny にフォールバックするときをカバーしています。
ファイルのマスクフィールド
mask エントリはこれらの optional フィールドを受け入れます。extract または decode がない場合、Claude Code はファイル全体の内容を 1 つのセンチネルで置き換えます。ファイルシステム分離がオンの macOS では、Claude Code は extract または decode が実行される前に mask エントリを deny として適用します。認証情報ファイルをマスクするを参照してください。
これにより、
gh ホストファイル内の oauth_token 値のみがマスクされ、ファイル内のそれぞれの他のコピーが置き換えられ、パターンが何も一致しない場合はファイルが読み取り不可になり、実際のトークンは api.github.com へのリクエストでのみ置き換えられます:
settings.json
sandbox.credentials.envVars
環境変数をサンドボックス化されたコマンドから保護します。"mode": "deny" の場合、Claude Code はサンドボックス化されたコマンドの環境から変数を削除します。"mode": "mask" の場合、サンドボックス化されたコマンドはセッションごとのセンチネル値を見て、サンドボックスプロキシはそのエントリの injectHosts への送信リクエストで実際の値を置き換えます。gh や npm などのツールは実際の認証情報を保持することなく認証を続けます。
- Scope:
Any file。Claude Code はプロジェクト.claude/settings.jsonとローカル.claude/settings.local.jsonからmaskエントリを削除します。 - Type: オブジェクトの配列。各オブジェクトは
nameと"deny"または"mask"のmode、および optional 環境変数のマスクフィールドを含みます - Default: 未設定。環境変数は保護されません
NPM_TOKEN がサンドボックス化されたコマンドから削除され、GITHUB_TOKEN がマスクされ、実際の値は api.github.com へのリクエストでのみ置き換えられます:
settings.json
name は文字または下線で始まり、文字、数字、下線のみを含む必要があります。Claude Code はセッションが読み込むすべての設定スコープから配列をマージし、同じ変数が両方のモードで表示される場合は deny を適用します。認証情報を保護するは、--setting-sources で除外するソースから何が引き続き適用されるかをカバーしています。
mask 置換はサンドボックスプロキシを通じてのみ実行されるため、sandbox.network.tlsTerminate、または プレーン HTTP テストネットワークの場合は allowPlaintextInject を設定します。認証情報をマスクするを参照してください。Claude Code は deny エントリの mask フィールドを受け入れますが、無視します。
環境変数のマスクフィールド
mask エントリはこれらの optional フィールドを受け入れます。extract または decode がない場合、Claude Code は全体の値を 1 つのセンチネルで置き換えます。extract と decode は同じエントリで組み合わせることはできません。
これにより、
DATABASE_URL 内のパスワードのみがマスクされ、パターンが何も一致しない場合は変数がアンセットされ、SERVICE_JWT の JWT がマスクされます。api_key を除くすべてのクレームは読み取り可能なままです:
settings.json
sandbox.credentials.allowPlaintextInject
TLS 終了 HTTPS だけでなく、プレーン HTTP リクエストでも mask 置換を許可します。プレーン HTTP では、アップストリーム ID は検証されず、認証情報はクリアテキストで移動するため、信頼できるテストネットワーク外ではこれをオフのままにします。
- Scope:
User or managed - Type: ブール値
true: Claude Code はプレーン HTTP リクエストと TLS 終了 HTTPS の両方でmask置換を許可しますfalse: Claude Code は TLS 終了 HTTPS でのみmask置換を許可します
- Default:
false
settings.json
sandbox.credentials.awsPairs
マスクされた環境変数をグループ化して、認証情報が非標準の名前の変数に存在する場合、SigV4 再署名用に 1 つの AWS 認証情報を形成します。Claude Code は、従来の AWS_ACCESS_KEY_ID、AWS_SECRET_ACCESS_KEY、AWS_SESSION_TOKEN トリオを全体の値をマスクする場合、自動的にリンクするため、他の名前の場合にのみこのキーが必要です。Claude Code v2.1.224 以降が必要です。
- Scope:
User or managed - Type: オブジェクトの配列。各オブジェクトは
accessKeyIdVar、secretAccessKeyVar、および optionalsessionTokenVarを含み、sandbox.credentials.envVarsエントリに名前を付けます - Default: 未設定。従来のトリオのみがペアになります
settings.json
sandbox.credentials.envVars の全体値 mask エントリである必要があり、extract または decode なしで、すべてのペアで 1 つのスロットのみを埋めることができます。以下のルールも適用されます:
- プロキシは、アクセスキー ID エントリの
injectHostsにリストされたホストでリクエストを再署名します sessionTokenVarが設定されている場合、プロキシは再署名されたリクエストで実際のトークンをx-amz-security-tokenとして送信します- ペアで従来の変数のいずれかを指定すると、自動ペアリングが置き換えられます
sandbox.credentials.sigv4
サンドボックスプロキシが 再署名できないAWS リクエスト形式で何をするかを選択します:streaming は aws-chunked ストリーミングアップロード、presigned は事前署名 URL、sigv4a は SigV4A 非対称署名です。これは、マスクされたペアのプレースホルダーアクセスキー ID で署名されたリクエストにのみ適用されます。Claude Code v2.1.224 以降が必要です。
- Scope:
User or managed - Type:
streaming、presigned、sigv4aを含むオブジェクト。各オブジェクトは以下のいずれかです:"deny": プロキシはリクエストを失敗させます"passthrough": プロキシはマスクされたプレースホルダーで署名されたリクエストを転送するため、ツールは AWS 自体の拒否を受け取ります
- Default: 未設定。すべての形式は
"deny"です
settings.json
deny の場合、プロキシはリクエストを失敗させます。passthrough の場合、プロキシはマスクされたプレースホルダーから計算された署名でリクエストを転送するため、AWS はそれを拒否し、呼び出しツールはプロキシエラーの代わりに AWS 自体のレスポンスを受け取ります。
sandbox.network
サンドボックス化されたコマンドが到達できるホスト、ポート、ソケットを制御します。サンドボックスは送信トラフィックをプロキシを通じてルーティングし、これらのリストを強制します。ネットワーク分離を参照して、プロキシがどのように決定するか、およびいつプロンプトするかを確認してください。
- Scope:
Any file。strictAllowlist、allowManagedDomainsOnly、tlsTerminateは、それらのエントリが言うように、より少ないソースから読み取られます。 - Type: 以下のサブキーを含むオブジェクト
- Default: 未設定。ドメインは事前に許可されず、新しい各ホストをどう扱うかは権限モードによって決まります
uploads.github.com がブロックされ、コマンドが localhost にバインドできます:
settings.json
WebFetch(domain:...) 許可および拒否権限ルールは同じ許可および拒否リストをフィードします。
sandbox.network.allowUnixSockets
macOS でサンドボックス化されたコマンドが接続できる Unix ソケットパスをリストします。Claude Code は Linux と WSL2 でこのリストを無視します。seccomp フィルタはソケットパスを検査できません。代わりに allowAllUnixSockets を使用します。
- Scope:
Any file(プロジェクト設定とローカル設定には制限あり) - Type: 文字列の配列。各ソケットパス
- Default: 未設定。macOS サンドボックスはすべての Unix ソケットをブロックします
settings.json
/var/run/docker.sock を許可すると、サンドボックス化されたコマンドが Docker デーモンを制御できます。セキュリティ制限を参照してください。
sandbox.network.allowAllUnixSockets
サンドボックス化されたコマンドがすべての Unix ソケットに接続できるようにします。Linux と WSL2 では、サンドボックスの seccomp フィルタ は socket(AF_UNIX, ...) 呼び出しをブロックするため、これは Unix ソケットを許可する唯一の方法です。フィルタが不足している場合(/sandbox がその Dependencies タブで報告する場合)、サンドボックスは Unix ソケット呼び出しをブロックしません。Linux と WSL2 をセットアップするを参照して、フィルタがどこから来るかを確認してください。
- Scope:
Any file(プロジェクト設定とローカル設定には制限あり) - Type: ブール値
true: サンドボックス化されたコマンドはすべての Unix ソケットに接続できますfalse: サンドボックスは Unix ソケット接続をブロックします:macOS ではallowUnixSocketsのパスを除き、Linux と WSL2 ではフィルタが存在する場合は seccomp フィルタを通じて
- Default:
false
settings.json
true は cmd.exe や powershell.exe などの Windows バイナリを起動する相互運用ソケットも再度開きます。
sandbox.network.allowLocalBinding
macOS でサンドボックス化されたコマンドがネットワークポートでリッスンし(開発サーバーの起動など)、localhost の任意のポートに接続できるようにします。ループバック以外のアドレスでリッスンするコマンドは、他のマシンからの接続を受け付けます。Linux と WSL2 では各サンドボックス化されたコマンドが独自のループバックインターフェースを持つため、このキーは効果がありません。Linux または WSL2 からホスト上のサーバーに到達するには、コマンドが localhost 上のサーバーに到達できないを参照してください。
- Scope:
Any file(プロジェクト設定とローカル設定には制限あり) - Type: ブール値
true: macOS でサンドボックス化されたコマンドは任意のローカルアドレスでリッスンし、localhost の任意のポートに接続できますfalse: macOS でサンドボックス化されたコマンドはポートでリッスンすることも、localhost 上のサーバーに直接接続することもできません
- Default:
false
settings.json
sandbox.network.allowMachLookup
macOS サンドボックスが検索できる追加の XPC および Mach サービス名をリストします。iOS Simulator や Playwright などの XPC を通じて通信するツールは、ここにサービスをリストする必要があります。
- Scope:
Any file(プロジェクト設定とローカル設定には制限あり) - Type: 文字列の配列。各サービス名。単一の末尾
*はプレフィックスと一致し、"*"だけはすべてのサービスと一致します - Default: 未設定
com.apple.coresimulator. プレフィックスの下のすべてのサービスが許可されます:
settings.json
sandbox.network.allowedDomains
サンドボックス化されたコマンドからの送信トラフィック用にドメインを事前に許可するため、サンドボックスはそれらについてプロンプトしません。*.example.com などのワイルドカードはサブドメインと一致し、optional :port サフィックスはエントリを 1 つのポートに制限します。ポートなしのエントリはすべてのポートと一致します。
- Scope:
Any file(プロジェクト設定とローカル設定には制限あり)。allowManagedDomainsOnlyが設定されている場合、管理設定のみ。 - Type: 文字列の配列。各ドメイン、ワイルドカードパターン、または IP リテラル。optional
:portサフィックス付き - Default: 未設定。新しい各ホストをどう扱うかは権限モードによって決まります
settings.json
"[::1]" はすべてのポートを許可し、"[::1]:443" は 1 つのポートを許可します。括弧形式には Claude Code v2.1.229 以降が必要です。ドメインリストの IPv6 アドレスを参照してください。
sandbox.network.deniedDomains
allowedDomainsと同じワイルドカード、ポート、IPv6 構文を使用して、サンドボックス化されたコマンドからの送信トラフィック用にドメインをブロックします。拒否されたドメインは、allowedDomains エントリも一致する場合でもブロックされたままです。
- Scope:
Any file - Type: 文字列の配列。各ドメイン、ワイルドカードパターン、または IP リテラル。optional
:portサフィックス付き - Default: 未設定
settings.json
allowManagedDomainsOnly が設定されている場合でも、開発者は常に拒否リストを厳しくできます。IPv6 リテラルについては、ドメインリストの IPv6 アドレスを参照してください。
完全修飾ドメイン名をマークする末尾ドット(example.com. など)で書き込まれたエントリは、example.com と同じ接続をブロックします。
sandbox.network.strictAllowlist
許可リスト外のホストへのサンドボックス化されたコマンドのアクセスを、承認を求めるプロンプトを表示する代わりに拒否します。許可リストは allowedDomains と WebFetch(domain:...) 許可ルールからのドメイン、または allowManagedDomainsOnly が設定されている場合は管理設定エントリのみです。リポジトリのエントリについては、管理者必須のサンドボックスなしで適用されるロックを参照してください。Claude Code v2.1.219 以降が必要です。
- Scope:
User or managed。リポジトリはそれをオンまたはオフにできません。 - Type: ブール値
true: Claude Code は許可リスト外のホストへのサンドボックス化されたコマンドアクセスを拒否しますfalse: 別の信頼できる設定ファイルがtrueを設定しない限り、Claude Code は許可リスト外のホストを即座に拒否するのではなく、権限モードに応じて判断します:auto モードではコマンドのコマンドごとの許可ドメインに対してホストをチェックし、dontAskモードでは拒否し、bypassPermissionsモードおよびバイパスが利用可能なインタラクティブターミナルの plan モードセッションでは許可し、それ以外の場合はユーザーに確認します
- Default:
false
settings.json
WebFetch などのインプロセスツールは引き続き権限ルールに従います。尊重されるソースのいずれかが true に設定する場合、それはオンのままです。ネットワーク分離を参照してください。Claude Code v2.1.219 以降が必要です。
sandbox.network.allowManagedDomainsOnly
ネットワーク許可リストを管理設定が定義するものにロックします。Claude Code は管理設定からの allowedDomains と WebFetch(domain:...) 許可ルールのみを尊重し、ユーザー、プロジェクト、ローカル、--settings 設定からのドメインを無視し、許可されていないドメインをプロンプトする代わりに自動的にブロックします。
- Scope:
Managed - Type: ブール値
true: Claude Code は管理設定からのallowedDomainsとWebFetch(domain:...)許可ルールのみを尊重し、許可されていないドメインをプロンプトする代わりにブロックしますfalse: 他の設定ファイルからのドメインも許可リストにマージされます
- Default:
false
managed-settings.json
true の間、サンドボックスは管理者必須となり、プロキシポートを設定できるのは管理設定のみになります。
拒否されたドメインは引き続きセッションが読み込むすべてのソースからマージされます。ポリシーの拡大を開発者に防止させるを参照してください。
sandbox.network.httpProxyPort
Claude Code が実行するものの代わりに、独自の HTTP プロキシをサンドボックスに指定します。組織はこれを使用して、HTTPS トラフィックを検査したり、独自のフィルタリングルールを適用したり、リクエストをログに記録したりします。フィルタリングは独自のプロキシが引き継ぎ、Claude Code はそこに送信されるトラフィックにドメインリストとネットワークプロンプトを適用しなくなります。未設定の場合、Claude Code は HTTP トラフィック用に独自のプロキシを起動します。
- Scope:
Any file。ただし、他のサンドボックス設定によってポートを設定できるファイルが制限される場合を除きます - Type: 数値。ローカル TCP ポート
- Default: 未設定。Claude Code は独自のプロキシを実行します
settings.json
socksProxyPort も設定します。2 つのうち一方のみを設定した場合、Claude Code はもう一方のプロトコル用に引き続き独自のプロキシを実行します。カスタムプロキシ設定を参照してください。
sandbox.network.socksProxyPort
Claude Code が実行するものの代わりに、独自の SOCKS5 プロキシをサンドボックスに指定します。フィルタリングは独自のプロキシが引き継ぎ、Claude Code はそこに送信されるトラフィックにドメインリストとネットワークプロンプトを適用しなくなります。未設定の場合、Claude Code は SOCKS トラフィック用に独自のプロキシを起動します。
- Scope:
Any file。ただし、他のサンドボックス設定によってポートを設定できるファイルが制限される場合を除きます - Type: 数値。ローカル TCP ポート
- Default: 未設定。Claude Code は独自のプロキシを実行します
settings.json
sandbox.network.tlsTerminate
サンドボックスプロキシが TLS を終了して、HTTPS リクエストの内容を読み取ることができるようにします。これは実験的であり、mask 認証情報置換はそれを必要とします。{} を設定してセッション用に一時的な認証局を生成するか、caCertPath と caKeyPath を設定して独自のものを使用します。
- Scope:
User or managed。リポジトリはそれをオンにするか、認証局を提供できません。 - Type: optional
caCertPathとcaKeyPath文字列を含むオブジェクト。各ファイルパス - Default: 未設定。プロキシは TLS を終了または検査しません
settings.json
--settings フラグ、次にユーザー設定。
メモリとコンテキスト
Claude Code がコンテキストに読み込む内容、コンパクト化の方法、メモリと計画の保存場所を制御します。コンテキストの管理とメモリを参照してください。autoCompactEnabled
コンテキストが制限に近づいたときに Claude Code が会話を自動的にコンパクト化するようにします。/config に自動コンパクト化として表示され、そこで切り替えるとこのキーがユーザー設定に書き込まれます。
- スコープ:
任意のファイル - タイプ: ブール値
true: コンテキストが制限に近づいたときに Claude Code が会話を自動的にコンパクト化しますfalse: Claude Code は自動的にコンパクト化しません
- デフォルト:
true - セッションごとのオーバーライド:
DISABLE_AUTO_COMPACTは 1 つのセッションの自動コンパクト化をオフにします。2 つのうちどちらかがオフにすると、もう一方はオンに戻すことができません
settings.json
/compact コマンドは自動コンパクト化がオフの間も機能し続けます。
autoCompactWindow
Claude Code が自動的にコンパクト化する前にコンテキストウィンドウがどの程度満杯になるかを設定します。
- スコープ:
任意のファイル - タイプ:
100000から1000000のトークン数。Claude Code はこの値をモデルのコンテキストウィンドウで上限に設定します。モデル概要に各モデルのウィンドウが記載されています - デフォルト: 未設定。Claude Code はモデルに合わせてチューニングされたウィンドウを選択します
- セッションごとのオーバーライド:
--autocompactは 1 つのセッションでこのキーより優先され、CLAUDE_CODE_AUTO_COMPACT_WINDOWは両方より優先されます
settings.json
/autocompact コマンドは、現在のモデルのウィンドウを modelSettings の下に保存します。これは、そのモデルについて同じファイル内のこのキーより優先されます。自動圧縮ウィンドウを設定では、コマンド、フラグ、変数、設定がどのように相互作用するかについて説明しています。
autoMemoryDirectory
自動メモリをプロジェクトごとのデフォルトではなく、選択したディレクトリに保存します。
- スコープ:
任意のファイル - タイプ: 文字列。絶対パスまたは
~/で始まるディレクトリパス - デフォルト: 未設定。Claude Code は
~/.claude/projects/<project>/memory/を使用します
settings.json
autoMemoryEnabled
自動メモリをオンまたはオフにします。false の場合、Claude は自動メモリディレクトリから読み取ったり書き込んだりしません。セッション中に /memory で切り替えることもできます。これはこのキーをユーザー設定に書き込みます。
- スコープ:
任意のファイル - タイプ: ブール値
true: 未設定と同じです。--bare、セーフモード、CLAUDE_CODE_DISABLE_AUTO_MEMORYなど、セッションでこのキーより優先される何かがオフにしない限り、自動メモリはオンのままですfalse: Claude は自動メモリディレクトリから読み取ったり書き込んだりしません
- デフォルト:
true - セッションごとのオーバーライド:
CLAUDE_CODE_DISABLE_AUTO_MEMORYは 1 つのセッションでこのキーより優先されます。どちらの方向でも優先されます
settings.json
bashOutputMaxChars
成功した Bash または PowerShell コマンドの出力 Claude が受け取るインラインの文字数を設定します。出力が制限を超える場合、Claude Code はそれをファイルに保存し、Claude は短いプレビューとファイルのパスを受け取ります。詳細なビルドまたは完全なテストスイートログなどのコマンド出力がデフォルトを定期的に超過し、Claude がファイルを開かずに読み取ることを希望する場合は、制限を引き上げます。Claude Code v2.1.261 以降が必要です。
- スコープ:
任意のファイル - タイプ: 文字数。正の整数。Claude Code はこの値を
4000から128000の範囲に制限します - デフォルト: 未設定。Claude は最大 30,000 文字をインラインで受け取ります
settings.json
BASH_MAX_OUTPUT_LENGTH環境変数を無視します。
claudeMd
CLAUDE.md スタイルの指示を別のファイルをデプロイせずに組織管理メモリとして挿入します。Claude Code はテキストをユーザーおよびプロジェクト CLAUDE.md ファイルの前に管理メモリエントリとして読み込みます。
- スコープ:
管理 - タイプ: 文字列。CLAUDE.md ファイルのテキスト。ファイルのように記述します。Markdown を含め、改行は
\nとして記述します - デフォルト: 未設定
managed-settings.json
claudeMdExcludes
Claude Code がメモリを読み込むときに特定の CLAUDE.md ファイルをスキップします。大規模なモノレポでは、これを使用して、作業に関連のない他のチームの CLAUDE.md ファイルをスキップします。大規模コードベースガイドの関連のない CLAUDE.md ファイルを除外するセクションでそのケースについて説明しています。パターンは絶対ファイルパスと照合されます。
- スコープ:
任意のファイル - タイプ: 文字列の配列。各要素はグロブパターンまたは絶対パス
- デフォルト: 未設定。Claude Code は見つかったすべての CLAUDE.md を読み込みます
settings.json
env
すべてのセッションと Claude Code がそこから開始するサブプロセスの環境変数を設定します。環境変数リファレンスの任意の変数をここに配置できます。これは 1 つをすべてのセッションに適用するか、チーム全体にロールアウトする方法です。プロジェクトおよびローカル設定はそれらの一部を設定できません。
- スコープ:
任意のファイル - タイプ: 変数名を文字列値にマップするオブジェクト
- デフォルト: 未設定
settings.json
env 値がシェルとどのように相互作用するか
- ここの値はシェルでエクスポートされた同じ変数を上書きします。複数の設定ファイルが変数を設定する場合、最も優先度の高いものが適用されます。Claude Code が
envで無視する変数はプロジェクトおよびローカル設定の例外をリストします。 - Claude Desktop アプリまたは自己ホスト環境ランナーがセッションを開始する場合、それが構築する起動環境が代わりに優先されます。Claude Code は、起動環境がすでに設定している変数について、設定ファイルからの
env値を無視します。デバッグログは無視された各変数の名前を付けます。 - シェルエクスポートをキャンセルするには、変数を
""に設定します。Claude Code は空の値をプロバイダー選択の未設定として扱い、サブプロセスは空の値を継承します。 NO_COLORとFORCE_COLORをここで設定すると、サブプロセスにのみ到達します。Claude Code 自体のインターフェースカラーを変更するには、claudeを起動する前にシェルで設定します。- ここの値は設定ファイルのプレーンテキストであり、Claude Code が開始するすべてのサブプロセスに到達します。ローテーションする OTLP ベアラートークンの場合は
otelHeadersHelperを使用します。API 認証情報の場合はapiKeyHelperを使用します。
Claude Code が env 値を適用するタイミング
- ユーザー設定、
--settings、管理設定から: 起動時、および実行中のセッションでマージされたenvを変更する保存された変更がある場合。 - プロジェクトおよびローカル設定から: ワークスペースを信頼した後、または
-pモード(信頼ダイアログを表示しない)での起動時、およびマージされたenvを変更する保存された変更がある場合。 - Claude Code がモデル選択、タイムアウトと制限、機能トグルなどの安全として分類する変数: プロジェクトおよびローカル設定が設定できない変数を除き、すべての設定ファイルから起動時。
- v2.1.246 以降で
/cdでセッションを移動した後: 新しいディレクトリのプロジェクトおよびローカルenv値。前のディレクトリの上に。
Claude Code が env で無視する変数
-
プロジェクトおよびローカル設定は、チェックアウトされたリポジトリが制御すべきではない変数を設定できません。代わりにシェル、ユーザー設定、または管理設定で設定します。Claude Code は、テレメトリをオフにするいくつかの値を除いて各変数をドロップし、
claude --debugで確認できる警告をログに記録します。これらには以下が含まれます。-
Claude Code が独自のファイルを保存または書き込む場所を選択する変数:
CLAUDE_CONFIG_DIR、CLAUDE_CODE_TMPDIR、およびHOME、TMPDIR、TMP、TEMP、XDG_*ファミリーなどのオペレーティングシステムディレクトリ変数。 -
Claude Code が開始するプロセスのプログラムとマシン全体の設定を選択する Windows 変数。
SystemRoot、ComSpec、ProgramData、LOCALAPPDATA、PATHEXT、PSModulePath、ProgramFilesファミリーなど。 -
セッションコンテンツをエクスポートする変数:
OTEL_LOG_RAW_API_BODIESおよび詳細なベータトレーシングペアENABLE_BETA_TRACING_DETAILEDとBETA_TRACING_ENDPOINT。 -
テレメトリをオンにする、送信先を選択する、またはキャプチャするコンテンツを選択する OpenTelemetry エクスポーター変数:
CLAUDE_CODE_ENABLE_TELEMETRY、および拡張テレメトリベータペアCLAUDE_CODE_ENHANCED_TELEMETRY_BETAとENABLE_ENHANCED_TELEMETRY_BETA- エクスポーターセレクター
OTEL_LOGS_EXPORTER、OTEL_METRICS_EXPORTER、OTEL_TRACES_EXPORTER - コンテンツ変数
OTEL_LOG_USER_PROMPTS、OTEL_LOG_ASSISTANT_RESPONSES、OTEL_LOG_TOOL_CONTENT、OTEL_LOG_TOOL_DETAILS - 名前が
_ENDPOINT、_HEADERS、_PROTOCOL、_CERTIFICATE、_CLIENT_KEY、_INSECUREで終わるOTEL_EXPORTER_OTLP_*変数(汎用およびシグナルごとの形式)。OTEL_EXPORTER_OTLP_ENDPOINTやOTEL_EXPORTER_OTLP_METRICS_HEADERSなど OTEL_EXPORTER_PROMETHEUS_HOSTとOTEL_EXPORTER_PROMETHEUS_PORT
none。OTEL_LOG_USER_PROMPTS、OTEL_LOG_TOOL_CONTENT、OTEL_LOG_TOOL_DETAILSの場合は0などのオフ値。そのような値はユーザー設定で同じ変数をオーバーライドしますが、環境で Claude Code を起動するもの、--settingsファイル、または管理設定は設定しません。 プロジェクトまたはローカル設定ファイルがこのグループの変数を設定する場合、ローカルインタラクティブセッションは起動時に通知を表示します。/statusまたはclaude doctorを実行して、Claude Code が無視したものと、テレメトリをオフにしたものを確認します。両方とも名前をリストします。値は決してリストしません。-pを使用した非インタラクティブ実行または Agent SDK セッションは通知を表示しないため、アップグレード後にコレクターがデータを受け取り続けるかどうかを確認します。受け取らない場合は、ユーザー設定、管理設定、ジョブの環境、または--settingsで渡すファイルで変数を設定します。 プロジェクトおよびローカル設定でこのグループを無視するには Claude Code v2.1.282 以降が必要です。 -
Claude Code の起動またはシンク方法を変更する変数。
CLAUDE_CODE_PROCESS_WRAPPER、CLAUDE_CODE_SYNC_SKILLS、CLAUDE_CODE_SYNC_PLUGINS、CLAUDE_CODE_PLUGIN_CACHE_DIR、CLAUDE_CODE_PLUGIN_SEED_DIRなど。
HOMEとXDG_CONFIG_HOMEを除き、このリストが名前を付けるファイルの保存または書き込み場所を選択する変数、またはセッションコンテンツをエクスポートする変数を設定できました。 -
Claude Code が独自のファイルを保存または書き込む場所を選択する変数:
-
Claude Code のホスティング環境が所有する
CLAUDE_CODE_REMOTEやCLAUDE_CODE_ACCOUNT_UUIDなどのアイデンティティ変数は、すべてのファイルから無視されます。 -
CLAUDE_CODE_MESSAGING_SOCKETとCLAUDE_CODE_MESSAGING_TOKEN。Claude Code 自体がエクスポートするものは、すべてのファイルから無視されます。ソケット変数を無視するには Claude Code v2.1.224 以降が必要で、トークンを無視するには v2.1.228 以降が必要です。 -
CLAUDE_CODE_PROJECT_DIR_NAME。Claude Code は起動環境からのみ読み取ります。すべてのファイルから無視されます。v2.1.234 以降が必要です。 -
CLAUDE_CODE_RESTRICTED。Claude Code は起動環境からのみ読み取ります。すべてのファイルから無視されます。 -
CLAUDE_CODE_DISABLE_POWERSHELL_CMD_RM_DENY。Claude Code は起動環境からのみ読み取ります。すべてのファイルから無視されます。この変数には Claude Code v2.1.283 以降が必要です。 -
CLAUDE_CODE_DISABLE_DANGEROUS_RM_TIMEOUT、CLAUDE_CODE_DISABLE_SUBSTITUTION_RM_PROMPT、CLAUDE_CODE_DISABLE_INLINE_SHELL_RM_PROMPT。Claude Code は起動環境からのみ読み取ります。すべてのファイルから無視されます。
fileCheckpointingEnabled
各編集の前にファイルをスナップショットして、/rewindがそれらを復元できるようにします。/config に**コードを巻き戻す(チェックポイント)**として表示され、そこで切り替えるとこのキーがユーザー設定に書き込まれます。
- スコープ:
任意のファイル - タイプ: ブール値
true: Claude Code は各編集の前にファイルをスナップショットして、/rewindがそれらを復元できるようにしますfalse: Claude Code はファイルをスナップショットしないため、/rewindはそれらを復元できません
- デフォルト:
true - セッションごとのオーバーライド:
CLAUDE_CODE_DISABLE_FILE_CHECKPOINTINGは 1 つのセッションのチェックポイント作成をオフにします。2 つのうちどちらかがオフにすると、もう一方はオンに戻すことができません
settings.json
-p 実行または Agent SDK セッションでは、Claude Code はこのキーを無視します。SDK は enableFileCheckpointing オプションでチェックポイント作成をオンにし、ベアの -p 実行には CLAUDE_CODE_ENABLE_SDK_FILE_CHECKPOINTING=true が必要です。Agent SDK でのファイルチェックポイント作成を参照してください。
plansDirectory
Claude Code が計画モードで書き込む計画ファイルを保存する場所を選択します。Claude Code はパスをプロジェクトルートを基準に解決し、パスがそれの外側に解決される場合はデフォルトを保持します。
- スコープ:
任意のファイル - タイプ: 文字列。プロジェクトルートを基準とした相対パス
- デフォルト: 未設定。Claude Code は
~/.claude/plansを使用します
settings.json
skillListingBudgetFraction
各ターンで、Claude はスキルのリストとその説明を見ます。Claude Code はそのリスティングをコンテキストウィンドウのシェアで上限に設定します。リスティングが上限を超える場合、Claude Code はすべてのスキルの名前を保持しますが、最も使用されていないスキルの説明をドロップします。Claude はそれらのスキルを呼び出すことはできますが、独自に選択する可能性は低くなります。このキーを引き上げて、ターンごとにより多くのコンテキストを消費する代わりに、より多くの説明を表示させます。
- スコープ:
任意のファイル - タイプ: 数値。
0より大きく、最大1の分数 - デフォルト:
0.01。コンテキストウィンドウの 1% を予約します
settings.json
/doctor を実行します。
skillListingMaxDescChars
各ターンで、Claude はスキルのリストを見ます。これは各スキルの description と when_to_use テキストを表示します。このキーは Claude Code がスキルごとに表示するそのテキストの文字数を上限に設定します。より長いテキストは上限で切り詰められます。
- スコープ:
任意のファイル - タイプ: 文字数。正の整数
- デフォルト:
1536
settings.json
skillListingBudgetFractionの下により多くのスキルを適合させるために引き下げます。
taskOutputMaxChars
v2.1.276 を通じて、このキーをバックグラウンドタスクの出力の文字数に設定しました。Claude が TaskOutput ツールでタスクを読み取るときにインラインで受け取ります。
インターフェースとターミナル
Claude Code がターミナルでどのように見え、動作するかを変更します。テーマ、エディタモード、ステータスライン、スピナー、セッション内の通知、アクセシビリティなどです。ターミナル設定を参照してください。askUserQuestionTimeout
回答されていない AskUserQuestion ダイアログがアイドル時間の経過後に自動的に続行し、既に選択していたオプションを送信するようにします。席を離れて Claude に続行させたい場合に設定します。デフォルトでは、質問は回答されるまで待機します。タイマーが一時停止する場合や開始されない場合については、質問の自動続行タイムアウトを参照してください。
- スコープ:
ユーザーまたはマネージド - タイプ: 文字列、
"60s"、"5m"、"10m"、または"never"のいずれか - デフォルト:
"never" - セッションごとのオーバーライド:
CLAUDE_AFK_TIMEOUT_MSはこのキーより優先されます
settings.json
/config に質問の自動続行タイムアウトとして表示され、このキーをユーザー設定に書き込みます。管理設定または --settings フラグがキーを設定している場合、Claude Code は行を非表示にします。
autoContinueAtUsageLimit
claude.ai の使用制限がセッションを停止した後、開いているセッションで待機し、リセット後にタスクを自動的に続行します。自動続行をオフにするを参照してください。Claude Code v2.1.234 以降が必要です。
- スコープ:
ユーザーまたはマネージド。ユーザー設定、--settings、およびマネージド設定からのみ読み取ります。これらのいずれもキーを設定しない場合、プロジェクトまたはローカル設定ファイルがキーを設定すると、機能は無視されるのではなくオフになります。 - タイプ: ブール値
true: claude.ai の使用制限がセッションを停止した後、Claude Code は開いているセッションで待機し、リセット後にタスクを自動的に続行しますfalse: Claude Code は独自に待機を開始しません。使用制限オプションメニューから自分で待機を開始できます
- デフォルト:
true
settings.json
/config に使用制限で自動的に続行として表示され、このキーをユーザー設定に書き込みます。マネージド設定または --settings フラグがキーを設定している場合、Claude Code は行を非表示にします。
autoScrollEnabled
フルスクリーンレンダリングで会話の下部に新しい出力を追従します。オフにすると、Claude が作業を続ける間、スクロールした場所に留まります。権限プロンプトは引き続き表示されます。
- スコープ:
任意のファイル - タイプ: ブール値
true: 会話は新しい出力の下部に追従しますfalse: Claude が作業を続ける間、スクロールした場所に留まります。権限プロンプトはトランスクリプトの下に表示されます
- デフォルト:
true
settings.json
/config にフルスクリーンレンダリングがオンの場合自動スクロールとして表示され、このキーをユーザー設定に書き込みます。
axScreenReader
スクリーンリーダーフレンドリーな出力をレンダリングします。装飾的なボーダーやアニメーションのないフラットテキストです。スクリーンリーダーモードはクラシックレンダラーを使用するため、アクティブな間は tui 設定は効果がありません。接続されたバックグラウンドセッションは引き続きフルスクリーンでレンダリングされます。
- スコープ:
任意のファイル - タイプ: ブール値
true: Claude Code は装飾的なボーダーやアニメーションのないフラットテキストをレンダリングし、クラシックレンダラーを使用しますfalse: Claude Code は通常通りレンダリングします
- デフォルト: 未設定、スクリーンリーダーモードはオフです
- セッションごとのオーバーライド:
--ax-screen-readerはCLAUDE_AX_SCREEN_READERより優先され、両方ともこのキーより優先されます
settings.json
bashEditDiffEnabled
Bash コマンドの実行中に Git リポジトリで変更されたファイルを Claude Code が記録するかどうかを選択します。記録する場合、コマンド後にターミナルでそれらの diff が表示され、PostToolUse Bash フックは変更されたファイルのリストを受け取ります。
リストされたファイルは常にコマンドが変更したものとは限りません。コマンドの実行中に別のプログラムまたは別の Bash 呼び出しが行った変更もそこに表示される可能性があります。
キーを true に設定して、すべての権限モードで記録します。Claude Code v2.1.269 以降が必要です。
- スコープ:
ユーザーまたはマネージド。trueはユーザー設定、--settingsで渡された JSON、またはマネージド設定からのみカウントされるため、リポジトリの.claude/settings.jsonまたは.claude/settings.local.jsonのtrueは記録をオンにできません。リポジトリファイルのfalseはより高い優先度のファイルがtrueを設定しない限り、引き続きオフになります。 - タイプ: ブール値
- デフォルト: 未設定、Claude Code は自動モードと
bypassPermissionsモードで Claude が Bash を通じてファイルを編集するように指示する場合に変更を記録します - セッションごとのオーバーライド:
CLAUDE_CODE_BASH_EDIT_DIFFはこのキーより優先されます
settings.json
companyAnnouncements
スタートアップ時に組織のアナウンスメントをユーザーに表示します。複数をリストする場合、Claude Code は各セッションでランダムに 1 つを選択します。ユーザーの最初の起動時には最初のエントリが表示されます。
- スコープ:
任意のファイル - タイプ: 文字列の配列
- デフォルト: 未設定、アナウンスメントは表示されません
settings.json
defaultShell
入力ボックスで! プレフィックスで入力したシェルコマンド、Claude Code が直接実行してセッションに追加するコマンドを実行するかどうかを選択します。Bash または PowerShell。
"powershell" はPowerShell ツールがオンの場合のみ機能します。このツールは Git Bash のない Windows ではデフォルトでオンであり、Git Bash を使用する Windows では claude.ai および Console アカウント用にオンです。Amazon Bedrock、Google Cloud の Agent Platform、Microsoft Foundry セッション、および macOS、Linux、WSL では、CLAUDE_CODE_USE_POWERSHELL_TOOL=1 を設定してツールをオンにします。そのツールをオフにするには、その変数を 0 に設定します。
- スコープ:
任意のファイル - タイプ: 文字列、以下のいずれか:
"bash": Claude Code は!コマンドを Bash で実行します"powershell": Claude Code は!コマンドを PowerShell で実行します
- デフォルト:
"bash"、または Bash が利用できない Windows では"powershell"
settings.json
"powershell" は PowerShell ツールがオフの場合 Bash にフォールバックし、"bash" は Bash がインストールされていない場合 PowerShell にフォールバックします。
dialogExpiry
Claude Code がリモートクライアントに転送するダイアログ(Remote Control または SDK ホストなど)および保留中のクロスセッションメッセージの承認ダイアログの期限を設定します。Claude Code v2.1.236 以降では、同じ期限が誰もターミナルにいない可能性があるセッションの途中のFable 使用クレジット同意プロンプトを制限します。期限前に回答が到着しない場合、Claude Code はダイアログをキャンセルし、デフォルトのアクションなしで続行します。Claude Code v2.1.224 以降が必要です。
- スコープ:
ユーザーまたはマネージド - タイプ: 文字列、
"60s"、"5m"、"10m"、または期限を無効にする"never"のいずれか - デフォルト:
"5m" - セッションごとのオーバーライド:
CLAUDE_CODE_USER_DIALOG_TIMEOUT_MSはこのキーより優先されます
settings.json
AskUserQuestion質問は独自のフローを使用し、この期限の対象ではありません。Claude Code v2.1.232 以降では /config にダイアログの有効期限として表示され、このキーをユーザー設定に書き込みます。行には Claude Code v2.1.232 以降が必要であり、マネージド設定または --settings フラグがキーを設定している場合、Claude Code は行を非表示にします。
editorMode
入力プロンプトのキーバインディングモードを選択します。
- スコープ:
任意のファイル - タイプ: 文字列、以下のいずれか:
"normal": プロンプト入力の標準キーバインディング"vim": NORMAL、INSERT、VISUAL モードを備えた vim スタイルの編集
- デフォルト:
"normal"
settings.json
/config にエディタモードとして表示され、このキーをユーザー設定に書き込みます。
emojiCompletionEnabled
プロンプト入力で : とショートコードを入力するときに絵文字の提案を表示し、:heart: などの完成したショートコードを絵文字に置き換えます。false に設定して両方をオフにします。
- スコープ:
任意のファイル - タイプ: ブール値
true: Claude Code は:の後に絵文字の提案を表示し、完成したショートコードを絵文字に置き換えますfalse: Claude Code は絵文字を提案せず、ショートコードを置き換えません
- デフォルト:
true
settings.json
fileSuggestion
組み込みのファイル提案の代わりに、@ ファイルパスオートコンプリートを提供する独自のコマンドを実行します。組み込み提案は高速ファイルシステムトラバーサルを使用します。大規模なモノレポは事前構築されたファイルインデックスなどのプロジェクト固有のインデックスでより良い結果が得られる場合があります。
- スコープ:
任意のファイル。ステータスラインとファイル提案ゲートの下では、Claude Code はコマンドをオフにするか、マネージド値のみを実行し、警告なしにあなたのコマンドをスキップします。 - タイプ:
type(常に"command")とcommand(実行するシェルコマンド)を持つオブジェクト - デフォルト: 未設定、Claude Code は組み込みのファイル提案を使用します
settings.json
@ に続けてパスの一部を入力します。提案はコマンドの出力から取得されます。
コマンド入力と出力
Claude Code はフックと同じ環境変数(CLAUDE_PROJECT_DIR を含む)でコマンドを実行し、5 秒後に待機を停止します。コマンドは stdin で query フィールドを持つ JSON を受け取ります。これまでに入力したものを保持します:
footerLinksRegexes
ターン出力(ツール結果(ファイルコンテンツと取得されたページを含む)および Claude 自身の応答)に正規表現がマッチするときに、入力ボックスの下のフッターに追加のクリック可能なバッジをレンダリングします。プロジェクト CLI によって出力される ID(レビューツールおよび問題トラッカーなど)をセッションリンクに変換するために使用します。
- スコープ:
ユーザーまたはマネージド - タイプ: オブジェクトの配列。各オブジェクトは
typeを"regex"に設定し、pattern正規表現、urlテンプレート、およびオプションのlabelを持ちます。urlおよびlabelの{name}プレースホルダーはpatternの名前付きキャプチャグループから入力されます - デフォルト: 未設定、バッジはレンダリングされません
PROJ-1234 などの問題キーにマッチし、キャプチャされたキーから各リンクを構築します:
settings.json
PROJ-1234 がツール結果または Claude の応答に表示されると、PROJ-1234 バッジがフッターに表示され、https://issues.example.com/browse/PROJ-1234 にリンクします。
バッジの制約
各エントリの URL、ラベル、およびバッジ数は次のように制限されます:
ターンが完了すると、Claude Code はメインスレッドでターン出力に対して各エントリの
pattern 正規表現をマッチングするため、遅い正規表現は完了するまで UI をブロックします。(a+)+$ などのネストされた量指定子は特定の入力に対して指数関数的に長くかかり、セッションをフリーズさせる可能性があるため、各 pattern を線形に保ち、+ または * のネストを避けてください。
フッターバッジはカスタムステータスラインが設定されている場合と並んでレンダリングされます。どちらも他方を置き換えません。セッションデータから独自のコンテンツを計算するスクリプト駆動行にはステータスラインを使用し、会話から ID をリンクに変換するにはフッターバッジを使用します。
keybindingFlavor
v2.1.238 から v2.1.260 では、"readline" に設定すると Ctrl+W は前の単語だけでなく前の空白文字に戻って削除されました。
- スコープ:
任意のファイル - タイプ: 文字列、
"classic"または"readline" - デフォルト: 未設定
maxProseWidth
Claude の応答の散文の幅を制限して、行が広いターミナルで読みやすく保ちます。段落、見出し、リスト、およびブロック引用はこの多くの列内でラップされ、テーブルとコードブロックはターミナルの全幅を保ちます。Claude Code v2.1.282 以降が必要です。
- スコープ:
任意のファイル - タイプ: ターミナル列の数、整数、最小
40。Claude Code は他の値を無視します - デフォルト: 未設定、散文はターミナルエッジでラップされます
settings.json
prefersReducedMotion
スピナー、シマー、フラッシュエフェクトなどのインターフェースアニメーションを削減またはオフにします。/config にモーションを削減として表示されます。
- スコープ:
任意のファイル - タイプ: ブール値
true: Claude Code はスピナー、シマー、フラッシュエフェクトなどのインターフェースアニメーションを削減またはオフにしますfalse: 未設定と同じです。Claude Code はアニメーションを表示します
- デフォルト:
false
settings.json
promptSuggestionEnabled
プロンプト提案を表示または非表示にします。プロンプト入力に表示される灰色の予測です。false に設定するか、/config でプロンプト提案をオフにして非表示にします。
- スコープ:
任意のファイル - タイプ: ブール値
true: プロンプト入力にプロンプト提案が表示されますfalse: Claude Code はプロンプト提案を非表示にします
- デフォルト:
true - セッションごとのオーバーライド:
CLAUDE_CODE_ENABLE_PROMPT_SUGGESTIONはこのキーより優先されます
settings.json
DISABLE_TELEMETRY によるテレメトリがオフの場合、このキーは効果がなく、CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION=1 のみがそれらをオンにします。
respectGitignore
@ ファイルピッカーが .gitignore パターンにマッチするファイルを除外するかどうかを制御します。/config にファイルピッカーで .gitignore を尊重として表示されます。
- スコープ:
任意のファイル。設定ファイルがそれを設定しない場合、Claude Code は~/.claude.jsonのrespectGitignoreにフォールバックします。これは/configトグルが書き込みます。 - タイプ: ブール値
true:@ファイルピッカーは.gitignoreパターンにマッチするファイルを除外しますfalse:@ファイルピッカーは.gitignoreパターンにマッチするファイルを含めます
- デフォルト:
true
settings.json
respondToBashCommands
入力ボックスで! プレフィックスでシェルコマンドを実行した後、Claude が応答するかどうかを選択します。デフォルトでは、Claude Code はコマンドの出力を会話に追加し、Claude がそれに応答します。このキーを false に設定して、応答なしでコンテキストに出力を追加し、複数のコマンドを実行して一緒に質問できるようにします。
- スコープ:
任意のファイル - タイプ: ブール値
true: Claude Code はコマンドの出力を会話に追加し、Claude がそれに応答しますfalse: Claude Code は応答なしでコンテキストに出力を追加します
- デフォルト:
true
settings.json
! プレフィックスでシェルモードを参照してください。
showClearContextOnPlanAccept
Claude がプランモードでプランを完了すると、承認メニューが表示されます。計画は多くのコンテキストを使用できるため、このキーはそのメニューに最初のオプションはい、コンテキストをクリアして… を追加します。これはプランを承認し、会話コンテキストをクリアし、プランだけから実装を開始します。ラベルの残りはセッションが続く権限モードに名前を付け、計画がコンテキストをどの程度使用したかを示します。
- スコープ:
任意のファイル - タイプ: ブール値
true: プラン承認メニューは最初のオプションはい、コンテキストをクリアして… を取得します。これはプランを承認し、会話コンテキストをクリアしますfalse: プラン承認メニューはクリアコンテキストオプションを表示しません
- デフォルト:
false
settings.json
showTurnDuration
各応答後のターン期間メッセージを表示または非表示にします。例えば「Cooked for 1m 6s · done 6:05 PM」。「done」の後の時計はターンが完了した時刻を示します。timeFormat と timeZone はその形式とゾーンを制御します。/config にターン期間を表示として表示されます。
- スコープ:
任意のファイル。古いバージョンの~/.claude.jsonの値は、設定ファイルがそれを設定しない場合に適用されます。 - タイプ: ブール値
true: 各応答後にターン期間メッセージが表示されますfalse: Claude Code はターン期間メッセージを非表示にします
- デフォルト:
true
settings.json
spellcheck
入力時にプロンプト入力でスペルミスのある単語に下線を引きます。インストールするスペルチェッカーを使用します。Claude Code はプロンプト入力ボックスのテキストのみをチェックします。入力時にスペルをチェックは aspell、hunspell、または ispell のインストールとチェッカーがカバーするものについて説明しています。Claude Code v2.1.235 以降が必要です。
- スコープ:
ユーザーまたはマネージド。それを設定する最高層のブロックが全体として適用されます。 - タイプ:
enabled(ブール値)、checker("aspell"、"hunspell"、"ispell"、または"auto")、language(文字列、チェッカーの辞書名として渡される)、およびcolor(文字列、ターミナルカラー名、#rrggbb、rgb(r,g,b)、ansi256(n)、またはansi:<name>)を持つオブジェクト - デフォルト: 未設定、スペルチェックはオフです。
checkerはデフォルトで"auto"、PATHで見つかった最初の 3 つです。languageはデフォルトでチェッカー自身の辞書です。colorはデフォルトでテーマのエラーカラーです
settings.json
spinnerTipsEnabled
Claude が作業している間、スピナーラインは「Plan Mode を使用して複雑なリクエストに備えてから変更を加えます。Shift+Tab を 2 回押して有効にします」などの Claude Code 機能に関する短いヒントをローテーションします。このキーを false に設定して非表示にします。/config にヒントを表示として表示されます。
- スコープ:
任意のファイル - タイプ: ブール値
true: Claude が作業している間、スピナーにヒントが表示されますfalse: Claude Code はスピナーヒントを非表示にします
- デフォルト:
true
settings.json
spinnerTipsOverride
Claude Code が Claude の作業中に表示するスピナーヒントに独自のヒントを追加するか、組み込みヒントを置き換えます。Claude Code はあなたのヒントを組み込みのものと同じローテーションに入れます。
spinnerTipsEnabled を false に設定すると、Claude Code はすべてのヒント(あなたのものを含む)を非表示にします。
- スコープ:
任意のファイル。Claude Code はヒントオブジェクト、tipsFile、label、およびexcludeDefaultをユーザー設定、--settingsフラグ、およびマネージド設定から尊重します。プロジェクトおよびローカル設定からは、プレーン文字列ヒントのみを読み取ります。 - タイプ:
tips、tipsFile、label、およびexcludeDefaultフィールドを持つオブジェクト。各フィールドはオプションです - デフォルト: 未設定、Claude Code は組み込みヒントのみを表示します
tipsFile、label、およびスコープ行のルール(プロジェクトおよびローカル設定がプレーン文字列のみを提供)には Claude Code v2.1.247 以降が必要です。
各 tips エントリはプレーン文字列またはこれらのフィールドを持つオブジェクトです:
Claude Code はプレーン文字列をこれらのデフォルトを持つヒントとして読み取り、位置ベースの id を読み取るため、リストを並べ替えるとその表示履歴がリセットされます。ヒントに
id を付けて、編集全体で履歴を保持します。
Claude Code は tips と tipsFile 全体で最大 200 個のヒントを読み取り、設定ファイルを拒否する代わりに、デバッグ警告で無効なエントリを削除します。
残りのフィールドを使用して、ヒントファイルに名前を付け、プレフィックスを設定し、組み込みヒントを非表示にします:
tipsFile: ローカル JSON ファイルへの絶対パスまたは~/パス。同じエントリの配列、またはオブジェクト(tips配列を持つ)を保持します。最大 256 KB。Claude Code はプロセスごとに 1 回ファイルを読み取るため、次の起動時に編集が読み込まれます。サーバー管理設定を通じて設定することはできません。インラインtipsをそこに展開するか、オンディスクmanaged-settings.jsonにパスを展開します。label: Claude Code がユーザー、--settings、およびマネージド設定からのヒントの前に表示するプレフィックス。最大 40 文字。デフォルトはTip、組み込みヒントと同じプレフィックスであり、プロジェクトおよびローカル設定からのヒントは常にそれを使用します。excludeDefault:trueに設定して、組み込みヒントを非表示にし、あなたのヒントのみを表示します。Claude Code がヒントを読み込めない場合(例えばtipsFileが存在しないか、すべてのエントリが無効な場合)、空のスピナーの代わりに組み込みローテーションを保持します。
--settings フラグ、およびユーザー設定のうち、各 tipsFile、label、および excludeDefault を設定する最高優先度のものから取得します。
この例(ユーザー設定)は、プレーン文字列ヒントとオブジェクトヒントを Acme tip プレフィックスの下のローテーションに追加します:
settings.json
label: Claude Code は両方のヒントをTip: ...の代わりにAcme tip: ...として表示します。- プレーン文字列: Claude Code はデフォルトを付与するため、次のセッションで再度表示される可能性があります。
id: Claude Code は 2 番目のヒントの表示履歴をgateway-errorsにキーにするため、そのクールダウンはヒントを追加または並べ替えた後も適用されます。cooldownSessions: Claude Code がgateway-errorsヒントを表示した後、そのヒントを 5 セッション後まで再度表示しません。priority:gateway-errorsヒントと別のヒントが同じ期間表示されていない場合(例えば、どちらも表示されていない場合)、Claude Code はgateway-errorsを最初に表示します。プレーン文字列はデフォルト優先度0を持ちます。
Acme tip: Run /review before opening a PR)でスピナーにあなたのヒントを表示します。
spinnerVerbs
ターンが進行中の間、スピナーは「Accomplishing」、「Architecting」、または「Baking」などのローテーション動詞を表示します。このキーを使用して、そのローテーションに独自の動詞を追加するか、組み込みリストを置き換えます。
- スコープ:
任意のファイル - タイプ:
verbs文字列の配列とmodeを持つオブジェクト。以下のいずれか:"append": Claude Code は組み込みセットに動詞を追加します"replace": Claude Code はあなたの動詞のみを表示します
- デフォルト: 未設定、Claude Code は組み込み動詞を使用します
settings.json
"replace" モードで空の verbs 配列の場合、Claude Code は組み込み動詞を保持します。
statusLine
ステータスラインをプロンプトの下にレンダリングする独自のコマンドを実行します。モデル、コスト、git ブランチなどのコンテキストを含みます。オプションのフィールドは間隔を調整し、定期的な再実行を追加し、スクリプトが vim.mode 自体をレンダリングする場合は組み込みの vim モードインジケーターを非表示にします。
- スコープ:
任意のファイル。allowManagedHooksOnlyがオンの場合、またはdisableAllHooksがマネージド設定の外で設定されている場合、マネージド設定値のみが実行されます。 - タイプ:
typeを"command"に設定し、command文字列を持つオブジェクト。オプションでpaddingを文字数として、refreshIntervalを秒数として(最小1)、hideVimModeIndicatorをブール値として - デフォルト: 未設定、ステータスラインなし
settings.json
jqがインストールされている必要があり、シェルで実行されます。PowerShell および Git Bash の同等物については、Windows 設定を参照してください。完全なセットアップについては、ステータスラインを手動で設定を参照してください。
subagentStatusLine
Claude がサブエージェントを実行する場合、Claude Code はプロンプトの下のタスク表示にそれらをリストします。サブエージェントごとに 1 行。name · description · token count を表示します。このキーを使用すると、独自のコマンドを実行してそれらの行を書き直すことができます。例えば、各サブエージェントのコンテキスト使用量をパーセンテージとして表示します。各リフレッシュで、Claude Code は表示されている行を 1 つの JSON オブジェクトとして stdin に送信します。tasks 配列は各サブエージェントの id、name、status、model、tokenCount などを含みます。書き直した各 id の行を {"id", "content"} 行として置き換えます。書き直さない行はデフォルトレンダリングを保持します。
- スコープ:
任意のファイル。allowManagedHooksOnlyがオンの場合、またはdisableAllHooksがマネージド設定の外で設定されている場合、マネージド設定値のみが実行されます。 - タイプ:
typeを"command"に設定し、command文字列を持つオブジェクト - デフォルト: 未設定、Claude Code はデフォルト行をレンダリングします
settings.json
syntaxHighlightingDisabled
Claude Code は組み込みハイライターを使用して、ターミナルに表示される diff、コードブロック、ファイルプレビューで言語別にコードを色付けします。プラグインまたは言語サーバーは関与しません。このキーを true に設定して、代わりにプレーンテキストとして表示します。例えば、色がターミナルテーマと競合する場合やスクリーンリーダーを遅くする場合。
- スコープ:
任意のファイル - タイプ: ブール値
true: Claude Code は diff、コードブロック、ファイルプレビューの構文ハイライトをオフにしますfalse: Claude Code は構文をハイライトします
- デフォルト:
false
settings.json
terminalProgressBarEnabled
一部のターミナルは、それらで実行されているプログラムのタブまたはタスクバーに進捗インジケーターを表示できます。Claude が作業している間、Claude Code はターミナルに進行中の状態を報告するため、別のタブまたはウィンドウからセッションがまだビジーかどうかを確認できます。バックグラウンドサブエージェントまたは動的ワークフローがまだ実行されている間、インジケーターはターンの終了後も表示されたままになり、セッションがアイドル状態になるとクリアされます。
Claude Code はインジケーターをサポートするターミナルでのみ報告します。ConEmu、Ghostty 1.2.0 以降、および iTerm2 3.6.6 以降。このキーを false に設定して、Claude Code がそれを報告するのを停止します。/config にターミナル進捗バーとして表示されます。
- スコープ:
任意のファイル。古いバージョンの~/.claude.jsonの値は、設定ファイルがそれを設定しない場合に適用されます。 - タイプ: ブール値
true: サポートするターミナルでターミナル進捗バーが表示されますfalse: Claude Code はターミナル進捗バーを非表示にします
- デフォルト:
true
settings.json
terminalTitleFromRename
Claude Code はターミナルタブのタイトルを設定します。デフォルトでは、会話から生成されたタイトルを使用し、/rename または --name でセッションに名前を付けると、タブはその名前を代わりに表示します。このキーを false に設定して、セッションに名前を付けた後も、生成されたタイトルをタブに保持します。名前自体は引き続き適用されるため、/resume <name> とセッションピッカーはそれを見つけます。
- スコープ:
任意のファイル - タイプ: ブール値
true: ターミナルタブのタイトルは設定したセッション名を表示しますfalse: タブは会話から生成された Claude Code のタイトルを保持します
- デフォルト:
true
settings.json
CLAUDE_CODE_DISABLE_TERMINAL_TITLE を 1 に設定します。
theme
インターフェースのカラーテーマを選択します。/config にテーマとして表示されます。
- スコープ:
任意のファイル。古いバージョンの~/.claude.jsonの値は、設定ファイルがそれを設定しない場合に適用されます。 - タイプ: 文字列、以下のいずれか:
"auto": ターミナルの明るいまたは暗い背景に一致します"dark": ダークテーマ"light": ライトテーマ"dark-daltonized": 色覚異常フレンドリーな色を持つダークテーマ"light-daltonized": 色覚異常フレンドリーな色を持つライトテーマ"dark-ansi": ターミナルの ANSI カラーパレットのみを使用するダークテーマ"light-ansi": ターミナルの ANSI カラーパレットのみを使用するライトテーマ"custom:<slug>"または"custom:<plugin-name>:<slug>":~/.claude/themes/またはプラグインからのカスタムテーマ
- デフォルト:
"dark"
settings.json
timeFormat
Claude Code がインターフェースに表示する時刻の書き方を選択します。例えば、各ターン期間メッセージの終わりの done 6:05 PM とトランスクリプトビューアーのタイムスタンプ。プリセットを選択するには、/config を実行して時間形式を設定します。Claude Code v2.1.257 以降が必要です。
- スコープ:
任意のファイル - タイプ: 文字列、以下のいずれか:
"auto": 未設定と同じです。各時刻は組み込み形式を保持し、ターン期間メッセージではロケールに従います"12-hour": 12 時間制"24-hour": 24 時間制"24-hour-utc": UTC での 24 時間制。分の後にZが付きます。例えば18:05Z。Claude Code はこのプリセットのtimeZoneを無視します"%H:%M"などの strftime パターン: Claude Code はパターンで各時刻を書きます。%を含む値はパターンであり、プリセット外の他の値は"auto"としてカウントされます
- デフォルト:
"auto"
settings.json
/config はプリセットのみを提供するため、strftime パターンを使用するには、キーを設定ファイルに追加します。この例は各時刻を 2 桁の 24 時間制として表示します:
settings.json
18:05 などの時刻を表示します。トランスクリプトビューアーでは、パターンはタイムスタンプ全体であるため、日付をそこに含める場合は日付ディレクティブを追加します。この例は時計の前に日付を配置します:
settings.json
2026-09-01 18:05 などの時刻を表示します。
timeZone
インターフェースの時刻をシステムの時刻以外のタイムゾーンで表示します。IANA タイムゾーン名("UTC" または "Europe/Dublin" など)に設定します。timeFormat が制御する時刻はこのゾーンで表示されます。timeFormat が "24-hour-utc" の場合、時刻は UTC のままであり、Claude Code はこのキーを無視します。/config にはこのキーの行がないため、設定ファイルで設定します。Claude Code v2.1.257 以降が必要です。
- スコープ:
任意のファイル - タイプ: 文字列、IANA タイムゾーン名。Claude Code が名前を認識しない場合、システムタイムゾーンを使用します
- デフォルト: 未設定、時刻はシステムタイムゾーンで表示されます
settings.json
tui
ターミナル UI レンダラーを選択します。ちらつきのないalt-screen レンダラーを仮想スクロールバックで使用するには "fullscreen" を使用するか、クラシックメインスクリーンレンダラーには "default" を使用します。/tui fullscreen または /tui default を実行すると、このキーが書き込まれます。
- スコープ:
任意のファイル - タイプ: 文字列、以下のいずれか:
"default": クラシックメインスクリーンレンダラー"fullscreen": 仮想スクロールバック付きのちらつきのない alt-screen レンダラー
- デフォルト: 未設定、Claude Code はレンダラーを自動的に選択します
- セッションごとのオーバーライド:
CLAUDE_CODE_NO_FLICKERとCLAUDE_CODE_DISABLE_ALTERNATE_SCREENはこのキーより優先されます。CLAUDE_CODE_NO_FLICKER=1はフルスクリーンをオンにし、CLAUDE_CODE_NO_FLICKER=0またはCLAUDE_CODE_DISABLE_ALTERNATE_SCREEN=1はオフにします。両方が設定されている場合、Claude Code はオフにします
settings.json
-CC の下または Windows への SSH 経由では、Claude Code は CLAUDE_CODE_NO_FLICKER=1 を設定しない限りクラシックレンダラーを保持します。エージェントビューから開かれたバックグラウンドセッションは、この設定に関係なく常にフルスクリーンレンダラーを使用します。
verbose
デフォルトでは、トランスクリプトは各ツール呼び出しを短い要約に折りたたみます。例えば、Claude が実行したコマンドと出力の行数。詳細を表示したい場合は Ctrl+O を押してトランスクリプト全体を展開ビューに切り替えます。このキーを true に設定して、すべてのツール呼び出しの完全な入力と出力をインラインで表示します。フック、MCP サーバー、または長いシェルコマンドをデバッグする場合に便利です。/config に詳細出力として表示されます。
- スコープ:
任意のファイル。古いバージョンの~/.claude.jsonの値は、設定ファイルがそれを設定しない場合に適用されます。 - タイプ: ブール値
true: 完全なツール出力が表示されますfalse: ツール出力の切り詰められた要約が表示されます
- デフォルト:
false - セッションごとのオーバーライド:
--verboseはこのキーより優先されます
settings.json
viewMode 値またはスティッキー /focus 選択はこのキーを毎セッション上書きします。
viewMode
Claude Code が開始するトランスクリプトビューを設定します。"default"、"verbose"、または "focus"。設定されている場合、スティッキー /focus 選択と verbose 設定の両方を上書きします。
- スコープ:
任意のファイル - タイプ: 文字列、以下のいずれか:
"default": 切り詰められたツール出力を持つ通常のトランスクリプト"verbose": 完全なツール出力を持つトランスクリプト"focus": 最後のプロンプトのみ、ツール呼び出しの 1 行の要約(編集 diffstats を含む)、および最終応答。フォーカスビューはフルスクリーンレンダラーが必要です
- デフォルト: 未設定、
verbose設定と最後の/focus選択が適用されます - セッションごとのオーバーライド:
--verboseはこのキーより優先されます
settings.json
vimInsertModeRemaps
vim エディタモードで 2 キーの INSERT モードシーケンスを Escape にマップします。各キーは正確に 2 つの印字可能文字で、順序で入力され、"<Esc>" は唯一のサポートされているターゲットです。Claude Code は他のエントリを無視します。Claude Code v2.1.208 以降が必要です。
- スコープ:
ユーザーまたはマネージド。リポジトリはキーストロークを再マップできません。 - タイプ: 2 文字シーケンスを
"<Esc>"にマップするオブジェクト - デフォルト: 未設定
settings.json
editorMode が "vim" でない限り効果がありません。INSERT モードキーシーケンスを再マップを参照してください。Claude Code v2.1.208 以降が必要です。
voice
音声ディクテーションをオンにし、ディクテーションキーの動作を選択します。Claude Code は /voice を実行するとこのオブジェクトを書き込みます。
- スコープ:
任意のファイル - タイプ:
enabledをブール値として、autoSubmitをホールドモードのみに適用するブール値として、modeを以下のいずれかとして持つオブジェクト:"hold": ディクテーションキーを話している間押し続け、停止するために離します"tap": キーを 1 回タップして記録を開始し、もう一度タップして送信します
- デフォルト: 未設定、ディクテーションはオフです。
enabledがtrueでmodeが未設定の場合、Claude Code は"hold"を使用します
settings.json
autoSubmit はホールドモードでキーを離すときにプロンプトを送信します。音声ディクテーションには claude.ai アカウントが必要です。
voiceEnabled
voice オブジェクトより前の単一ブール値形式で音声ディクテーションをオンにします。両方が設定されている場合、voice.enabled が適用されます。
- スコープ:
任意のファイル - タイプ: ブール値
true: claude.ai アカウントでログインしており、組織のポリシーが音声を許可している場合、音声ディクテーションはオンです。voice.enabledが設定されていない限りfalse: 音声ディクテーションはオフです。voice.enabledが設定されていない限り
- デフォルト: 未設定
settings.json
wheelScrollAccelerationEnabled
フルスクリーンレンダリングでの高速スクロール中にマウスホイールスクロール速度を加速します。ホイールノッチごとに一定のスクロール速度を使用するには false に設定します。
- スコープ:
任意のファイル - タイプ: ブール値
true: Claude Code は高速スクロール中にマウスホイールスクロール速度を加速しますfalse: Claude Code はホイールノッチごとに一定の速度でスクロールします
- デフォルト:
true
settings.json
Git とアトリビューション
Claude Code がコミットとプルリクエストに追加するアトリビューションを制御し、git との連携方法を設定します。attribution
Claude Code が git コミットとプルリクエストに追加するアトリビューションをカスタマイズします。コミットはデフォルトで Co-Authored-By などの git トレーラー を取得します。プルリクエストの説明はプレーンテキストを取得します。以下のサブキーを使用して各部分を個別に設定します。
- スコープ:
Any file - タイプ:
commitとpr文字列およびsessionUrlブール値を含むオブジェクト、または全てのアトリビューションを非表示にするfalse。false値には Claude Code v2.1.281 以降が必要です。それより前のバージョンはこれを拒否し、それを含むユーザー、プロジェクト、またはローカル設定ファイル全体をスキップします - デフォルト: 未設定。Claude Code は各サブキーの下に表示される標準アトリビューションを使用します
attribution を false に設定します。それより前のバージョンも読み込む設定ファイルでは、commit と pr を空の文字列に設定し、sessionUrl を false に設定してください。
この例はコミットアトリビューションを置き換え、プルリクエストアトリビューションを削除し、セッションリンクを削除します。
settings.json
commit または pr を設定すると、Claude Code は非推奨の includeCoAuthoredBy 設定を無視し、設定しなかった方のデフォルトテキストを使用します。
Claude Code は、CLAUDE.md または memory ルールなど、アトリビューションに関するカスタマー独自の命令が、managed settings で設定されている場合を除き、これらのコミットおよび PR 行より優先されることを Claude に伝えます。
includeCoAuthoredBy
このキーを置き換える attribution を代わりに使用してください。これにより、コミットトレーラー、プルリクエストテキスト、セッションリンクを個別に変更または非表示にできます。Claude Code は attribution より前の設定ファイルからの includeCoAuthoredBy: false を引き続き尊重しますが、attribution.commit または attribution.pr を設定すると無視します。
- スコープ:
Any file - タイプ: ブール値
true: 未設定と同じ。Claude Code はコミットトレーラーとプルリクエストアトリビューションテキストを追加しますfalse: Claude Code はコミットトレーラーとプルリクエストアトリビューションテキストの両方を省略します。ただし、attributionがcommitまたはprを設定する場合は、attributionルールが適用されます
- デフォルト:
true
settings.json
attribution を参照してください。
includeGitInstructions
Claude Code は git 関連の 2 つの部分をコンテキストとして Claude に提供します。Bash ツールの説明にあるコミットとプルリクエストの書き方に関する組み込み命令と、リポジトリの git ステータススナップショット(現在のブランチ、メインブランチ、git status 出力、最近のコミット)です。Claude Code はコンバーセーション開始時にスナップショットを読み込みます。
このキーを false に設定して両方を除外します。例えば、独自の git ワークフロースキルを使用する場合などです。
- スコープ:
Any file - タイプ: ブール値
true: Claude Code は組み込みのコミットおよびプルリクエストワークフロー命令と git ステータススナップショットを含めます。クラウドセッションはスナップショットを含めませんfalse: Claude Code は両方を除外します
- デフォルト:
true - セッションごとのオーバーライド:
CLAUDE_CODE_DISABLE_GIT_INSTRUCTIONSはこのキーより優先されます(1 セッション)
settings.json
prUrlTemplate
Claude Code がレンダリングする PR リンク(フッターバッジとツール結果サマリー内)を github.com の代わりに内部コードレビューツールに指定します。Claude Code は PR URL から {host}、{owner}、{repo}、{number}、{url} を置き換えます。両方のサーフェス上の GitLab マージリクエスト リンクは GitLab URL を保持します。
- スコープ:
Any file - タイプ: 文字列。5 つのプレースホルダーのいずれかを使用する URL テンプレート
- デフォルト: 未設定
settings.json
#123 など)は Claude が書き込んだままです。/pull/<number> の形状を持たない URL は変更されません。
attribution.commit
Claude Code が git コミットに追加するアトリビューションテキスト(トレーラーを含む)を設定します。コミットアトリビューションを非表示にするには、空の文字列に設定します。
- スコープ:
Any file - タイプ: 文字列
- デフォルト: 未設定。Claude Code は
Co-Authored-By: <name> <noreply@anthropic.com>を追加します。名前はコミットが作成されるときに使用されているモデル(Claude Sonnet 5など)です。subagent がコミットを作成する場合、トレーラーは subagent のモデルに名前を付けます。- Claude Code がモデルを Claude モデルとして認識しているが、その正確なバージョンを確認できない場合、
Claudeのみを書き込みます。 - モデル ID をカスタム
ANTHROPIC_BASE_URLを通じて提供されるサードパーティモデルなど、Claude モデルと一致させることができない場合、Claude Codeを書き込みます。
- Claude Code がモデルを Claude モデルとして認識しているが、その正確なバージョンを確認できない場合、
Co-Authored-By トレーラーに置き換えます。
settings.json
attribution.pr
Claude Code がプルリクエストの説明に追加するアトリビューションテキストを設定します。プルリクエストアトリビューションを非表示にするには、空の文字列に設定します。
- スコープ:
Any file - タイプ: 文字列
- デフォルト: 未設定。Claude Code は
🤖 Generated with [Claude Code](https://claude.com/claude-code)を追加します
settings.json
attribution.sessionUrl
Claude Code が クラウド または Remote Control セッションからコミットするか、プルリクエストを開くときに claude.ai セッションリンクを追加するかどうかを選択します。Claude Code はコミット上に Claude-Session トレーラーとしてリンクを追加し、プルリクエストの説明にリンクとして追加します。リンクを省略するには false に設定します。
- スコープ:
Any file - タイプ: ブール値
true: Claude Code はクラウドまたは Remote Control セッションからコミットするか、プルリクエストを開くときに claude.ai セッションリンクを追加しますfalse: Claude Code はリンクを省略します
- デフォルト:
true
settings.json
フックと自動化
フックを登録し、実行するフックを制限し、ワークフローを制御します。フックイベントとペイロードについては、フックリファレンスを参照してください。allowedHttpHookUrls
HTTP フックがターゲットできる URL を制限します。このキーを定義すると、Claude Code は HTTP フックを実行するのはその URL がパターンの 1 つと一致する場合のみで、残りはブロックして実行しません。空の配列はすべての HTTP フックをブロックします。
- スコープ:
Any file。配列は設定ファイル全体でマージされます。 - 型: URL パターンの配列。ワイルドカードとして
*を使用 - デフォルト: 未設定。任意の URL が許可されます
https://hooks.example.com/ 下のすべての URL と任意の http://localhost URL を許可します:
settings.json
hooks.example.com. を hooks.example.com と同じように扱います。これは DNS の扱い方と同じです。許可リストはすべてのソースからのフック(管理設定を含む)に適用されます。
allowManagedHooksOnly
フック実行を組織がデプロイするフックに制限します。
- スコープ:
Managed - 型: ブール値
true: 管理フックのみが実行され、Agent SDK フックと管理設定が強制有効にするプラグインからのフックも実行されます。allowManagedHooksOnly下で実行されるものを参照してくださいfalse: すべての設定スコープとプラグインからのフックが実行されます
- デフォルト: 未設定。すべての設定スコープとプラグインからのフックが実行されます
managed-settings.json
allowManagedHooksOnly 下で実行されるもの
これを true に設定すると、Claude Code はどのフックとフック類似コマンドをロードするかを変更します:
- 管理フックと SDK フックが実行されます: 管理設定からのフックと Agent SDK がプロセス内で登録するフック
- 強制有効プラグインフックが実行されます: 管理設定が
enabledPluginsを通じて強制有効にするプラグインからのフック。Claude Code は完全なplugin@marketplaceID でマッチするため、別のマーケットプレイスからの同じ名前のプラグインはブロックされたままです。これにより、組織マーケットプレイスを通じて検証済みフックを配布しながら、その他すべてをブロックできます。このようなプラグイン内の mod は、組織のものとしてカウントされる場合のみロードされます - その他すべてはブロックされます: ユーザー、プロジェクト、ローカルフック、他のインストール済みプラグインからのフックと mod、エージェントのフロントマターで宣言されたフック。Claude Code に組み込まれた mod は実行し続けます。ユーザーの mod のみをブロックするには、代わりに
allowManagedModsOnlyを設定してください。 - コマンドソースプラグインは無効になります: Claude Code は
commandソースを持つプラグイン(管理enabledPluginsで強制有効にされたプラグインを含む)も無効にします。ただし、disableCommandPluginSourcesを明示的にfalseに設定した場合を除きます - マーケットプレイス
headersHelperコマンドはブロックされます: Claude Code はマーケットプレイスheadersHelperコマンドもブロックします。ただし、disableCommandPluginSourcesが明示的にfalseに設定されている場合、または管理設定自体が宣言するマーケットプレイスの場合を除きます。Claude Code v2.1.238 以降が必要です - ステータスラインとファイル提案は管理設定に絞られます: Claude Code は
statusLine、fileSuggestion、subagentStatusLineを管理設定からのみ読み込みます。ステータスラインとファイル提案ゲートに従います
/goal コマンドは実行できません。これはフックに依存しているためです。
disableAllHooks
フック、カスタム ステータスライン、カスタム ファイル提案 コマンドをオフにします。これらを設定から削除せずに一時的にオフにするために使用します。
- スコープ:
Any file。管理設定のみが管理フックを無効にできます。 - 型: ブール値
true: Claude Code はフック、カスタムステータスライン、カスタムファイル提案コマンドをオフにしますfalse: フック、ステータスライン、ファイル提案コマンドが実行されます
- デフォルト: 未設定。フックが実行されます
settings.json
- 管理設定内: Claude Code はすべての設定済みフック(管理フックを含む)を無効にし、Agent SDK がプロセス内で登録するフックは実行し続けます
- 他の設定ファイル内: Claude Code はユーザー、プロジェクト、ローカル、プラグインフックを無効にします。管理フック、Agent SDK フック、管理
enabledPluginsで強制有効にされたプラグインからのフックは実行し続けます
- 管理設定内: 組織のものを含め、インストール済みのすべてのプラグイン内の mod が停止します
- 他の設定ファイル内: ユーザーがインストールした mod が停止し、組織の mod は実行し続けます
/goal コマンドは実行できず、/hooks メニューはフックの代わりに通知を表示します。
ステータスラインとファイル提案ゲート
Claude Code はstatusLine、fileSuggestion、subagentStatusLine について、この順序で 2 つの決定を行います:
- 完全にオフ: 管理設定が
disableAllHooksを設定している場合、またはフォルダが設定ファイル内のフックと同じ ワークスペーストラストルールの下で信頼されていない場合 - 管理設定に絞られます:
allowManagedHooksOnlyが設定されている場合、設定の優先順位が適用された後に管理設定外でdisableAllHooksがtrueである場合、または--safe-modeで Claude Code を起動した場合
@ オートコンプリートは組み込みファイル提案にフォールバックします。
disableWorkflows
動的ワークフローと、管理設定を通じた組織など、設定が到達するすべてのユーザーのためのバンドルワークフローコマンドをオフにします。自分自身のためだけにワークフローをオンまたはオフにするには、代わりに enableWorkflows を使用してください。これは /config の Dynamic workflows トグルがユーザー設定に書き込みます。
- スコープ:
Any file - 型: ブール値
true: Claude Code は動的ワークフローと、設定が到達するすべてのユーザーのためのバンドルワークフローコマンドをオフにしますfalse: 未設定と同じです。ワークフローがオンかどうかはenableWorkflowsとプランのデフォルトに従います
- デフォルト:
false - セッションごとの上書き:
CLAUDE_CODE_DISABLE_WORKFLOWSは 1 つのセッションのワークフローをオフにします。2 つのうちどちらがオフにするかに関わらず、もう一方はオンに戻すことはできません
settings.json
enableWorkflows
プランのデフォルトが望むものでない場合、自分自身のために 動的ワークフローをオンまたはオフにします。/config に Dynamic workflows として表示され、このキーをユーザー設定に書き込み、プランのデフォルトに戻すときに再度削除します。管理設定からすべてのユーザーのためにワークフローをオフにするには、代わりに disableWorkflows を使用してください。
- スコープ:
Any file - 型: ブール値
true: Claude Code は自分自身の動的ワークフローをオンにしますfalse: Claude Code は自分自身の動的ワークフローをオフにします
- デフォルト: 未設定。ワークフローはオンです。ただし Pro プランではオフです
- セッションごとの上書き:
CLAUDE_CODE_DISABLE_WORKFLOWSは 1 つのセッションのワークフローをオフにし、ここでtrueはそれが設定されている間はワークフローをオンに戻すことはできません
settings.json
disableWorkflows と組織のワークフローポリシーも優先されます: enableWorkflows: true はいずれかのソースがワークフローをオフにしている間はワークフローをオンに戻すことはできません。Claude Code は、ユーザー設定以外のソースが enableWorkflows を設定している場合、または disableWorkflows を true に設定している場合、/config 行を非表示にします。
hooks
Claude Code のライフサイクルの特定の時点(ツール呼び出しの前やセッション開始時など)で、フックとして独自のコマンド、プロンプト、エージェント、HTTP リクエスト、または MCP ツールを実行します。フックリファレンスはすべてのイベント、ペイロード、終了コードをリストします。各イベントは matcher グループのリストにマップされ、各グループは matcher が適用されるときに実行するハンドラーをリストします。
- スコープ:
Any file。フックは互いに置き換えられるのではなくファイル全体でマージされ、管理設定からのフックは他のファイルから削除できません。 - 型: フックイベントでキー付けされたオブジェクト。各値は
"command"、"prompt"、"agent"、"http"、または"mcp_tool"のtypeを持つ{ "matcher", "hooks" }グループの配列 - デフォルト: 未設定。フックは実行されません
settings.json
disableAllHooksを参照してください。フックを組織がデプロイするものに制限するには、allowManagedHooksOnlyを参照してください。
httpHookAllowedEnvVars
HTTP フックは環境変数の値をリクエストヘッダーに入れることができます。例えば Authorization: Bearer $HOOK_TOKEN ヘッダーですが、フックが独自の allowedEnvVars でリストしている変数のみです。このキーはすべての HTTP フックのそのリストに外側の制限を設定します: フックは変数を使用できるのは、独自の allowedEnvVars とこのキーの両方がそれを名前付けしている場合のみです。フックの定義がそれを要求している場合でも、フックが読むべきではないシークレットを読むのを防ぐために使用します。
- スコープ:
Any file。配列は設定ファイル全体でマージされます。 - 型: 環境変数名の配列
- デフォルト: 未設定。各フック独自の
allowedEnvVarsリストが適用されます
MY_TOKEN と HOOK_SECRET に制限します:
settings.json
workflowKeywordTriggerEnabled
プロンプトでキーワード ultracode を入力することが 動的ワークフローをトリガーするかどうかを選択します。false に設定して、トリガーなしで単語を入力します。
- スコープ:
Any file。/configに Ultracode keyword trigger として表示されます。 - 型: ブール値
true: プロンプトでultracodeを入力すると動的ワークフローがトリガーされますfalse: トリガーなしで単語を入力できます
- デフォルト:
true
settings.json
ultracode 努力設定、/workflows、保存されたワークフローコマンドは影響を受けません。
workflowSizeGuideline
Claude が書き込む動的ワークフローで Claude が目指すエージェント数を設定します。Claude Code は値を Claude に助言として送信します。強制的な上限ではありません: "small" は 5 未満のエージェントを要求し、"medium" は 10 未満、"large" は 50 未満です。ワークフローが費やすものを制限したい場合は "small" を選択します。Claude Code v2.1.219 以降が必要です。
- スコープ:
Any file。そこの値は/configの Dynamic workflow size 選択肢より優先されます。Claude Code は~/.claude.jsonに保存します。設定ファイルがキーを設定している間、Claude Code はその行を非表示にします。 - 型: 文字列。以下のいずれか:
"unrestricted": ガイドラインなし。Claude はタスクに合わせてワークフローの規模を決めます"small": Claude は 5 未満のエージェントを目指します"medium": Claude は 10 未満のエージェントを目指します"large": Claude は 50 未満のエージェントを目指します
- デフォルト:
"medium"、または Pro プランで Claude Code v2.1.271 以降にサインインしている場合は"small"
settings.json
/config でガイドラインを設定します。
プラグインとスキル
プラグインを有効にし、マーケットプレイスを登録し、組織が許可するプラグインソースを制限し、どのスキルを読み込むかを制御します。プラグインのインストールとビルドについては、プラグインを参照してください。disableBundledSkills
Claude Code に含まれるスキルとワークフローをオフにします。Claude Code はバンドルされたスキルとワークフローを完全に削除し、/init などの組み込みコマンドは入力可能なままですがモデルから非表示になります。
- Scope:
Any file - Type: Boolean
true: Claude Code はバンドルされたスキルとワークフローを削除し、/initなどの組み込みコマンドをモデルから非表示にしますfalse: バンドルされたスキルが読み込まれます
- Default: 未設定の場合、バンドルされたスキルが読み込まれます
- Per-session overrides:
CLAUDE_CODE_DISABLE_BUNDLED_SKILLSを1に設定すると、1 つのセッションでバンドルされたスキルがオフになります。2 つのうちどちらかがそれらをオフにすると、もう一方はそれらをオンに戻すことができません
settings.json
.claude/skills/、および .claude/commands/ からのスキルは影響を受けません。/doctor は組み込みコマンドと同様に入力可能なままです。非表示にするには、代わりに DISABLE_DOCTOR_COMMAND を設定してください。
disableSkillShellExecution
スキルおよびユーザー、プロジェクト、プラグイン、または追加ディレクトリソースからのカスタムコマンドの !`...` および ```! ブロック内のインラインシェル実行をオフにします。Claude Code は各コマンドを実行する代わりに [shell command execution disabled by policy] に置き換えます。
- Scope:
Any file。マネージド設定のtrueは他の場所のfalseでオーバーライドできません。 - Type: Boolean
true: Claude Code は各インラインシェルコマンドを実行する代わりに[shell command execution disabled by policy]に置き換えますfalse: インラインシェルが実行されます
- Default: 未設定の場合、インラインシェルが実行されます
settings.json
skillOverrides
スキルの SKILL.md を編集せずに非表示にしたり折りたたんだりします。Claude Code は各スキルの名前の下の値をスキルリストと / オートコンプリートに適用します。
- Scope:
Any file。/skillsメニューは.claude/settings.local.jsonに書き込みます。 - Type: スキル名を次のいずれかにマッピングするオブジェクト:
"on": Claude はスキルを認識し、/nameを入力できます"name-only": Claude はスキルを説明なしで名前で認識します"user-invocable-only": Claude はスキルを認識しませんが、/nameを入力することはできます"off": Claude はスキルを認識せず、/nameはオートコンプリートから非表示になります
- Default: 未設定の場合、すべてのスキルが
"on"です
legacy-context を Claude に名前のみで表示し、deploy を Claude と / オートコンプリートから非表示にします:
settings.json
/plugin で管理します。
マネージド設定および --settings で渡されたファイルでは、checkup(/doctor の場合など)のようなバンドルされたスキルのエイリアスのキーも、スキルに適用されます。エイリアスキーがスキル自体の名前のキーとどのように組み合わされるかを参照してください。
syncClaudeAiSkills
claude.ai アカウントで有効になっているスキルのダウンロードをオフにします。Claude Code は、claude.ai アカウントでサインインするターミナルセッション(対話型および非対話型)および Cowork とクラウドセッションで、それらを ~/.claude/skills/synced/ にダウンロードします。false に設定して、そのダウンロードを停止し、既に同期されたスキルの読み込みを停止します。Claude Code は false のみを受け入れます。true は未設定と同じで、それ以外の場所でオンになっていない場合、同期をオンにしません。
- Scope:
User, local, or managed、および--settingsで渡されたファイル。リポジトリはそれをオフにすることはできません。 - Type: Boolean
false: Claude Code は同期されたスキルのダウンロードを停止し、~/.claude/skills/synced/にあるスキルの読み込みを停止します。ユーザーまたはマネージド設定では、それらを~/.claude/skills/.trash/に移動しますtrue: 未設定と同じです
- Default: 未設定の場合、claude.ai アカウントでサインインしたセッションはスキルを同期します
settings.json
syncClaudeAiPlugins
claude.ai アカウントで有効になっているプラグインのダウンロードをオフにします。Claude Code は、claude.ai アカウントでサインインするターミナルセッションの開始時、および Cowork セッションで、それらを ~/.claude/plugins/synced/ にダウンロードし、各プラグインを <name>@synced として読み込みます。false に設定して、そのダウンロードを停止し、既に同期されたプラグインの読み込みを停止します。Claude Code は false のみを受け入れます。true は未設定と同じで、それ以外の場所でオンになっていない場合、同期をオンにしません。Claude Code v2.1.273 以降が必要です。
- Scope:
User, local, or managed、および--settingsで渡されたファイル。リポジトリはそれをオフにすることはできません。 - Type: Boolean
false: Claude Code は同期されたプラグインのダウンロードを停止し、~/.claude/plugins/synced/にあるプラグインの読み込みを停止します。ユーザーまたはマネージド設定では、それらを~/.claude/plugins/.trash/に移動しますtrue: 未設定と同じです
- Default: 未設定の場合、claude.ai アカウントでサインインしたセッションはプラグインを同期します
enabledPlugins で "<name>@synced": false を設定します。
この例は、マシンがどのセッションでもアカウントのプラグインをダウンロードするのを防ぎます:
settings.json
allowedChannelPlugins
チャネルプラグインが組織内のセッションにメッセージをプッシュできるかを選択します。設定すると、Claude Code はデフォルトの Anthropic 許可リストの代わりにリストを使用します。各エントリはプラグインとそれが由来するマーケットプレイスに名前を付けます。
- Scope:
Managed - Type:
marketplaceおよびplugin文字列を持つオブジェクトの配列。エントリは代わりに"telegram@claude-plugins-official"などの"plugin@marketplace"文字列である可能性があり、Claude Code はそれを同等のオブジェクトとして扱います。文字列形式には Claude Code v2.1.267 以降が必要です。以前のバージョンは、1 つを含む場合、全体のallowedChannelPlugins値を拒否します - Default: 未設定の場合、Claude Code はデフォルトの Anthropic 許可リストを使用します
managed-settings.json
channelsEnabled ゲートをアカウントに渡した後に有効になります。Team および Enterprise プラン、およびマネージド設定を持つ Console アカウントでは、channelsEnabled: true を意味します。チャネルプラグインの実行を制限するを参照してください。
blockedMarketplaces
組織のプラグインマーケットプレイスソースをブロックします。Claude Code はマーケットプレイスの追加時およびプラグインのインストール、更新、リフレッシュ、自動更新時にブロックリストをチェックするため、ポリシーを設定する前に誰かが追加したマーケットプレイスは、プラグインをフェッチするために使用することはできません。ブロックされたソースはダウンロード前にチェックされるため、ファイルシステムに触れることはありません。
claude.ai 管理コンソールでこのキーを設定する場合、claude.ai は、制限の仕組みで説明されているように、組織内の誰かが claude.ai から git リポジトリからマーケットプレイスを追加するときにも適用します。
- Scope:
Managed - Type:
strictKnownMarketplacesと同じ形式のマーケットプレイスソースオブジェクトの配列 - Default: 未設定の場合、マーケットプレイスはブロックされません
managed-settings.json
"owner/*" を使用して、その GitHub オーナーの下のすべてのリポジトリをブロックできます。これには Claude Code v2.1.223 以降が必要です。{ "source": "skills-dir" } を追加して、Claude Code が ~/.claude/skills/ から @skills-dir プラグインを読み込むのを停止し、マーケットプレイスを制限しません。マネージドマーケットプレイス制限を参照してください。
channelsEnabled
組織のチャネルを許可します。claude.ai Team および Enterprise プランでは、Claude Code はこれを true に設定するまでチャネルをブロックします。API キーで認証する Anthropic Console アカウントの場合、チャネルはデフォルトで許可されます。組織がマネージド設定をデプロイする場合、Claude Code はこのキーを true に設定するまで、これらのアカウントのチャネルもブロックします。
- Scope:
Managed - Type: Boolean
true: Claude Code は組織のチャネルを許可しますfalse: 未設定と同じです。チャネルがブロックされるかどうかはプランによって異なります(Default を参照)
- Default: 未設定。チャネルは Team および Enterprise プランおよびマネージド設定を持つ Console アカウントでブロックされ、Pro および Max プランおよびマネージド設定のない Console アカウントで許可されます
managed-settings.json
allowedChannelPlugins を設定します。エンタープライズコントロールを参照してください。
disableCommandPluginSources
command プラグインソースをブロックします。これはユーザーのマシンでマーケットプレイス宣言コマンドを実行してプラグインをインストールします。true に設定すると、Claude Code はコマンドを実行せず、コマンドソースプラグインをインストールまたは更新せず、既にインストールされているプラグインの読み込みを停止します。false に設定して明示的に許可します。コマンドソースをブロックするときはいつでも、true に設定するか allowManagedHooksOnly の下で未設定のままにするかに関わらず、マーケットプレイス headersHelper コマンドもブロックします。ただし、マネージド設定自体が宣言するマーケットプレイスは除きます。Claude Code v2.1.229 以降が必要で、headersHelper ブロックには v2.1.238 以降が必要です。
- Scope:
Managed - Type: Boolean
true: Claude Code はマーケットプレイス宣言コマンドを実行せず、コマンドソースプラグインをインストールまたは更新せず、既にインストールされているプラグインの読み込みを停止しますfalse: Claude Code はコマンドソースプラグインを明示的に許可します
- Default: 未設定の場合、Claude Code は
allowManagedHooksOnlyに従います。フック実行をマネージド設定に制限する組織はコマンドソースも無効になります
managed-settings.json
pluginSuggestionMarketplaces
スピナーチップおよび /plugin Discover タブの上部にピン留めされた、コンテキスト内インストール提案として表示できるプラグインのマーケットプレイスに名前を付けます。組み込みのファーストパーティフロントエンド設計チップは影響を受けません。提案は各プラグインのマーケットプレイスエントリの relevance 宣言から来ます。
- Scope:
Managed - Type: マーケットプレイス名の配列
- Default: 未設定の場合、マーケットプレイス宣言提案は表示されません
managed-settings.json
extraKnownMarketplaces エントリとして、または strictKnownMarketplaces のエントリとして。Claude Code は、許可リストされた名前の下で別のソースから登録されたマーケットプレイスを無視します。公式マーケットプレイスはソース要件から除外されます。その名前を許可リストするだけで十分です。その名前は公式 Anthropic ソースからのみ登録できるためです。コンテキストでプラグインを提案するを参照してください。
pluginTrustMessage
インストール前に Claude Code が表示するプラグイン信頼警告に、組織独自のテキストを追加します。たとえば、内部マーケットプレイスからのプラグインが検証されていることを確認します。
- Scope:
Managed - Type: 文字列
- Default: 未設定の場合、Claude Code は標準警告のみを表示します
managed-settings.json
strictKnownMarketplaces
組織内のユーザーがプラグインを追加およびインストールできるプラグインマーケットプレイスソースを制限します。Claude Code はマーケットプレイスの追加時およびプラグインのインストール、更新、リフレッシュ、自動更新時に許可リストを実施します。ネットワークまたはファイルシステム操作の前に実施されるため、ポリシーを設定する前に誰かが追加したマーケットプレイスは、そのソースが一致しなくなると使用できません。ブロックされたユーザーはマネージドポリシーに名前を付けるエラーを表示します。
claude.ai 管理コンソールでこのキーを設定する場合、claude.ai は、制限の仕組みで説明されているように、組織内の誰かが claude.ai から git リポジトリからマーケットプレイスを追加するときにも適用します。
- Scope:
Managed - Type: マーケットプレイスソースオブジェクトの配列。許可されたソースタイプを参照してください
- Default: 未設定の場合、ユーザーは任意のマーケットプレイスを追加できます。空の配列は、公式 Anthropic マーケットプレイスを含むすべてのマーケットプレイスソースをブロックする完全なロックダウンです
v2.0 ref にピン留めされ、1 つはホストされた marketplace.json URL です:
managed-settings.json
allowedMarketplaces として書くこともできます。マーケットプレイスキーエイリアスは、Claude Code がエイリアスをどのように扱うか、およびどのバージョンがそれを受け入れるかを説明しています。このキーはポリシーゲートです。ユーザーが追加できるものを制御しますが、何も登録しません。制限と事前登録を 1 つのファイルで行うには、extraKnownMarketplaces と組み合わせるを参照してください。ユーザー向けビューについては、マネージドマーケットプレイス制限を参照してください。
許可されたソースタイプ
以下の各エントリは、ソースタイプごとに 1 つの許可リストエントリと、それが受け入れるフィールドを示しています。ほとんどのタイプは正確に一致します。hostPattern と pathPattern は正規表現で一致し、github エントリはオーナーワイルドカードを使用できます。
3 つのソースタイプはテーブルを超えたルールを持ちます:
-
url: URL マーケットプレイスはmarketplace.jsonファイルのみをダウンロードし、Claude Code はそのサーバーから相対パスでプラグインファイルをフェッチしないため、そのプラグインは相対パス以外のプラグインソース(同じホストにある可能性があるアーカイブ URL など)を使用する必要があります。相対パスを持つプラグインの場合は、代わりに Git ベースのマーケットプレイスを使用してください。相対パスを持つプラグインが URL ベースのマーケットプレイスで失敗するを参照してください。 -
hostPattern: 各リポジトリをリストせずに、内部 GitHub Enterprise または GitLab サーバー上のすべてのマーケットプレイスを許可するために使用します。Claude Code はgithubソースをgithub.comに対して一致させ、urlソースからホスト名を取得し、git URL の形式に応じてgitソースから取得します:https://やssh://などのスキーム付き URL: URL のホスト名。- スキームなしの SSH アドレス、git の
user@host:path形式(git@git.example.com:tools/plugins.gitなど):@と:の間のホスト。これは git が接続するホストです。 - スキームなしの他の形式: ホストなし、したがって
strictKnownMarketplaceshostPatternエントリは一致しません。blockedMarketplaceshostPatternの場合、Claude Code はより広い形式のセットからホストを取得するため、ブロックリストエントリはそのような形式と一致する可能性があります。v2.1.234 より前では、strictKnownMarketplaceshostPatternも git が SSH アドレスとして扱わない一部の形式と一致していました。
fileおよびdirectoryソースはホストを持たず、hostPatternエントリと一致しません。 -
pathPattern: ネットワークソースのhostPatternエントリと共にファイルシステムマーケットプレイスを許可するために使用します。".*"はすべてのローカルパスを許可します。"^/opt/approved/"などのより狭いパターンはディレクトリに制限します。
@skills-dir プラグイン を ~/.claude/skills/ から読み込むのを停止します。それらの読み込みを続けるには、{ "source": "skills-dir" } エントリを追加してください。このエントリはこのキーと blockedMarketplaces の外では意味がありません。
オーナーワイルドカード
そのrepo 値が "<owner>/*" である github エントリは、その GitHub オーナーの下のすべてのリポジトリと一致します。オーナーワイルドカードには Claude Code v2.1.223 以降が必要で、strictKnownMarketplaces および blockedMarketplaces でのみ機能します。extraKnownMarketplaces や /plugin marketplace add などの他の場所で github ソースが表示される場合、repo 値は単一のリポジトリに名前を付ける必要があります。v2.1.223 より前では、Claude Code はエントリを文字通り比較したため、許可リストエントリはリポジトリと一致せず、ブロックリストエントリは何もブロックしませんでした。単一リポジトリエントリはすべてのバージョンで実施されます。
このエントリは acme-corp 組織内のマーケットプレイスリポジトリを許可します:
managed-settings.json
*、*/plugins、または acme-corp/tools-* などのエントリを無効として無視するため、リポジトリと一致しません。
マッチングルールは 2 つの設定間で異なります:
正確なマッチング
オーナーワイルドカードgithub エントリと正規表現でマッチングされた hostPattern および pathPattern エントリを除くすべてのソースタイプについて、Claude Code はユーザーの追加をエントリと正確に一致する場合にのみ許可します。Git ベースのソース github および git の場合、正確なマッチングはオプションフィールドを含みます:
repoまたはurlは正確に一致する必要がありますrefフィールドは正確に一致する必要があります。または両方が未定義である必要がありますpathフィールドは正確に一致する必要があります。または両方が未定義である必要があります
{ "source": "github", "repo": "acme-corp/plugins" }および{ "source": "github", "repo": "acme-corp/plugins", "ref": "main" }{ "source": "github", "repo": "acme-corp/plugins", "path": "marketplace" }および{ "source": "github", "repo": "acme-corp/plugins" }
公式マーケットプレイスのみを許可する
公式 Anthropic マーケットプレイスのみを許可するには、そのリポジトリをリストします:managed-settings.json
- マシンの最初の対話的セッションの前に実行される非対話型環境。
- Claude Code が VS Code 拡張機能を通じてのみ実行されたマシン。
- Claude Code が既に対話的ターミナルセッションを実行したマシン。マーケットプレイスをブロックするポリシー(空の配列ロックダウンなど)の下。Claude Code はブロックされた試行を記録し、ポリシーが変更された後は再試行しません。
managed-settings.json の extraKnownMarketplaces にマーケットプレイスを追加して Claude Code が自動的に登録するか、claude plugin marketplace add anthropics/claude-plugins-official を実行してください。
extraKnownMarketplaces と組み合わせる
2 つのキーは異なるジョブを実行します。この表はそれらを比較しています:
すべてのユーザーのマーケットプレイスを制限および事前登録するには、
managed-settings.json で両方を設定します:
managed-settings.json
strictKnownMarketplaces のみが設定されている場合、ユーザーは /plugin marketplace add で許可されたマーケットプレイスを自分で追加できます。公式 Anthropic マーケットプレイスは Claude Code が自動的に登録する唯一のマーケットプレイスであり、許可リストがそれを許可する場合のみです。公式マーケットプレイスのみを許可するは、それが見逃すマシンをリストしています。
strictPluginOnlyCustomization
ユーザーおよびプロジェクトソースからスキル、エージェント、フック、および MCP サーバーをブロックして、プラグインまたはマネージド設定からのみ来るようにします。strictKnownMarketplaces と組み合わせて、完全なカスタマイズサプライチェーンを制御します。マーケットプレイス許可リストはユーザーがインストールできるプラグインを制御します。
- Scope:
Managed - Type: すべての 4 種類のカスタマイズをロックするには
true、またはロックする種類に名前を付ける配列("skills"、"agents"、"hooks"、"mcp"から) - Default: 未設定の場合、何もロックされません
managed-settings.json
strictPluginOnlyCustomization.skills
skills サーフェスをロックします。Claude Code は ~/.claude/skills/ および .claude/skills/ からのスキル、~/.claude/commands/ および .claude/commands/ からのカスタムコマンド、--add-dir ディレクトリの下のスキル、および claude.ai アカウントから同期されたスキルの読み込みを停止し、プラグインスキル、バンドルされたスキル、およびマネージドポリシーディレクトリ内のスキルの読み込みを続けます。
- Scope:
Managed - Type:
strictPluginOnlyCustomization配列内の文字列"skills" - Default: ロックされていません
managed-settings.json
strictPluginOnlyCustomization.agents
agents サーフェスをロックします。Claude Code は ~/.claude/agents/ および .claude/agents/ からのエージェントの読み込みを停止し、プラグインエージェント、組み込みエージェント、およびマネージドポリシーディレクトリ内のエージェントの読み込みを続けます。
- Scope:
Managed - Type:
strictPluginOnlyCustomization配列内の文字列"agents" - Default: ロックされていません
managed-settings.json
strictPluginOnlyCustomization.hooks
hooks サーフェスをロックします。Claude Code はユーザー、プロジェクト、およびローカル settings.json からのフックの実行を停止し、プラグインフックおよびマネージド設定内のフックの実行を続けます。
- Scope:
Managed - Type:
strictPluginOnlyCustomization配列内の文字列"hooks" - Default: ロックされていません
managed-settings.json
strictPluginOnlyCustomization.mcp
mcp サーフェスをロックします。Claude Code は ~/.claude.json および .mcp.json からの MCP サーバーの読み込みを停止し、プラグイン MCP サーバー、managed-mcp.json サーバー、および managedMcpServers からのサーバーの読み込みを続けます。
- Scope:
Managed - Type:
strictPluginOnlyCustomization配列内の文字列"mcp" - Default: ロックされていません
managed-settings.json
enabledPlugins
個別のプラグインをオンまたはオフにします。plugin-name@marketplace-name でキー付けされます。どのスコープでもエントリを持たないプラグインは、その defaultEnabled 値にフォールバックします。/plugin または claude plugin enable でプラグインを有効または無効にすると、Claude Code はこのキーを書き込みます。
- Scope:
Any file - Type:
plugin-name@marketplace-nameを Boolean にマッピングするオブジェクト - Default: 未設定の場合、各プラグインはその
defaultEnabled値に従います
team-tools マーケットプレイスから 2 つのプラグインを有効にし、personal から 1 つを無効にします:
settings.json
- User settings: 個人的なプラグイン設定
- Project settings: リポジトリ内のすべてのユーザーと共有されるプラグイン
- Local settings: マシンごとのオーバーライド。Claude Code がそこに設定を保存するときに gitignored
- Managed settings: 組織全体のポリシー。ここで
falseに設定されたプラグインはすべてのスコープでインストールがブロックされ、マーケットプレイスから非表示になります
~/.claude/settings.json でプラグインを false に設定しても、プロジェクトの .claude/settings.json が有効にするプラグインは無効になりません。マシン上でプロジェクト有効プラグインをオプトアウトするには、代わりに .claude/settings.local.json で false に設定してください。マネージド設定で強制的に有効にされたプラグインは、マネージド設定がローカル設定をオーバーライドするため、この方法では無効にできません。
外部ソース(GitHub リポジトリや npm パッケージなど)からのプラグインをプロジェクトの .claude/settings.json で有効にしても、他のユーザーにはインストールされません。プラグインを読み込むすべてのパスで、Claude Code はプラグインがインストールされていないと報告します。各ユーザーが それ自体をインストールするまで。
extraKnownMarketplaces
追加のプラグインマーケットプレイスを名前で登録して、リポジトリを開く人、またはマネージド設定が到達するすべての人が、自分で追加することなくマーケットプレイスを取得できるようにします。Claude Code は、既に知らないマーケットプレイスを登録します。enabledPlugins がそれから名前を付けるプラグインがインストールされるかどうかは、プラグインのソースとどのファイルがそれを有効にするかに依存します。そのエントリにはルールがあります。
- Scope:
Any file。Claude Code はリポジトリの.claude/settings.jsonまたは.claude/settings.local.jsonのエントリを、そのフォルダーのワークスペース信頼ダイアログを受け入れた後にのみ受け入れます。信頼していないフォルダー(-p実行を含む)では、メッセージなしで無視します。 - Type: マーケットプレイス名を
sourceオブジェクトとオプションのautoUpdateBoolean を持つオブジェクトにマッピングするオブジェクト - Default: 未設定
settings.json
additionalMarketplaces として書くこともできます。マーケットプレイスキーエイリアスを参照してください。
source と共に "autoUpdate": true を設定して、Claude Code がスタートアップ後にバックグラウンドでそのマーケットプレイスをリフレッシュし、インストールされたプラグインを更新するようにします。省略すると、claude-plugins-official およびほとんどの他の公式 Anthropic マーケットプレイスはデフォルトで true、サードパーティマーケットプレイスはデフォルトで false です。自動更新を構成するを参照してください。
複数の設定ファイルが同じ名前の下でマーケットプレイスエントリを定義する場合、Claude Code は最高優先度ファイルからのエントリ全体を使用します。そのエントリは低優先度エントリを置き換え、そのフィールドを継承しないため、再定義は 1 つのファイルの source.headers 認証情報を別のファイルが制御する URL と組み合わせることはできません。v2.1.228 より前では、Claude Code は同じ名前のエントリをフィールドごとにマージしたため、より高い優先度ファイルのエントリは、設定しなかったフィールド(別のファイルの headers を含む)を継承できました。
マーケットプレイスソースタイプ
source オブジェクトは次のいずれかの形式を取ります:
github: GitHub リポジトリ、repoを使用git: 任意の git URL、urlを使用url:marketplace.jsonファイルへの直接 URL、urlとオプションのheadersおよびheadersHelperを使用して認証アクセスします。headersHelperは値が短命すぎてリストできないヘッダーを出力するコマンドに名前を付け、Claude Code v2.1.238 以降が必要ですfile:marketplace.jsonファイルへのローカルパス、pathを使用directory: ローカルファイルシステムパス、pathを使用。開発用、または組織が各マシンにデプロイするマーケットプレイスに使用します。settings: ホストされたリポジトリなしで設定ファイルに直接宣言されたインラインマーケットプレイス、nameおよびpluginsを使用
git ソースタイプは、自己ホストされた GitLab や Bitbucket を含む任意の git ホスティングサービスで機能します。Claude Code はそのマシンで git clone が使用するのと同じ認証でリポジトリをクローンします。設定された認証ヘルパーまたは SSH キー。GITHUB_TOKEN などのプロバイダートークンは、それを読む認証ヘルパーを通じてのみ有効になります。セットアップの詳細については、プライベートリポジトリを参照してください。
github および git ソースの場合、Claude Code はマーケットプレイスリポジトリをクローンして追加または更新するときに Git LFS コンテンツをダウンロードしません。LFS トラッキングファイルはポインターファイルとしてチェックアウトされ、追加または更新出力はいくつかのレポートを報告します。
source オブジェクト内の skipLfs フィールドは受け入れられ、効果がありません。v2.1.274 より前では、Claude Code は "skipLfs": true を設定しない限り LFS コンテンツをダウンロードしました。
URL ソースの場合、headers の認証情報が期限切れになり、コマンドが新しい認証情報を生成する必要がある場合は、source オブジェクト内に headersHelper を設定します。Claude Code v2.1.238 以降が必要です。コマンドが出力する必要があるもの、および Claude Code がそれを実行する場所については、headersHelper コマンドを書くを参照してください。Claude Code が headersHelper コマンドをスキップするか、その出力をドロップする場合については、Claude Code が headersHelper コマンドをスキップするか、その出力をドロップする場合を参照してください。https:// マーケットプレイス URL に headersHelper を設定すると、Claude Code は 2 つのポイントでコマンドを実行し、1 回の実行の出力を最大 60 秒間再利用します:
- そのマーケットプレイスの
marketplace.jsonの各フェッチの前(後続のリフレッシュを含む)。Claude Code はそのフェッチで出力されたヘッダーを送信します。 - マーケットプレイス URL のオリジン上の各プラグインアーカイブダウンロードの前。つまり、同じスキーム、ホスト、ポート。Claude Code はそのダウンロードで出力を送信し、他のダウンロードはヘッダーを取得しません。
--add-dir で追加するディレクトリの .claude/settings.json または .claude/settings.local.json に設定された headersHelper を無視します。url ソースおよびインラインプラグインエントリの両方で、そのファイルに設定された固定 headers のみを送信します。ユーザーが headersHelper コマンドを受け入れる方法は他の設定ファイルをカバーしています。
settings ソースにリストされたプラグインは、GitHub や npm などの外部ソースを参照する必要があり、name はマーケットプレイスキーと一致する必要があります。各プラグインを enabledPlugins で個別に有効にする必要があります。この例は 1 つのプラグインをインラインで宣言します:
settings.json
source が archive である source: 'settings' の下のプラグインエントリは、アーカイブダウンロード用に headers を設定できます。headers に入れる値が短命の場合(レジストリがリクエストで作成するトークンなど)、代わりに headersHelper コマンドを設定します。エントリは両方を設定できます。両方のフィールドには Claude Code v2.1.238 以降が必要です。
Claude Code はエントリの headers と、コマンドが出力するもの、そのプラグインのアーカイブダウンロードで送信し、他のダウンロードでは送信しません。Claude Code はユーザーが そのプラグイン 1 つをインストールまたは更新する場合にのみコマンドを実行します。3 つのさらなるルールはエントリを保持するファイルに依存します:
strict: マーケットプレイスのmarketplace.jsonのエントリとは異なり、設定ファイルのエントリはマニフェストフィールドをインラインする必要がないため、"strict": falseは必要ありません。厳密モードを参照してください。- Folder trust: プロジェクトの
.claude/settings.jsonまたは.claude/settings.local.jsonのエントリの場合、Claude Code はユーザーが そのフォルダーも信頼した場合にのみコマンドを実行します。 - Header filter: Claude Code は、リポジトリがこれらのファイルを提供できるため、プロジェクトの
.claude/settings.jsonまたは.claude/settings.local.jsonのエントリから リクエストルーティングおよびクライアント ID ヘッダー名をドロップします。Claude Code はカタログエントリおよび--add-dirディレクトリの設定のエントリに同じフィルターを適用し、ユーザー設定、--settingsファイル、またはマネージド設定のエントリにはフィルターを適用しません。
マーケットプレイスキーエイリアス
Claude Code v2.1.232 以降では、extraKnownMarketplaces を additionalMarketplaces として、strictKnownMarketplaces を allowedMarketplaces として書くことができます。Claude Code は各エイリアスを次のように扱います:
- 以前のバージョンはエイリアスを無視するため、マネージド設定ファイルなど、古いバージョンも読む設定ファイルで正規のスペリングを保持してください。
- 正規キーを受け入れる任意の設定ファイルで、Claude Code はエイリアスを正規キーと同じように読みます。
- Claude Code はファイルを更新するときに
additionalMarketplacesをextraKnownMarketplacesに書き直す可能性があります。 - 1 つのファイルで両方のスペリングを設定する場合、Claude Code は正規値を使用し、エイリアスを無視します。
pluginConfigs
プラグインの userConfig 設定ダイアログに与える非機密の回答を、プラグイン ID でキー付けして保存します。Claude Code は、ダイアログに入力するときにこのキーをユーザー設定に書き込むため、手動で編集する必要はありません。Claude Code は機密オプションを macOS Keychain に保存し、Keychain が書き込みを拒否する場合は ~/.claude/.credentials.json にフォールバックします。サポートされているキーチェーンのないプラットフォームでは、~/.claude/.credentials.json に保存します。
- Scope:
User or managed - Type: プラグイン ID を
optionsフィールドを持つオブジェクトにマッピングするオブジェクト。各オプション名を文字列、数値、Boolean、または文字列の配列にマッピングし、オプションのmcpServersフィールドは同じ形状でサーバーごとのユーザー設定値を保持します - Default: 未設定
acme-tools からの deployer プラグインの api_endpoint オプションを保存します:
settings.json
@builtin サフィックス付きで同じキーの下にオプションを保存します。たとえば、Claude Code が AGENTS.md ファイルを読み込むかどうかを制御する Project instructions 設定は pluginConfigs["cc-plugin-agents-md@builtin"].options.instructionFiles です。v2.1.285 より前では、このプラグインの ID は agents-md@builtin でした。それ以降のバージョンは、どちらの ID の下のエントリも読み込みます。
Claude Code はプロジェクトおよびローカルエントリを無視します。これらの値をプラグインフック、MCP、および LSP 設定に置き換えるため、クローンされたリポジトリはそれらを提供できません。v2.1.207 より前では、プロジェクトおよびローカル設定も読まれていました。
prependPlugins
マネージドプラグインのリストで、その mods がユーザーがインストールするすべての mod の前に実行されます。リストされた順序で実行されます。マネージド設定でこのキーを設定する場合、リストに sec-default@builtin を名前付けして、組み込みガードを保持します。マネージド設定では、Claude Code はプラグインが組織のものとしてカウントされないプラグインの ID をスキップします。組織の mod をインストールして順序を設定するを参照してください。これらの条件と 2 つの順序付けキーがどのように機能するかについて。
- Scope:
User or managed。Claude Code はマネージド設定からキーを読みます。マネージド設定のないマシン上でのみ、Team または Enterprise プランでサインインしていないユーザーのユーザー設定からキーを読みます。プロジェクトおよびローカル設定、および--settingsファイルのキーを無視します。 - Type:
plugin-name@marketplace-name文字列の配列 - Default: 未設定
managed-settings.json
appendPlugins
マネージドプラグインのリストで、その mods がユーザーがインストールするすべての mod の後に実行されます。リストされた順序で実行されます。prependPlugins と appendPlugins の両方にリストされている ID は、前置されます。マネージド設定では、Claude Code はプラグインが 組織のものとしてカウントされないプラグインの ID をスキップします。
- Scope:
User or managed。Claude Code はマネージド設定からキーを読みます。マネージド設定のないマシン上でのみ、Team または Enterprise プランでサインインしていないユーザーのユーザー設定からキーを読みます。プロジェクトおよびローカル設定、および--settingsファイルのキーを無視します。 - Type:
plugin-name@marketplace-name文字列の配列 - Default: 未設定
managed-settings.json
MCP
Claude Code が接続する MCP サーバーと、組織が許可する MCP サーバーを制御します。MCP で外部ツールに接続すると管理対象 MCP 設定を参照してください。allowAllClaudeAiMcps
Claude Code が自身で取得するclaude.ai コネクタを、デプロイされた managed-mcp.json と一緒に読み込みます。このキーがない場合、managed-mcp.json は MCP サーバーを排他的に制御し、これらのコネクタを抑制します。
- スコープ:
Managed。ユーザーは排他的制御によって抑制されたコネクタを再度有効にすることはできません。 - タイプ: ブール値
true: Claude Code は、デプロイされたmanaged-mcp.jsonと一緒に claude.ai コネクタを読み込みますfalse: デプロイされたmanaged-mcp.jsonは MCP サーバーを排他的に制御し、Claude Code が自身で取得するclaude.ai コネクタを抑制します
- デフォルト:
false。デプロイされたmanaged-mcp.jsonは Claude Code が自身で取得する claude.ai コネクタを抑制します
managed-settings.json
allowedMcpServersとdeniedMcpServersは、このキーが読み込むコネクタにも適用されます。managed-mcp.json を持つホスト(自己ホスト型ランナーなど)のクラウドセッションに配信されるコネクタは、抑制されたままです。管理対象セットと一緒に claude.ai コネクタを許可するを参照してください。
allowClaudeInChromeWithManagedMcp
デプロイされた managed-mcp.json と一緒に、組み込みのClaude in Chromeサーバーを実行できるようにします。このキーがない場合、デプロイされた managed-mcp.json はターミナルセッションで Claude in Chrome をブロックします。Claude Code v2.1.282 以降が必要です。
- スコープ:
Managed。デバイス自身の管理設定からのみ。MDM でデプロイされた plist または HKLM レジストリキー、またはシステムmanaged-settings.jsonファイル。Claude Code はサーバー管理設定、ユーザー書き込み可能な HKCU レジストリ、およびユーザーまたはプロジェクト設定では無視します。 - タイプ: ブール値
true: 組み込みの Claude in Chrome サーバーは、デプロイされたmanaged-mcp.jsonと一緒に実行できますfalse: デプロイされたmanaged-mcp.jsonはターミナルセッションで Claude in Chrome をブロックします
- デフォルト:
false。デプロイされたmanaged-mcp.jsonはターミナルセッションで Claude in Chrome をブロックします
managed-settings.json
claude-in-chrome のdeniedMcpServersエントリは、このキーがオンの場合でもサーバーをブロックします。管理対象セットと一緒に Claude in Chrome を許可するを参照してください。
allowedMcpServers
ユーザーが追加できる MCP サーバーをホワイトリストに登録します。Claude Code は、プラグインサーバー、--mcp-config で渡されたサーバー、claude.ai からのサーバーを含め、どこで定義されていても、エントリに一致しないサーバーをブロックします。
Claude in Chrome、実行中のVS CodeまたはJetBrains IDE に Claude Code が接続する ide サーバー、CLI 自体が設定するサーバーなどの組み込みサーバーは、ホワイトリストから除外され、デニーリストは引き続きこれらに適用されます。Claude Code v2.1.268 以降では、Claude Tagセッションの Slack ツールもホワイトリストから除外され、デニーリストは引き続きこれらに適用されます。インプロセス type: "sdk" サーバーは両方のリストから除外されます。セッションを開始したアプリがこれらを登録します。
組織が配信するサーバーもホワイトリストから除外され、デニーリストは引き続きこれらに適用されます。この除外は、すべてのmanagedMcpServersエントリと、${VAR} 展開を使用しない値を持つmanaged-mcp.jsonエントリをカバーします。完全なチェック順序については、サーバーの評価方法を参照してください。v2.1.259 より前では、managed-mcp.json からのサーバーも一致する必要がありました。
- スコープ:
Any file。allowManagedMcpServersOnlyが設定されていない限り、すべてのファイルからのエントリが 1 つのホワイトリストにマージされます。管理設定にデプロイして、これを強制します。 - タイプ: オブジェクトの配列。各オブジェクトは正確に 1 つのキーを持ちます。
serverNameは、文字、数字、ハイフン、アンダースコアに限定された文字列です。serverCommandは、コマンドとその引数を正確に一致させた配列です。またはserverUrlは、*ワイルドカードを含む URL パターンです - デフォルト: 未設定。すべてのサーバーが許可されます。空の配列は、ユーザーが追加するすべてのサーバーをブロックします
npx コマンドが開始する stdio サーバーのみを許可します。
settings.json
deniedMcpServersエントリが優先されるため、両方のリストにあるサーバーはブロックされます。リストに serverCommand エントリが含まれると、stdio サーバーは serverCommand エントリと一致する必要があり、serverUrl エントリが含まれると、リモートサーバーは serverUrl エントリと一致する必要があります。serverName の一致は、その種類のサーバーをもはや許可しません。ホワイトリストとデニーリストを使用したポリシーベースの制御を参照してください。
allowManagedMcpServersOnly
管理対象ホワイトリストのみを適用対象にします。Claude Code は、ユーザー、プロジェクト、ローカル設定の allowedMcpServers を無視し、管理設定からのみ allowedMcpServers を読み込みます。deniedMcpServersは引き続きすべての設定スコープからマージされるため、ユーザーは自分自身のためにサーバーをブロックできます。管理者は、ユーザー自身の設定が管理対象ホワイトリストが許可するものを拡大できないようにするために、これを設定します。
- スコープ:
Managed - タイプ: ブール値
true: Claude Code は管理設定からのみallowedMcpServersを読み込み、ユーザー、プロジェクト、ローカル設定のホワイトリストを無視しますfalse: すべての設定スコープのホワイトリストがマージされます
- デフォルト:
false。すべての設定スコープのホワイトリストがマージされます
github という名前のサーバーのみを許可します。
managed-settings.json
deniedMcpServers
特定の MCP サーバーをブロックします。Claude Code は、プラグインサーバー、--mcp-config で渡されたサーバー、managed-mcp.json からのサーバー、managedMcpServersからのサーバー、および自身で取得するclaude.ai コネクタを含め、どこで定義されていても、一致するサーバーの読み込みを拒否します。インプロセス type: "sdk" サーバーは除外されます。セッションを開始したアプリがこれらを登録します。
- スコープ:
Any file。すべてのファイルからのエントリが 1 つのデニーリストにマージされ、allowManagedMcpServersOnlyはこれを変更しません。管理設定にデプロイして、これを強制します。 - タイプ: オブジェクトの配列。各オブジェクトは正確に 1 つのキーを持ちます。
serverNameは文字列です。"claude.ai Slack"などの claude.ai コネクタの表示名が機能します。serverCommandは、コマンドとその引数を正確に一致させた配列です。またはserverUrlは、*ワイルドカードを含む URL パターンです - デフォルト: 未設定。サーバーはブロックされません。空の配列も何もブロックしません
settings.json
allowedMcpServersより優先されるため、両方のリストにあるサーバーはブロックされます。ホワイトリストとデニーリストを使用したポリシーベースの制御を参照してください。
disableClaudeAiConnectors
Claude Code が自身で取得するclaude.ai MCP コネクタをオフにして、取得も接続もしません。任意の設定ファイルで true が適用されます。チェックインされたプロジェクト .claude/settings.json はリポジトリをこれらのコネクタから除外できますが、プロジェクトレベルの false はユーザーレベルまたは管理レベルの true をオーバーライドできません。
- スコープ:
Any file - タイプ: ブール値
true: Claude Code はこれらのコネクタを取得も接続もしませんfalse: 未設定と同じです。別の設定ファイルまたはENABLE_CLAUDEAI_MCP_SERVERSがこれらをオフにしない限り、Claude Code はコネクタを取得します
- デフォルト:
false。Claude Code はコネクタを取得します - セッションごとのオーバーライド:
ENABLE_CLAUDEAI_MCP_SERVERSをfalseに設定すると、1 つのセッションのコネクタがオフになります。2 つのうちどちらがオフにしても、もう一方はオンに戻すことはできません
settings.json
--mcp-config で明示的に渡すサーバーは影響を受けません。すべてのコネクタをブロックする代わりに個別のコネクタをブロックするには、deniedMcpServersを使用します。claude.ai コネクタを無効にするを参照してください。
disabledMcpjsonServers
プロジェクトの .mcp.json ファイルで定義された特定のサーバーを拒否して、Claude Code がこれらに接続したり、承認を求めたりしないようにします。任意の設定ファイルでの拒否が適用されます。リポジトリにチェックインされたプロジェクト .claude/settings.json を含みます。
- スコープ:
Any file - タイプ: 文字列の配列。
.mcp.jsonに表示されるサーバー名 - デフォルト: 未設定
settings.json
.claude/settings.local.json に書き込みます。claude mcp get <name> は、拒否されたサーバーを ✘ Rejected (see disabledMcpjsonServers in settings) として表示します。拒否はenabledMcpjsonServersとenableAllProjectMcpServersより優先されます。
enableAllProjectMcpServers
プロジェクト .mcp.json ファイルで定義されたすべての MCP サーバーをプロンプトなしで承認します。Claude Code は、承認ダイアログですべてのサーバーを承認することを選択すると、このキーを .claude/settings.local.json に書き込みます。
- スコープ:
Any file。信頼ダイアログを受け入れていないフォルダでは、Claude Code はユーザー設定、管理設定、--settingsからこれを尊重し、共有プロジェクトファイルではセッション内とclaude mcp listおよびclaude mcp getで無視します。プロジェクトサーバーの承認とワークスペースの信頼は、追跡されていない.claude/settings.local.jsonがいつカウントされるかを説明しています。 - タイプ: ブール値
true: Claude Code はプロジェクト.mcp.jsonファイルで定義されたすべての MCP サーバーをプロンプトなしで承認しますfalse: Claude Code は各サーバーの承認を求めます。信頼されたフォルダでは、優先度の高いファイルのfalseは優先度の低いファイルのtrueをオーバーライドします。信頼していないフォルダでは、尊重されるファイルのtrueで十分です
- デフォルト: 未設定。Claude Code は各サーバーの承認を求めます
settings.json
disabledMcpjsonServersエントリはサーバーを拒否します。
enabledMcpjsonServers
プロジェクト .mcp.json ファイルで定義された特定のサーバーを承認して、Claude Code が質問なしにこれらに接続します。Claude Code は、承認ダイアログでサーバーを承認すると、このキーを .claude/settings.local.json に書き込みます。
- スコープ:
Any file。信頼ダイアログを受け入れていないフォルダでは、Claude Code はユーザー設定、管理設定、--settingsからこれを尊重し、共有プロジェクトファイルではセッション内とclaude mcp listおよびclaude mcp getで無視します。プロジェクトサーバーの承認とワークスペースの信頼は、追跡されていない.claude/settings.local.jsonがいつカウントされるかを説明しています。 - タイプ: 文字列の配列。
.mcp.jsonに表示されるサーバー名 - デフォルト: 未設定
.mcp.json から memory および github サーバーを承認します。
settings.json
disabledMcpjsonServersエントリはサーバーを拒否します。
managedMcpServers
管理設定からすべてのユーザーにリモート MCP サーバーを提供します。ユーザーは自分たちが追加したサーバーを保持し、提供されたサーバーを編集または削除することはできません。Claude Code v2.1.259 以降が必要です。
- スコープ:
Managed。Claude Code はユーザー、プロジェクト、ローカル設定でキーを警告とともにドロップし、Claude Desktop アプリのコードタブでサードパーティデプロイメント上で、またはアプリの Cowork セッションで読み込みません。Claude Desktop はこれらのセッションの MCP サーバーを供給してロックします。 - タイプ: サーバー名でキー付けされたオブジェクト。各エントリは
httpまたはsseサーバーの.mcp.json形状を持ちます。必須のhttps://urlと、オプションでheaders、oauth、その他の HTTP および SSE オプション。Claude Code は検証に失敗したエントリをドロップし、エントリに含まれる内容は条件をリストします - デフォルト: 未設定。管理設定はサーバーを提供しません
search という名前の 1 つの HTTP サーバーを提供します。
managed-settings.json
managed-mcp.json および許可リストと拒否リストとどのように組み合わされるか、およびユーザーが何を見るかについては、管理設定を通じてサーバーを提供するを参照してください。
エージェント、セッション、worktree
デフォルトエージェントを設定し、チームメイトとクロスセッションメッセージングを制御し、worktree を設定します。サブエージェントと worktree を参照してください。agent
メインスレッドを名前付きサブエージェントとして実行し、Claude Code がそのサブエージェントのシステムプロンプト、ツール制限、およびモデルをセッションに適用するようにします。同じキーは claude agents からディスパッチするセッションのデフォルトエージェントも設定します。
- スコープ:
任意のファイル - タイプ: 文字列、組み込みまたはカスタムエージェントの名前
- デフォルト: 未設定。メインスレッドは Claude Code のデフォルトエージェントとして実行されます
- セッションごとの上書き:
--agentはこのキーより優先され、1 つのセッションに適用されます
settings.json
settings.json もこのキーを提供できます。プラグインでデフォルト設定を配布するを参照してください。
crossSessionInbound
このセッションが他の Claude Code セッションから到着するメッセージに対して何を行うかを選択します。値が適用されない場合、Claude Code は 2 つのセッションの権限モードクラスからメッセージごとに決定します。Claude Code v2.1.224 以降が必要です。
- スコープ:
任意のファイル。プロジェクトまたはローカル値は、管理設定、--settingsフラグ、またはユーザー設定が提供する値より厳密な場合にのみ適用されます。 - タイプ: 文字列、以下のいずれか:
"accept": Claude Code はメッセージを Claude に配信します"hold": Claude Code はメッセージの通知を表示しますが、配信しません"refuse": Claude Code はメッセージを破棄します
- デフォルト: 未設定。Claude Code はメッセージごとに決定します
settings.json
--settings フラグ、その後ユーザー設定を読み込み、最初に見つかった値を適用します。refuse は hold より厳密で、hold は accept より厳密です。信頼できるソースのいずれもが値を設定しない場合、プロジェクトまたはローカルの hold または refuse は依然として適用され、メッセージごとのデフォルトを置き換えます。クロスセッションメッセージングを使用するセッションでは、このキーは /config に他のセッションからのメッセージとして表示され、ユーザー設定に書き込まれます。この行には Claude Code v2.1.232 以降が必要で、--settings フラグまたは管理設定がキーを設定している間、Claude Code はそれを非表示にします。
Claude Code は、認識しない値を設定すると警告します。その値がユーザー、プロジェクト、ローカル、または --settings ファイルに存在する間、Claude Code は受信メッセージを保留します。優先されるソースが accept を設定している場合でも、です。別のソースが設定する refuse は依然として適用されます。値を修正または削除して保留をクリアします。
認識しない値が管理設定にある場合、Claude Code は代わりに管理者が修正するまで refuse として扱います。v2.1.248 より前では、Claude Code は警告なしに認識しない値を無視していました。
disableAgentView
バックグラウンドエージェントとエージェントビューをオフにします:claude agents、--bg、/background、およびオンデマンドスーパーバイザー。管理設定で設定して、組織に対して強制します。
- スコープ:
任意のファイル - タイプ: ブール値
true: Claude Code はclaude agents、--bg、/background、およびオンデマンドスーパーバイザーをオフにしますfalse: エージェントビューが利用可能です
- デフォルト: 未設定。エージェントビューが利用可能です
- セッションごとの上書き:
CLAUDE_CODE_DISABLE_AGENT_VIEWは 1 つのセッションのエージェントビューをオフにします。2 つのいずれかがそれをオフにすると、もう一方はそれをオンに戻すことはできません
settings.json
isolatePeerMachines
Claude の SendMessage がこのマシンを超えたセッションの 1 つに到達する前に、明示的な承認を要求します。クロスマシンメッセージの承認を要求するを参照してください。承認プロンプトは bypassPermissions モードでも表示されます。
- スコープ:
任意のファイル。任意のスコープからのtrueが適用されるため、チェックインされたプロジェクトファイルは要件をオンにできますがオフにはできません。 - タイプ: ブール値
true: Claude Code は Claude のSendMessageがこのマシンを超えたセッションの 1 つに到達する前に承認を求めますfalse: クロスマシンメッセージはプロンプトを表示しません
- デフォルト: 未設定。クロスマシンメッセージはプロンプトを表示しません
settings.json
SendMessage 承認には Claude Code v2.1.224 以降が必要です。
processWrapper
macOS と Linux では、Claude Code が開始するバックグラウンドプロセスの前に企業ランチャーコマンドを配置します。Claude Code はランチャーを独自のコマンドラインを追加して実行するため、ランチャーは Claude Code に exec する必要があります。企業ランチャーの背後で Claude Code を実行するを参照してランチャーコントラクトを確認してください。Claude Code v2.1.210 以降が必要です。
- スコープ:
ユーザーまたは管理 - タイプ: 文字列、argv プレフィックスとしてのランチャーコマンド(絶対パスとオプション引数など)
- デフォルト: 未設定。バックグラウンドプロセスはラップされずに開始されます
- セッションごとの上書き:
CLAUDE_CODE_PROCESS_WRAPPERはこのキーより優先され、1 つのセッションに適用されます
settings.json
teammateMode
Claude Code がエージェントチームのチームメイトを表示する場所を選択します:メインターミナルペイン内、またはターミナルがサポートしている場合は分割ペイン内。表示モードを選択するを参照してください。
- スコープ:
任意のファイル。Claude Code は古いバージョンによって~/.claude.jsonに残された値も読み込みます。 - タイプ: 文字列、以下のいずれか:
"in-process": チームメイトはメインターミナルペイン内で実行されます"auto": tmux 内で実行している場合、またはPATHにit2がある iTerm2 内で実行している場合、または tmux がインストールされている場合は分割ペイン。それ以外の場合はインプロセス"tmux": ターミナルから検出された tmux または iTerm2 を使用して分割ペイン"iterm2":it2CLI を通じた iTerm2 ネイティブ分割ペイン
- デフォルト:
"in-process" - セッションごとの上書き:
--teammate-modeはこのキーより優先され、1 つのセッションに適用されます
settings.json
worktree
Claude Code が --worktree、EnterWorktree ツール、および分離されたサブエージェントとバックグラウンドセッションの git worktree を作成および管理する方法を設定します。
- スコープ:
任意のファイル - タイプ:
baseRef、symlinkDirectories、sparsePaths、およびbgIsolationを含むオブジェクト - デフォルト: 未設定
HEAD から新しい worktree をブランチし、各 worktree に node_modules をシンボリックリンクします:
settings.json
.env のような gitignore されたファイルを新しい worktree にコピーするには、設定の代わりに .worktreeinclude ファイルをプロジェクトルートに追加します。
worktree.baseRef
新しい worktree がブランチする ref を選択します。"fresh" は origin/<default-branch> からブランチして、リモートと一致するクリーンツリーを取得します。"head" は現在のローカル HEAD からブランチするため、プッシュされていないコミットとフィーチャーブランチの状態が worktree に存在します。
- スコープ:
任意のファイル - タイプ: 文字列、以下のいずれか:
"fresh": 新しい worktree はorigin/<default-branch>からブランチします"head": 新しい worktree は現在のローカルHEADからブランチします(プッシュされていないコミットを含む)
- デフォルト:
"fresh"
settings.json
"head" はメインチェックアウトの HEAD ではなく、その worktree の HEAD に解決されます。
worktree.symlinkDirectories
メインリポジトリからディレクトリを各 worktree にシンボリックリンクして、ディスク上の大きなディレクトリを複製しないようにします。
- スコープ:
任意のファイル - タイプ: 文字列の配列、リポジトリルートに相対的なディレクトリパス
- デフォルト: 未設定。Claude Code はディレクトリをシンボリックリンクしません
node_modules と .cache をすべての新しい worktree にシンボリックリンクします:
settings.json
worktree.sparsePaths
git sparse-checkout を通じて各 worktree にリストされたディレクトリのみをチェックアウトします。Claude Code はそれらのディレクトリとルートレベルのファイルのみをディスクに書き込みます。これは大規模なモノレポでより高速です。必要なディレクトリのみをチェックアウトするを参照してください。
- スコープ:
任意のファイル - タイプ: 文字列の配列、リポジトリルートに相対的なディレクトリパス
- デフォルト: 未設定。各 worktree はツリー全体をチェックアウトします
packages/my-app と shared/utils のみをチェックアウトします(ルートレベルのファイルを含む):
settings.json
.git/config で extensions.worktreeConfig を有効にします。
worktree.bgIsolation
バックグラウンドセッションがファイル編集を分離する方法を選択します。← または /background でセッションをバックグラウンドに移動した場合、このキーの値にかかわらず、そのセッションはファイルをその場で編集します。"worktree" では、Claude Code はセッションが EnterWorktree を呼び出すまでメインチェックアウトで Edit と Write をブロックします。"none" では、バックグラウンドジョブはワーキングコピーを直接編集します。git worktree が実用的でないリポジトリの場合は "none" を設定します。
- スコープ:
任意のファイル - タイプ: 文字列、以下のいずれか:
"worktree": Claude Code はセッションがEnterWorktreeを呼び出すまでメインチェックアウトでEditとWriteをブロックします"none": バックグラウンドジョブはワーキングコピーを直接編集します
- デフォルト:
"worktree"
settings.json
WorktreeCreate フックがブロックを解放し、セッションが作業ディレクトリをその場で編集できるようにします。その解放には Claude Code v2.1.203 以降が必要です。
リモート、デスクトップ、および通知
Remote Control、クラウド環境、デスクトップアプリ、および Claude Code が必要な場合に送信する通知を設定します。Remote Control を参照してください。agentPushNotifEnabled
Claude が価値があると判断した場合(たとえば、長いタスクが完了した場合など)に、電話にプッシュ通知を送信することを許可します。Claude Code はこの選択をアカウントに同期し、Remote Control が接続されている間にプッシュが到着します。/config では Push when Claude decides として表示されます。
- Scope:
Any file。Claude Code は古いバージョンによって~/.claude.jsonに残された値も読み取ります。 - Type: Boolean
true: Claude は価値があると判断した場合に電話にプッシュ通知を送信できますfalse: Claude はそれらの通知を送信しません
- Default:
false
settings.json
awaySummaryEnabled
数分間離れた後にターミナルに戻ったときに、1 行のセッション要約を表示します。false に設定するか、/config で Session recap をオフにして、要約を停止します。
- Scope:
Any file - Type: Boolean
true: 数分間離れた後に戻ったときに、1 行のセッション要約が表示されますfalse: Claude Code は要約を表示しません
- Default: 未設定なので、要約はオンです
- Per-session overrides:
CLAUDE_CODE_ENABLE_AWAY_SUMMARYはこのキーより優先され、どちらの方向でも 1 セッションに適用されます
settings.json
disableArtifact
代わりに enableArtifact を使用して、セッション出力を claude.ai 上のプライベート Web ページとして公開する Artifact ツールをオフにします。/config で Artifacts 行をオフにすると、Claude Code はユーザー設定に enableArtifact を書き込み、このキーをクリアします。
- Scope:
Any file - Type: Boolean
true: Claude Code はファイルが適用されるすべてのセッションに対して Artifact ツールをオフにし、他のファイルはそれをオンに戻しませんfalse: 無視されます。ツールをオンのままにするには、キーを削除します
- Default: 未設定なので、ツールはアカウントの availability に従います
- Per-session overrides:
CLAUDE_CODE_DISABLE_ARTIFACTを1に設定すると、1 つのセッションのツールがオフになります
settings.json
disableDeepLinkRegistration
Claude Code が claude-cli:// プロトコルハンドラーをオペレーティングシステムに登録することを停止します。通常、対話セッションの最初のプロンプトを送信した後に登録されます。Deep links により、外部ツールは事前入力されたプロンプトで Claude Code セッションを開くことができます。プロトコルハンドラー登録が制限されているか、別途管理されている環境でこれを設定します。
- Scope:
Any file - Type: 文字列
"disable" - Default: 未設定なので、Claude Code はハンドラーを登録します
settings.json
disableDesktopLocalSessions
開発者が SSH 経由でリモートマシンで作業する必要があるデプロイメント用に、デスクトップアプリ で実行されるコードセッションをオフにします。Code タブでは、Local 環境は環境ドロップダウンに留まりますが、グレーアウトされて選択できず、組織がオフにしたことを示すツールチップが表示されます。Windows では WSL エントリも同じようにグレーアウトされますが、WSL セッションがマネージドデバイスで実行されるかどうかは 別途管理されます。新しいセッションは、設定されている場合は最初の SSH 接続 にデフォルト設定され、アプリは同じマシンへの SSH 接続を含む、デバイス上のセッションの開始または再開を拒否します。他のホストへの SSH セッションとクラウドセッションは影響を受けません。デスクトップアプリはこのキーを読み取ります。ターミナル CLI は無視します。Claude Desktop v1.37937.0 以降が必要です。
- Scope:
Managed - Type: Boolean。JSON Boolean
trueのみが有効ですtrue: デスクトップアプリはオンデバイスコードセッションを提供しません。既存のローカルセッションはリストに残りますが、続行できませんfalse: ローカルセッションは利用可能なままです
- Default: 未設定なので、ローカルセッションは利用可能です
managed-settings.json
"true" や 1 などの Boolean ではない値も警告をログに記録します。sshConfigs とペアにして、ユーザーが機能する接続にアクセスし、sshHostAllowlist とペアにして、到達できるホストを制限します。Local sessions on managed devices を参照してください。
Claude Desktop は、デスクトップ設定から派生したポリシー(たとえば、エグレス許可リスト、ファイルシステムサンドボックス、サードパーティデプロイメント内の MCP 制限など)を使用して Code セッションを提供します。Claude Code は、管理ソース が存在する場合(サーバー管理設定、MDM または OS レベルのポリシー、またはマネージド設定ファイル)、常にそれらの親設定を無視します。サードパーティデプロイメントのように、以前にないデバイスにこのキーをデプロイすると、デスクトップ派生ポリシーが適用されなくなります。Let an embedding host add policy は、親設定がまだマージできる場合をカバーしています。これは、このキーだけでなく、その方法でデプロイするすべてのキーに適用されます。
disableRemoteControl
Remote Control をオフにします。Claude Code は claude remote-control、--remote-control フラグ、自動開始、およびセッション内トグルを拒否し、組織のポリシーがそれを無効にしたことを報告します。マネージド設定 に配置して、デバイスごとの MDM 強制を行います。
- Scope:
Any file - Type: Boolean
true: Claude Code はclaude remote-control、--remote-controlフラグ、自動開始、およびセッション内トグルを拒否しますfalse: Remote Control は利用可能なままです
- Default:
false
settings.json
enableArtifact
セッション出力を claude.ai 上のプライベート Web ページとして公開する Artifact ツールをオフにします。/config で Artifacts 行をオフにすると、Claude Code はこのキーをユーザー設定に書き込むため、通常は手動で編集しません。Claude Code v2.1.196 以降が必要です。
- Scope:
Any file。すべてのファイルはツールをオフにでき、どのファイルもそれをオンに戻すことはできません。 - Type: Boolean
false: Claude Code はファイルが適用されるすべてのセッションに対して Artifact ツールをオフにしますtrue: キーを未設定のままにするのと同じです。別のファイルからのfalse、CLAUDE_CODE_DISABLE_ARTIFACT、または組織の 管理設定 をオーバーライドしないためです
- Default: 未設定なので、ツールはアカウントの availability に従います
settings.json
/config で Artifacts 行を非表示にします。そこでオンにしても何も変わらないためです。Disable artifacts はツールをオフにするすべての方法を一覧表示します。
inputNeededNotifEnabled
権限プロンプトまたは質問が入力を待っているときに、電話にプッシュ通知を取得します。Claude Code はこれらを Remote Control が接続されている間のみ送信します。/config では Push when actions required として表示されます。
- Scope:
Any file。Claude Code は古いバージョンによって~/.claude.jsonに残された値も読み取ります。 - Type: Boolean
true: Remote Control が接続されている間、権限プロンプトまたは質問が入力を待っているときに、電話にプッシュ通知が届きますfalse: Claude Code はそのような通知を送信しません
- Default:
false
settings.json
preferredNotifChannel
タスクが完了したときまたは権限プロンプトが待機しているときに Claude Code が通知する方法を選択します。/config では Local notifications として表示されます。
- Scope:
Any file。Claude Code は古いバージョンによって~/.claude.jsonに残された値も読み取ります。 - Type: 文字列、以下のいずれか:
"auto": Claude Code は iTerm2、Ghostty、Kitty でデスクトップ通知を送信し、Terminal.app でのみ可聴ベルがオフの場合にベルを鳴らし、他の場所では何もしません"terminal_bell": Claude Code は任意のターミナルでベル文字を鳴らします"iterm2": Claude Code は iTerm2 デスクトップ通知を送信します"iterm2_with_bell": Claude Code は iTerm2 デスクトップ通知を送信し、ベルを鳴らします"kitty": Claude Code は Kitty デスクトップ通知を送信します"ghostty": Claude Code は Ghostty デスクトップ通知を送信します"notifications_disabled": Claude Code は通知を送信しません
- Default:
"auto"
settings.json
"auto" では、Claude Code は iTerm2、Ghostty、Kitty でデスクトップ通知を送信します。Terminal.app では、Terminal の可聴ベルをオフにした場合のみベル文字を鳴らし、他のターミナルでは何もしません。任意のターミナルでベル文字を鳴らすには "terminal_bell" を設定します。Get a terminal bell or notification を参照してください。
remote.defaultEnvironmentId
claude --cloud などの CLI から作成するクラウドセッション用のデフォルト クラウド環境 を選択します。Claude Code は /remote-env で環境を選択するときに、このキーをユーザー設定に書き込みます。
- Scope:
Any file。自己ホスト環境 ID の場合、ユーザーまたはマネージド設定、または--settingsフラグのみ。 - Type: 文字列、
env_...またはccpool_...などの環境 ID - Default: 未設定なので、Claude Code はリストに Anthropic ホスト環境がある場合はそれを使用し、そうでない場合は Remote Control ブリッジ環境 ではないリスト内の最初の環境を使用するか、すべてがブリッジ環境の場合は最初の環境を使用します
- Per-session overrides:
--environmentはこのキーより優先され、作成する 1 つのクラウドセッションに適用されます
settings.json
env_ で始まる Anthropic ホスト環境 ID は標準設定の優先度に従うため、リポジトリのプロジェクト設定の値がユーザーレベルの選択をオーバーライドします。ccpool_ で始まる 自己ホスト環境 ID は、ユーザー設定、マネージド設定、および --settings フラグからのみ尊重されます。Claude Code はリポジトリのプロジェクトまたはローカル設定のものを無視し、/remote-env は無視した値を表示するため、チェックインされたファイルは選択しなかった自己ホスト環境にセッションをステアリングできません。
remoteControlAtStartup
各対話セッションの開始時に Remote Control を自動的に接続します。/remote-control を待つ代わりに。自動接続をオンにするには true に設定し、オフにするには false に設定します。/config では Enable Remote Control for all sessions として表示されます。
- Scope:
Any file。Claude Code は古いバージョンによって~/.claude.jsonに残された値も読み取ります。 - Type: Boolean
true: Claude Code は各対話セッションの開始時に Remote Control を自動的に接続しますfalse: Claude Code は/remote-controlを待ちます
- Default: 未設定なので、自動接続デフォルト が適用されます
- Per-session overrides:
--remote-controlはこのキーがfalseの場合でも 1 つのセッションに対して Remote Control をオンにし、フラグは 1 つのセッションに対してそれをオフにしません
settings.json
true を無視するため、リポジトリはそのチェックアウトの自動接続をオフにできますが、オンにすることはできません。完全なスコープごとの動作については、Enable Remote Control for all sessions および より厳密な値が適用されるセキュリティキー を参照してください。
sshConfigs
Desktop 環境ドロップダウンに SSH 接続を追加します。管理者はこれを使用して、共有接続をチームに配布します。マネージド設定で定義した接続はマネージドとして表示されるため、ユーザーはそれらを選択できますが、アプリで編集または削除することはできません。
- Scope:
User or managed。デスクトップアプリはこのキーを読み取ります。 - Type: オブジェクトの配列。各オブジェクトは必須の
id、name、sshHostと、オプションのsshPortおよびsshIdentityFileを持ちます - Default: 未設定
user@dev.example.com に接続する Dev VM という名前の 1 つの接続を追加します:
settings.json
sshHostAllowlist
Desktop SSH セッション が接続できるホストを制限します。デスクトップアプリのみがこのキーを読み取ります。CLI は読み取りません。パターンは大文字と小文字を区別しません。* は任意のホストに一致し、*.example.com は example.com とすべてのサブドメインに一致し、その他は ~/.ssh/config 解決後のホスト名に対する完全一致です。空の配列は SSH セッションをオフにします。
- Scope:
Managed - Type: ホスト名パターンの配列
- Default: 未設定なので、任意のホストが許可されます
devboxes.example.com とそのサブドメイン、および正確なホスト bastion.example.com を許可します:
managed-settings.json
認証とプロバイダー
ヘルパースクリプトを通じて認証情報を提供し、組織の場合はログイン方法または組織を強制します。認証を参照してください。allowedProviders
マシンが Claude に到達できるサービス(Anthropic API、Amazon Bedrock、LLM ゲートウェイなど)をリストアップします。リストに記載されていないプロバイダー上のセッションは、スタートアップ時、ログイン時、および次に API に接続するときに拒否されるため、セッション中にリストに記載されていないプロバイダーに切り替えることも拒否されます。拒否メッセージには、プロバイダーを選択したものと続行するためのステップが記載されています。Claude Code v2.1.285 以降が必要です。
- スコープ:
Managed。マシン自身の管理者ソース(MDM ポリシーおよび管理設定ファイル)が設定したリストは、サーバー管理設定もリストを配信する場合でも適用され続けます。その場合、セッションは両方のリスト上のプロバイダーのみを使用できるため、サーバー管理リストはマシンが許可するものを狭めることはできますが、広げることはできません。マシンソースのallowedProvidersのどれが数えられるかは、Claude Code が管理ソースを組み合わせる方法に従います。サーバー管理設定のみを通じて配信されたリストは、サーバー管理設定を取得するセッションのみに到達します。 - タイプ: 文字列の配列。各要素は以下のいずれか:
"anthropic": claude.ai または Console サインイン、または API キーを通じた Anthropic 独自のホスト上の Anthropic API。forceLoginMethodまたはforceLoginOrgUUIDと組み合わせてサインインも制限します"bedrock": Amazon Bedrock"vertex": Google Cloud の Agent Platform(旧 Vertex AI)"foundry": Microsoft Foundry"anthropicAws": AWS 上の Claude Platform"mantle": Amazon Bedrock Mantle エンドポイント。Invoke API と並行して Mantle を実行するセッションは両方のプロバイダーを使用するため、"bedrock"と"mantle"をまとめてリストアップします"customEndpoint": 別のホストに送信される Anthropic API またはクラウドプロバイダーの API。ANTHROPIC_BASE_URLや、ANTHROPIC_BEDROCK_BASE_URLなどのプロバイダーのエンドポイント変数で指定された LLM ゲートウェイなどです。Claude Code はそれを管理envブロックがピンで留めた正確な値に対してのみ許可します"gateway": Cloud ゲートウェイサインイン
- デフォルト: 未設定。任意のプロバイダーを使用できます
managed-settings.json
管理 env でピンが必要なエンドポイント
ピンは、管理 env ブロックで設定されたエンドポイント変数の値です。セッションがプロバイダーのトラフィックをそのプロバイダー独自のサービス以外の場所に送信する場合、Claude Code はセッションの値がピンと同じ場合にのみそれを許可します。これらのエンドポイントには 1 つが必要です:
"customEndpoint"セッション: ホストを指定する変数(ANTHROPIC_BASE_URLなど)- Amazon Bedrock: AWS SDK の
AWS_ENDPOINT_URL、AWS_ENDPOINT_URL_BEDROCK、およびAWS_ENDPOINT_URL_BEDROCK_RUNTIME変数が Bedrock 独自のサービス外を指す場合。セッションは"customEndpoint"ではなく"bedrock"の下に留まります - ゲートウェイサインイン URL: セッションは
"gateway"の下に留まり、forceLoginGatewayUrlもピンとしてカウントされます
env ブロックがピンとしてカウントされるかは、リストが設定されている場所によって異なります:
- マシン上の管理者ソースがリストを設定: マシン独自の管理者ソースの
envブロックのみがカウントされます - サーバー管理設定のみがリストを設定: これらのサーバー管理設定の
env値もカウントされます
HTTPS_PROXY と証明書設定などのネットワークパスを判定しません。管理 env ブロックでフリート用にそれらを設定します。
apiKeyHelper
Claude Code がモデルリクエストで送信する認証情報を生成するために独自のコマンドを実行します。Claude Code はコマンドをシステムシェル(macOS と Linux では /bin/sh、Windows では cmd)を通じて実行し、その出力を X-Api-Key ヘッダーと Authorization: Bearer ヘッダーの両方として送信します。ボールトから取得した短期トークンなど、動的または回転する認証情報に使用します。
- スコープ:
Any file - タイプ: 文字列、シェルコマンドライン
- デフォルト: 未設定。Claude Code はヘルパーを実行しません
settings.json
- キャッシュの有効期限後。デフォルトは 5 分、または
CLAUDE_CODE_API_KEY_HELPER_TTL_MSで設定した間隔 - Anthropic API へのリクエスト(直接または LLM ゲートウェイ経由)が
401または403で失敗した場合 - Anthropic API へのリクエスト(直接または LLM ゲートウェイ経由)を送信する前に、キャッシュされた出力がヘルパーが生成した後に期限切れになった JWT である場合。Claude Code v2.1.246 以降が必要です。
ANTHROPIC_AUTH_TOKEN が設定されていない場合にのみ適用されます。
インタラクティブセッションでは、コマンドがプロジェクトまたはローカル設定から来ている場合、Claude Code はワークスペーストラストプロンプトを受け入れるまでコマンドを実行しません。認証情報管理を参照してください。
awsAuthRefresh
aws sso login などの独自のコマンドを実行して、Claude Code が Amazon Bedrock に対して持つ認証情報が機能しなくなったときに .aws ディレクトリの認証情報をリフレッシュします。Claude Code は最初に現在の認証情報を STS に対してチェックし、そのチェックが失敗した場合にのみコマンドを実行してから、リフレッシュされた .aws ディレクトリを読み取ります。
同じコマンドと認証情報を使用する複数の Claude Code プロセス(別々のターミナルや IDE ウィンドウなど)で同時にチェックが失敗した場合、1 つのプロセスがコマンドを実行し、残りのプロセスは独自に実行を開始する代わりにその実行を待機します。リクエストを保留したまま 60 秒間待機したプロセスは、自らコマンドを実行します。この動作をオフにするには、CLAUDE_CODE_DISABLE_AUTH_REFRESH_LOCK を 1 に設定します。
- スコープ:
Any file - タイプ: 文字列、シェルコマンドライン
- デフォルト: 未設定。Claude Code は AWS 認証情報をリフレッシュしません
settings.json
.aws に書き込む場合はこのキーを使用します。代わりに認証情報を出力する場合は awsCredentialExport を使用します。高度な認証情報設定を参照してください。
awsCredentialExport
AWS 認証情報を JSON として出力する独自のコマンドを実行して、Claude Code が .aws ディレクトリに存在しない認証情報で Amazon Bedrock を呼び出すことができるようにします。Claude Code は aws sts 出力形式とフラットな aws configure export-credentials 形式を受け入れ、認証情報を独自の Bedrock クライアントにスコープするため、Claude Code が実行するシェルコマンドは引き続き環境の認証情報を参照します。
- スコープ:
Any file - タイプ: 文字列、シェルコマンドライン
- デフォルト: 未設定。Claude Code は環境の AWS 認証情報チェーンを使用します
settings.json
awsAuthRefresh とは異なり、Claude Code はこのコマンドが設定されている場合、環境の認証情報を最初にチェックせずに常に実行します。高度な認証情報設定を参照してください。
forceLoginMethod
ユーザーがログインできるアカウントの種類を制限します。"claudeai" を設定して claude.ai アカウントのみを許可するか、"console" を設定して Claude Console アカウントのみを許可するか、"gateway" を設定してファーストパーティログインの代わりに クラウドゲートウェイにユーザーを送信します。管理者は管理設定で設定し、forceLoginOrgUUID と組み合わせて開発者の claude.ai ログインを 1 つの組織内に保つことができます。任意の設定ファイルで "claudeai" または "console" に設定した場合、Claude Code はそのファイルが適用されるセッションで キーレス Console サインインの提供も停止します。
- スコープ:
Any file。Claude Code は"gateway"をマシン上の管理ソース(managed-settings.json、macOS plist または Windows HKLM レジストリ、またはポリシーヘルパー)からのみ受け入れます。ユーザー、プロジェクト、ローカル、HKCU、およびサーバー管理設定では"gateway"を未設定として扱います。これはforceLoginGatewayUrlと同じルールです。 - タイプ: 文字列、以下のいずれか:
"claudeai": claude.ai アカウントのみがログインできます"console": Claude Console アカウントのみがログインできます"gateway": Claude Code はユーザーをファーストパーティログインの代わりにクラウドゲートウェイに送信します
- デフォルト: 未設定。ユーザーはログイン方法を選択します
settings.json
claude setup-token、および /install-github-app を含みます。ただし、ターミナルのインタラクティブログイン画面(/login または初回実行オンボーディングで到達)は、メソッドを事前選択しますが強制しません。v2.1.212 より前は、ターミナルログインのみが適用されていました。ログインを組織に制限するを参照して、各ログインパス、環境認証情報、およびサードパーティプロバイダーがどのように処理されるかを確認してください。
マシン上の管理ソースが "gateway" を設定する場合、Claude Code は残されたログイン、API キー、または apiKeyHelper 認証情報を使用しません。各メッセージについては 管理者ポリシーがクラウドゲートウェイサインインを必要としますを参照してください。CLAUDE_CODE_USE_BEDROCK または同様の環境変数を通じてクラウドプロバイダーを選択する場合、セッションはゲートウェイサインインを必要としません。v2.1.261 より前は、Claude Code はこれらのマシンで残されたログインを使用していました。
forceLoginGatewayUrl
/login クラウドゲートウェイ画面が接続するゲートウェイ URL を設定して、ユーザーがアドレスを入力せずに クラウドゲートウェイに到達できるようにします。画面には URL フィールドがありません。このキーが設定されている場合、ゲートウェイ URL を表示し、ユーザーが Enter キーを押すと接続します。設定されていない場合、IT 管理者に連絡するよう指示します。
このキーまたは forceLoginMethod: "gateway" のいずれかにより、CLAUDE_CODE_USE_* でクラウドプロバイダーを選択するセッションを除き、マシンはゲートウェイのみになります。その場合、/login はログイン方法ピッカーなしでクラウドゲートウェイ画面で開きます。残されたファーストパーティログインまたは API キーに何が起こるかについては、管理者ポリシーがクラウドゲートウェイサインインを必要としますを参照してください。画面がエラーを表示する代わりに接続するように、両方のキーを設定します。
- スコープ:
Managed。マシン上のソースからのみ読み取ります。managed-settings.json、macOS plist または Windows HKLM レジストリ、またはポリシーヘルパー。Claude Code は HKCU およびサーバー管理設定では無視します。 - タイプ: 文字列、スキームを含む完全な URL
- デフォルト: 未設定。クラウドゲートウェイ画面は IT 管理者に連絡するよう指示するエラーを表示します
managed-settings.json
forceLoginOrgUUID
管理ソースから、claude.ai アカウントログインが 1 つの Anthropic 組織(単一の UUID として指定)または複数の組織(配列として指定)に属することを要求します。任意の設定ファイルから、Claude Code は単一の UUID を使用して claude.ai または Claude Console ログイン中にその組織を事前選択し、配列の場合は何も事前選択しません。任意の設定ファイルでキーを設定する場合、Claude Code はそのファイルが適用されるセッションで キーレス Console サインインの提供も停止し、代わりに API キーを作成します。
- スコープ:
Any file。管理ソースのみが制限を強制します。他の設定ファイルの単一の UUID は、制限なしにログイン中に組織を事前選択します。 - タイプ: 文字列、1 つの UUID、または文字列の配列、複数の UUID
- デフォルト: 未設定。任意の組織がログインできます
managed-settings.json
gatewayInternalNetworks
組織が内部ネットワークに番号を付ける公開 IPv4 ブロックを宣言して、/login が クラウドゲートウェイをそこで受け入れるようにします。Claude Code v2.1.268 以降が必要です。
このキーがない場合、/login はプライベートアドレス上のゲートウェイのみに接続し、それ以外には接続しません。このキーがある場合、/login はリストされたブロック内のゲートウェイも受け入れます。直接接続のみです。その接続上のマシン自身のアドレスも同じブロック内にある必要があります。
- スコープ:
Managed。マシン上のソースからのみ読み取ります。managed-settings.json、macOS plist または Windows HKLM レジストリ、またはポリシーヘルパー。Claude Code は HKCU およびサーバー管理設定では無視します。 - タイプ: 文字列の配列、最大 4 つの IPv4 CIDR ブロック、各
/8から/32、互いに重複しない、およびプライベートスペースと重複しない - デフォルト: 未設定。
/loginはプライベートアドレス上のゲートウェイのみを受け入れます
managed-settings.json
/login は問題を名前で指定し、値を修正するまでマシン上のすべての新しいゲートウェイサインインを拒否します。既存のサインインは機能し続けます。完全なルールと開発者が見るものについては、所有する公開アドレススペース上のゲートウェイを許可するを参照してください。
gcpAuthRefresh
Claude Code が Google Cloud Application Default Credentials の有効期限が切れているか読み込めないことを検出したときにリフレッシュするために独自のコマンドを実行して、Google Cloud の Agent Platform リクエストが手動で再認証することなく機能し続けるようにします。
同じコマンドと認証情報を使用する複数の Claude Code プロセス(別々のターミナルや IDE ウィンドウなど)が同時に認証情報の期限切れを検出した場合、1 つのプロセスがコマンドを実行し、残りのプロセスは独自に実行を開始する代わりにその実行を待機します。リクエストを保留したまま 60 秒間待機したプロセスは、自らコマンドを実行します。この動作をオフにするには、CLAUDE_CODE_DISABLE_AUTH_REFRESH_LOCK を 1 に設定します。
- スコープ:
Any file - タイプ: 文字列、シェルコマンドライン
- デフォルト: 未設定。Claude Code の認証情報エラーは
gcloud auth application-default loginを自分で実行するよう指示します
settings.json
otelHeadersHelper
Claude Code が OpenTelemetry エクスポートで送信するヘッダーを生成するために独自のコマンドを実行します。トークンが回転するバックエンド用です。Claude Code はスタートアップ時と定期的にその後実行し、stdout で文字列ヘッダー値の JSON オブジェクトを期待します。
- スコープ:
Any file - タイプ: 文字列、実行可能パスまたはシェルコマンドライン
- デフォルト: 未設定。Claude Code はヘルパー生成ヘッダーを追加しません
settings.json
CLAUDE_CODE_OTEL_HEADERS_HELPER_DEBOUNCE_MS でリフレッシュ間隔を設定します。スクリプトの要件とヘルパーが失敗した場合の動作については、動的ヘッダーを参照してください。
アップデートとバージョン管理
アップデートチャネルを選択し、組織の場合はユーザーが実行できるバージョンをピン留めします。Claude Code を更新を参照してください。autoUpdatesChannel
リリースチャネルをバックグラウンド自動更新と claude update が従うかを選択します。通常約 1 週間前のバージョンで、大きな回帰を含むリリースをスキップする "stable" を設定するか、最新リリースの "latest" を設定します。
- スコープ:
Any file。組織全体で 1 つのチャネルを強制するために、管理設定で設定します。 - タイプ: 文字列、以下のいずれか:
"latest":更新は最新リリースに従う"stable":更新は通常約 1 週間前のバージョンに従い、大きな回帰を含むリリースをスキップする
- デフォルト: 未設定の場合、Claude Code は
"latest"に従う
settings.json
/config の Auto-update channel で選択すると、ユーザー設定に "stable" を書き込み、そこで最新に戻すとキーを削除します。claude install stable と claude install latest も、指定したチャネルを保存します。/config で "latest" から "stable" に切り替えると、ダウングレードを許可するか現在のバージョンにとどまるかを尋ねます。とどまることを選択すると、minimumVersion が設定されます。Homebrew インストールはこのキーを無視します:claude-code cask は stable を追跡し、claude-code@latest は latest を追跡し、claude update は brew upgrade に従います。自動更新を完全に無効にするには、env で DISABLE_AUTOUPDATER を設定します。
minimumVersion
バックグラウンド自動更新と claude update がこれより下のバージョンをインストールするのを防ぎます。これにより、"stable" チャネルに移動しても、より新しい "latest" ビルドからダウングレードされません。Claude Code は /config でチャネルを切り替えながら現在のバージョンにとどまることを選択すると、このキーを書き込み、"latest" に戻すと削除します。
- スコープ:
Any file。ユーザーおよびプロジェクト設定が低下させることができない、組織全体の最小値をピン留めするために、管理設定で設定します。 - タイプ: 文字列、
"2.1.100"などのバージョン番号。有効なバージョンではない値は無視されます - デフォルト: 未設定の場合、更新はチャネルが提供するすべてのバージョンをインストールできる
settings.json
requiredMinimumVersion を使用します。最小バージョンをピン留めするを参照してください。
requiredMaximumVersion
組織が起動を許可する最新の Claude Code バージョンを設定します。実行中のバージョンがより新しい場合、Claude Code は起動時に終了し、ユーザーに組織の承認された方法を通じて承認されたバージョンをインストールするよう指示します。claude install <version> も機能する場合があります。Claude Code v2.1.163 以降が必要です。
- スコープ:
Managed。Claude Code は他の場所でキーを無視するときに警告を表示しません。 - タイプ: 文字列、
"2.1.150"などのバージョン番号。有効なバージョンではない値は無視されます - デフォルト: 未設定の場合、上限は適用されません
managed-settings.json
claude update は上限より上のバージョンをスキップするため、範囲内のインストールは範囲内にとどまります。claude update、claude install、および claude doctor は、ユーザーが復旧できるように上限より上で機能し続けます。requiredMinimumVersion とペアにして、範囲を強制します。
requiredMinimumVersion
組織が起動を許可する最も古い Claude Code バージョンを設定します。実行中のバージョンがより古い場合、Claude Code は起動時に終了し、ユーザーに組織の承認された方法を通じて更新するよう指示します。チェックは起動時のみ実行されるため、既に実行中のセッションは続行されます。Claude Code v2.1.163 以降が必要です。
- スコープ:
Managed。Claude Code は他の場所でキーを無視するときに警告を表示しません。 - タイプ: 文字列、
"2.1.150"などのバージョン番号。有効なバージョンではない値は無視されます - デフォルト: 未設定の場合、下限は適用されません
managed-settings.json
claude update、claude install、および claude doctor は、ユーザーが復旧できるように下限より下で機能し続けます。ダウングレードのみを防ぐ minimumVersion とは異なり、このキーは起動をブロックします。requiredMaximumVersion とペアにして、範囲を強制します。
ツール
Claude Code デスクトップアプリで特定のツールをオフにします。ターミナル CLI はこれらのキーを無視します。ツール自体については、Claude が利用可能なツールを参照してください。browserExternalPageTools
デスクトップアプリのブラウザペインで、Claude がそのツールを使用して外部ページを読み取ったり、外部ページに対して操作したりするのを停止します。組織内のユーザーは引き続き外部サイトを自分で開くことができ、ローカル開発サーバープレビューは Claude のツールで引き続き機能します。デスクトップアプリはこのキーを読み取ります。ターミナル CLI は無視します。
- スコープ:
Managed - タイプ: 文字列、
"disabled"。デスクトップアプリは"disable"も受け入れます。どちらの場合でも同じです - デフォルト: 未設定。Claude のツールは外部ページで機能します
managed-settings.json
disableBrowserExternalNavigationを設定してください。組織の外部ブラウジングを制限するを参照してください。
disableBrowserExternalNavigation
デスクトップアプリのブラウザペインで、ユーザーと Claude の両方に対して外部ブラウジングをオフにします。Localhost 開発サーバープレビューは引き続き機能します。デスクトップアプリはこのキーを読み取ります。ターミナル CLI は無視します。
- スコープ:
Managed - タイプ: ブール値。JSON ブール値
trueのみが有効ですtrue: デスクトップアプリは、ブラウザペインでユーザーと Claude の両方に対して外部ブラウジングをオフにします。localhost プレビューは引き続き機能しますfalse: 外部ブラウジングはオンのままです
- デフォルト: 未設定。外部ブラウジングはオンです
managed-settings.json
"true"や1などのブール値ではない値も警告をログに記録します。外部ブラウジングはオンのままにしておきたいが、Claude のツールを外部ページでオフにしたい場合は、代わりにbrowserExternalPageToolsを設定してください。組織の外部ブラウジングを制限するを参照してください。
disableMobileSimulatorTools
デスクトップアプリのiOS シミュレータペインに対する Claude のツールをブロックします。ユーザーはペインの手動使用を継続できます。Claude のアクセスのみが削除され、アプリ内から誰もそれを再度オンにすることはできません。デスクトップアプリはこのキーを読み取ります。ターミナル CLI は無視します。
- スコープ:
Managed - タイプ: ブール値。JSON ブール値
trueのみが有効ですtrue: デスクトップアプリは iOS シミュレータペインに対する Claude のツールをブロックしますfalse: Claude のシミュレータツールは、デスクトップアプリ内の各ユーザーの設定トグルに従います
- デフォルト: 未設定。Claude のシミュレータツールは、デスクトップアプリ内の各ユーザーの設定トグルに従います
managed-settings.json
"true"や1などのブール値ではない値も警告をログに記録します。
プライバシーとテレメトリ
Claude Code がセッションデータをどのくらいの期間保持し、何を送信するかを制御します。使用メトリクスとエラーレポートをオフにするスイッチは、設定キーではなく環境変数です。env キーまたはシェルで DISABLE_TELEMETRY、DISABLE_ERROR_REPORTING、または CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC を設定します。テレメトリサービス では、各環境変数が何を停止するかについて説明しています。2 つの例外は設定ファイルからオフになります。以下の feedbackDrafts は Claude が作成したフィードバック用、および以下の feedbackSurveyRate はセッションサーベイ用です。
cleanupPeriodDays
Claude Code が セッショントランスクリプトおよび他のアプリケーションデータ を削除する前に保持する日数を設定します。Claude Code はセッション開始後にバックグラウンド削除を実行します。保持期間を安全に判定できる限り実行されます。削除スイープはメッセージを表示せずにトランスクリプトを削除するため、保持期間より長く使用していないセッションは /resume ピッカーに表示されなくなります。
- スコープ:
Any file - タイプ: 日数、整数、最小値
1 - デフォルト:
30
settings.json
0 を設定するとバリデーションが失敗するため、長期保持の場合は 3650 などの大きな値を選択してください。Claude Code がトランスクリプトを書き込まないようにするには、プレーンテキストストレージ を参照してください。
desktopSessionCleanupPeriodDays
Claude Desktop または Cowork で開始または最後に続行したセッションのトランスクリプトに対して、日数での年齢制限を設定します。このキーがない場合、Claude Code は それらのトランスクリプトを任意の年齢で保持します。Claude Code は各トランスクリプトが、この制限と cleanupPeriodDays の両方より古い場合に削除します。したがって、cleanupPeriodDays がデフォルトの 30 の場合、7 の値でも 30 日間保持されます。自動クリーンアップ には、代わりに cleanupPeriodDays が適用され、Claude Code がこのキーを無視するケースが記載されています。Claude Code v2.1.248 以降が必要です。
- スコープ:
User or managed。Claude Code は--settingsで渡すファイルからキーを読み込み、プロジェクトおよびローカル設定では無視します。 - タイプ: 日数、整数、最小値
0 - デフォルト:
0。年齢制限を設定しません
settings.json
feedbackDrafts
Claude が作成したフィードバック を制御します。Claude がレビュー用のフィードバックドラフトをキューに入れることができるかどうか、および Claude Code が Claude がドラフトをキューに入れたときにカードを表示するかどうかを制御します。
- スコープ:
User or managed - タイプ: 文字列。
"notify"、"quiet"、または"off"のいずれか"notify":Claude Code は Claude がドラフトをキューに入れたときにプロンプトの上にカードを表示します。デフォルトではセッションあたり 最大 3 枚のカード"quiet":Claude はカードなしでドラフトを作成します。プロンプトフッターでキューに入れられたドラフトの数を確認し、/feedbackでレビューします"off":Claude Code は SendFeedback ツールを削除するため、Claude はドラフトをキューに入れることができません
- デフォルト:
"notify" - セッションごとのオーバーライド:
CLAUDE_CODE_SEND_FEEDBACKを0に設定すると、1 つのセッションでこの機能がオフになります
settings.json
/config に Claude-drafted feedback として表示されます。これはこのキーをユーザー設定に書き込みます。/config 行は Claude がフィードバックドラフトを作成できるセッション でのみ表示されます。"off" を設定してもこれは非表示にならないため、同じ行から機能を再度オンにできます。管理設定の値はユーザー設定より優先されるため、管理者がこのキーを設定すると、行は管理値を表示し、変更しても効果がありません。Claude Code はプロジェクトおよびローカル設定でこのキーを無視します。
feedbackSurveyRate
セッション品質サーベイ がセッションがそれに適格である場合に表示される確率を設定します。0 を設定してサーベイが表示されないようにします。
- スコープ:
Any file - タイプ:
0から1の間の数値 - デフォルト: 未設定。Claude Code は Anthropic がリモートで設定する率を使用するか、Amazon Bedrock、Google Cloud の Agent Platform、および Microsoft Foundry でのビルトイン率
0.005を使用します。これらはリモート設定を受け取りません - セッションごとのオーバーライド:
CLAUDE_CODE_DISABLE_FEEDBACK_SURVEYを1に設定すると、このキーが設定する率に関係なく、1 つのセッションでサーベイがオフになります
settings.json
skipWebFetchPreflight
WebFetch ドメイン安全性チェック をスキップします。このチェックは、フェッチする前に各リクエストされたホスト名を api.anthropic.com に送信します。Amazon Bedrock、Google Cloud の Agent Platform、または Microsoft Foundry デプロイメント(制限的な出力を持つ)など、Anthropic へのトラフィックをブロックする環境で true を設定します。
- スコープ:
Any file - タイプ: ブール値
true:Claude Code は WebFetch ドメイン安全性チェックをスキップしますfalse:チェックはセッション内の各ホスト名への最初のフェッチの前に実行され、以前のチェックがブロックされたか失敗したホスト名に対して再度実行されます
- デフォルト: 未設定。チェックはセッション内の各ホスト名への最初のフェッチの前に実行されます
settings.json
WebFetch 権限ルール と組み合わせてください。
エンタープライズおよび管理設定
組織が管理設定を計算、更新、および組み合わせるために使用するキー。管理設定の設定を参照してください。disableSideloadFlags
起動時に --plugin-dir、--plugin-url、--agents、および --mcp-config CLI フラグを拒否します。これらのフラグは、ユーザーが strictKnownMarketplaces を単一実行でバイパスするために渡す可能性があります。Claude Code はエラーで終了し、拒否されたフラグを名前で指定します。クラウドセッションでは、Claude Code はセッションを開始し、サーバーが配信した --mcp-config エントリをドロップします。ただし、プロセス内 type: "sdk" エントリと Claude Tag セッションの Slack ツールは除きます。Claude Code v2.1.193 以降が必要です。
- スコープ:
Managed - タイプ: ブール値
true: Claude Code は起動時に--plugin-dir、--plugin-url、--agents、および--mcp-configを拒否し、エラーで終了して名前を指定します。クラウドセッションでは、セッションを開始し、サーバーが配信した--mcp-configエントリをドロップします。ただし、プロセス内type: "sdk"エントリと Claude Tag セッションの Slack ツールは除きますfalse: Claude Code はこれらのフラグを受け入れます
- デフォルト:
false
managed-settings.json
type: "sdk" エントリである --mcp-config を受け入れます。これにより、Agent SDK と VS Code 拡張機能は動作し続けます。ユーザーは claude mcp add またはファイル .mcp.json でサーバーを追加できます。サーバーごとの制御については、allowedMcpServers も設定してください。Claude Code v2.1.193 以降が必要です。
同じチェックは、CLAUDE_CODE_PLUGIN_DIRS 環境変数で名前が付けられたプラグインフォルダをカバーします。これには Claude Code v2.1.280 以降が必要です。変数がフォルダを名前で指定する場合、Claude Code は同じエラーで終了し、エラーは変数をアンセットするように指示します。
クラウドセッションでは、Claude Code はセッション中の MCP 更新も無視します。これは、クラウドセッション構成と SDK setMcpServers() 呼び出しの背後にあるパスです。プロセス内 type: "sdk" エントリと Claude Tag セッションの Slack ツールはそこでも除外されたままです。v2.1.268 より前では、このドロップと起動ドロップの両方も Claude Tag セッションの Slack ツールを削除していました。v2.1.239 より前では、サーバーが配信した --mcp-config はクラウドセッションの開始をブロックしていました。
デスクトップアプリは、claude.ai から同期されたプラグインや、組織がアプリを通じてデプロイするプラグインを含む、いくつかのプラグインを自身で管理します。MDM、OS レベルのポリシー、または管理設定ファイルを通じてこのキーをデバイスにデプロイする場合、デスクトップアプリはそれらのプラグインを、そのデバイス上の以下のセッションに渡しません:
- ユーザーのマシン上のコードセッション: ユーザーの claude.ai アカウントに対して有効になっているスキルなしでも開始します。Claude Code が管理設定のマーケットプレイスからインストールするプラグインは引き続きロードされます。Claude Desktop on 3P では、デバイスの
org-pluginsディレクトリにデプロイするプラグインからの MCP サーバーは利用可能なままです。デスクトップアプリが自身でそれらに接続するため。Claude Desktop v1.37937.0 より前では、これらのセッションは起動時に失敗していました。 - ユーザーのマシン上の Cowork セッション: それらのプラグイン内のスキルとユーザーの claude.ai アカウントに対して有効になっているスキルは利用可能なままです。Claude Desktop on 3P では、デバイスの
org-pluginsディレクトリにデプロイするプラグインからの MCP サーバーは利用可能なままです。デスクトップアプリが自身でそれらに接続するため。Claude Desktop v1.44121.0 より前では、これらのセッションは起動時に失敗していました。
forceRemoteSettingsRefresh
Claude Code が サーバー管理設定 を新たに取得するまで CLI 起動をブロックします。取得に失敗した場合、Claude Code はキャッシュされた設定または設定なしで続行する代わりに終了します。環境が管理ポリシーなしでセッションが実行される短い時間枠を受け入れられない場合に設定します。
キーが設定されていない場合、Claude Code は取得時に起動をブロックしません。ただし、開発者が起動時にサインインする場合、取得を最大 5 秒間待機します。Cloud ゲートウェイセッションは常に待機し、ゲートウェイに到達できない場合は終了します。
- スコープ:
Managed。Claude Code は、最優先度のソースでなくても、管理者が制御する管理ソースからのtrueを尊重します。 - タイプ: ブール値
true: Claude Code は起動をブロックして、サーバー管理設定を新たに取得するまで待機し、取得に失敗した場合は終了しますfalse: Claude Code は取得時に起動をブロックしません。ただし、サインイン起動では最大 5 秒間待機します
- デフォルト:
false
managed-settings.json
claude auth サブコマンドは除外されるため、ユーザーは期限切れの認証情報が取得に失敗する理由である場合に再認証できます。失敗時閉鎖起動を強制するを参照してください。
managedSourcesBehavior
Claude Code が、組織が配信する最優先度の 管理ソース のみを適用するか、配信するすべての管理者ソースを組み合わせるかを選択します。デフォルトでは、Claude Code は ポリシーキー を含む最優先度のソースを取得し、残りを無視します。ポリシーキーは、このキーと wslInheritsWindowsSettings 以外の設定キーです。そのデフォルトでは、サーバー管理設定または MDM ポリシーがポリシーキーを配信すると、managed-settings.json ファイルは Claude Code がすべての管理ソースから読み取るキー のみを提供します。"merge" を使用すると、配信するすべての管理ソースがそのキーを 1 つの組み合わせたポリシーに提供します。Claude Code v2.1.242 以降が必要です。
"merge" は、ランク付けされた 最優先度のソースの下のすべてのソースが管理者の制御下にある場合にのみ設定してください。Claude Code は、permissions.allow ルールなどの下位ソースからのエントリをポリシーに追加します。
- スコープ:
Managed。Claude Code はこのキーを、このキーまたはポリシーキーを含む最優先度のソースから読み取り、ランク付けされた下位のすべてのソースでこのキーを無視します。下位ソースは、上位のソースとの組み合わせにオプトインできません。Windows HKCU レジストリも 埋め込みホストからの親設定 も、マージに参加しません。 - タイプ: 文字列、次のいずれか:
"first-wins": ポリシーキーを含む最優先度のソースがポリシーを提供し、下位ソースは Claude Code がすべての管理ソースから読み取るキー のみを提供します"merge": 配信するすべての管理ソースがそのキーを提供し、以下のルールで組み合わせられます
- デフォルト:
"first-wins"
managed-settings.json ファイルは最下位の管理ソースであるため、そこに設定された "merge" は、それと組み合わせる下位ソースがありません。サーバー管理設定では、キーは次のようになります:
"merge" では、Claude Code は各キーをそのタイプで組み合わせます。このテーブルは各タイプのルールを示します。制限許可リスト、値全体取得、および最優先度ソースのみの行は、カバーするすべてのキーを名前で指定し、他の行は例を示します:
sandbox.credentials.awsPairs と sandbox.ripgrep を全体で取得するには、Claude Code v2.1.257 以降が必要です。
いくつかのキーは、テーブルが示さない条件を追加します:
policyHelper: Claude Code は、ポリシーキーを含む最優先度のソースが MDM ポリシーまたは管理設定ファイルである場合にのみそれを尊重します。サーバー管理設定では適用されません。modelOverrides:availableModelsとペアになります。Claude Code は、それを設定する最優先度のソースからmodelOverridesを取得します。ただし、上位ソースがmodelOverridesなしでavailableModelsを設定する場合は除きます。その場合、すべてのソースからmodelOverridesを無視します。forceLoginGatewayUrl、gatewayInternalNetworks、およびforceLoginMethodの"gateway"値: Claude Code はサーバー管理設定からそれらのいずれも読み取りません。そのため、そこでの値は適用されず、MDM ポリシーまたは管理設定ファイルで設定されたものを隠しません。マシン上の管理ソースの中で、ポリシーキーを含む最優先度のソースのみがそれらを提供します。サーバー管理設定も存在するかどうかに関わらず。allowedProviders: テーブルのルールの後、マシン自体のリストは結果を制限し続けます。そのエントリの Scope ノートが述べているように。
/status を実行し、Setting sources 行を読んでください。
parentSettingsBehavior
Claude Code が、Agent SDK または IDE 拡張機能などの埋め込みホストプロセスによって提供される管理設定を適用するかどうかを選択します。管理者がデプロイした管理層も存在する場合。"first-wins" では、Claude Code はホスト提供の設定をドロップします。"merge" では、制限のみのフィルターを通じて管理層の下で適用します。ホストが起動するセッションに独自の制限を渡す必要がある場合、"merge" を設定します。たとえば、Claude Desktop がゲートウェイの出力許可リストを配信する場合。
- スコープ:
Managed。Claude Code はそれを最優先度の管理者制御管理ソースから読み取ります。 - タイプ: 文字列、次のいずれか:
"first-wins": Claude Code は、管理者がデプロイした管理層が存在する場合、ホスト提供の設定をドロップします"merge": Claude Code は、制限のみのフィルターを通じて管理層の下でホスト提供の設定を適用します
- デフォルト:
"first-wins"
managed-settings.json
policyHelper
起動時に管理設定を計算するためにデプロイする実行可能ファイルを実行します。デバイスの状態、ID、またはリモートサービスから静的ファイルの代わりにポリシーを導出できます。Claude Code はヘルパーを実行してから最初のプロンプトを受け入れ、それが出力する設定をセッションの管理設定として扱います。
- スコープ:
Managed。macOS plist、Windows HKLM レジストリ、または管理設定ファイルから読み取ります。Claude Code は、ポリシーキー を含む最優先度の管理ソースからキーを読み取り、そのソースが 3 つのうちの 1 つである場合にのみヘルパーを実行します。サーバー管理設定、HKCU レジストリ、およびホスト提供の親設定ではキーを無視します。 - タイプ:
path、timeoutMs、およびrefreshIntervalMsを含むオブジェクト - デフォルト: 設定されていないため、ヘルパーは実行されません
managed-settings.json
ヘルパー出力を書き込む
Claude Code はヘルパーを引数なしで実行し、その環境にCLAUDE_CODE_VERSION を設定し、stdout から JSON エンベロープを読み取ります。1 MiB でキャップされます。
設定を managedSettings キーの下に配置します。managedSettings キーのない裸の設定オブジェクトは、managedSettings が未定義で何も適用されず、Claude Code はエラーを報告しません:
managedSettings を出力する場合、そのオブジェクトは実行の唯一の管理設定ソースになります。Claude Code は MDM、ファイル、および HKCU ソースを無視し、クロスソースキー をヘルパーの出力からのみ読み取り、親設定 をマージしません。
起動 forceRemoteSettingsRefresh チェックはヘルパーの前に実行され、任意の管理ソースを読み取ります。ヘルパーが managedSettings を省略するエンベロープで 0 で終了する場合、管理設定を提供しません。他のソースは通常どおり適用されます。
ヘルパーの失敗
ヘルパー実行は次の場合に失敗します:pathはpolicyHelper.pathのルールを破ります。pathに通常ファイルがありません。Claude Code は、同じtimeoutMs予算内でヘルパーを開始する前にファイルをチェックするため、応答しないネットワークマウントは実行を失敗させる可能性があります。- ヘルパーが 0 以外で終了し、
timeoutMsが経過してもまだ実行中であるか、まったく開始しません。たとえば、実行可能でないため。 - ヘルパーが stdout または stderr に 1 MiB 以上を書き込みます。
- stdout は単一の JSON オブジェクトではないか、その
managedSettingsに Claude Code が修復できないスキーマ違反 があります。
timeoutMs 制限を名前で指定し、ヘルパーの出力は含まれません。拒否は、対話型セッション、claude -p、Agent SDK セッション、バックグラウンドセッション、およびほとんどのサブコマンドをカバーします。
拒否は意図的なため、停止復旧が必要なヘルパーは独自のキャッシュから提供し、0 で終了する必要があります。
バックグラウンド更新が失敗する場合、Claude Code は最後に成功したポリシーを有効に保ち、/status は失敗した更新をその理由とともに表示します。更新が成功するまで。各更新は、起動実行と同じ timeoutMs および失敗ルールの下で実行されます。
--debug を使用すると、Claude Code はすべての実行からヘルパーの stderr を デバッグログ に書き込みます。
Claude Code は無効な policyHelper 値を ドロップされたエントリ として報告し、残りの管理設定でセッションを開始します。ヘルパーを実行しません。無効な値には、裸のパス文字列と その最小値 より低い timeoutMs が含まれます。
ヘルパーをオフにするには、それを設定するソースからキーを削除します。
policyHelper.path
Claude Code が実行するヘルパー実行可能ファイルに名前を付けます。パスがルールを破る場合に何が起こるかについては、ヘルパーの失敗 を参照してください。
- スコープ:
Managed。macOS plist、Windows HKLM レジストリ、または管理設定ファイルから読み取ります。policyHelperが読み取られる場所。 - タイプ: 文字列、正規化された形式の絶対パス。
.または..セグメントなし。Windows では、.exeで終わるドライブレターまたは UNC パス - デフォルト: なし。
policyHelperが設定されている場合は必須
managed-settings.json
policyHelper.timeoutMs
Claude Code がヘルパーを待機する時間を設定してから、実行を失敗として扱います。タイムアウトした実行は 0 以外の終了と同じ方法で失敗するため、起動時に Claude Code は起動を拒否します。
- スコープ:
Managed。macOS plist、Windows HKLM レジストリ、または管理設定ファイルから読み取ります。policyHelperが読み取られる場所。 - タイプ: 整数、ミリ秒、最小
1000 - デフォルト:
10000
managed-settings.json
policyHelper.refreshIntervalMs
Claude Code がバックグラウンドでヘルパーを間隔で再実行するようにして、ポリシーの変更が実行中のセッションに到達するようにします。更新が成功する場合、その出力は前の管理設定を再起動なしで置き換えます。更新が失敗する場合、Claude Code は既に持っているポリシーを保ちます。
- スコープ:
Managed。macOS plist、Windows HKLM レジストリ、または管理設定ファイルから読み取ります。policyHelperが読み取られる場所。 - タイプ: 整数、ミリ秒: 更新を無効にするには
0。それ以外の場合は最小60000 - デフォルト: 設定されていないため、Claude Code はヘルパーを起動時に 1 回実行します
managed-settings.json
wslInheritsWindowsSettings
WSL 上の Claude Code が Windows ポリシーチェーンから管理設定を読み取るようにします。HKLM と Windows 管理設定ファイルが /etc/claude-code と下の HKCU より優先されます。チェーンがオンの間、Claude Code は Windows 管理ドキュメントが存在しない 場合にのみ /etc/claude-code を読み取ります。HKLM レジストリ値または C:\Program Files\ClaudeCode\ フォルダ内。Windows に既にデプロイしているポリシーを WSL セッションに拡張するために設定します。同じマシン上で、ホストセッションと同じルールに従うようにします。Claude Code は、HKLM レジストリキーまたは管理設定ファイルまたは C:\Program Files\ClaudeCode\ の下のドロップインで設定されている場合にのみそれを尊重します。どちらも Windows 管理者が書き込む必要があります。
- スコープ:
Managed。管理者制御の Windows ソースで。 - タイプ: ブール値
true: WSL 上の Claude Code は Windows ポリシーチェーンから管理設定を読み取り、Windows 管理ドキュメントが存在しない場合にのみ/etc/claude-codeを読み取りますfalse: WSL は/etc/claude-codeのみを読み取ります
- デフォルト:
false。WSL は/etc/claude-codeのみを読み取ります
managed-settings.json
true に設定する場合にのみ WSL に参加します。そのコピーはチェーンをそれ自体でオンにしません。このキーのみを含む Windows ソース。true または false に設定されている場合、ポリシーソースとしてカウントされません。下位優先度のソースはまだポリシーを提供します。このキーはネイティブ Windows に効果がありません。
Claude Code は true と false を引用符の有無にかかわらず読み取り、null をキーの削除として読み取ります。他の値を保持する管理者制御の Windows ソースは、存在する管理ドキュメント としてカウントされます。チェーンがオンの場合: /etc/claude-code も HKCU も適用されず、起動警告がキーを名前で指定します。読み取ることができない HKLM 値または Windows フォルダファイルも、チェーンがオンかどうかに関わらず /etc/claude-code が適用されるのを防ぎます。Claude Code v2.1.282 以降が必要です。
グローバル設定
これらのキーを~/.claude.json に保存してください。設定ファイルには保存しないでください。Claude Code はそれ以外の場所ではこれらを無視します。Claude Code と /config はほとんどのキーを自動的に書き込みます。また、手動で編集することもできます。
autoConnectIde
外部ターミナルから Claude Code を起動するときに、実行中の IDE に自動的に接続します。VS Code または JetBrains ターミナルの外で Claude Code を実行する場合、/config に Auto-connect to IDE (external terminal) として表示されます。
- スコープ:
グローバル設定 - タイプ: ブール値
true: Claude Code は外部ターミナルから起動するときに、実行中の IDE に自動的に接続しますfalse: Claude Code は外部ターミナルから自動的に接続しません。ただし、VS Code または JetBrains ターミナル内、または--ideを使用する場合は接続します
- デフォルト:
false - セッションごとのオーバーライド:
CLAUDE_CODE_AUTO_CONNECT_IDEはこのキーより優先され、1 つのセッションでどちらの方向でも機能します
~/.claude.json
settings.json でこのキーを無視します。
autoInstallIdeExtension
VS Code ターミナルから Claude Code を実行するときに、Claude Code IDE 拡張機能を自動的にインストールします。VS Code または JetBrains ターミナル内で Claude Code を実行する場合、/config に Auto-install IDE extension として表示されます。
- スコープ:
グローバル設定 - タイプ: ブール値
true: Claude Code は VS Code ターミナルから実行するときに IDE 拡張機能を自動的にインストールしますfalse: Claude Code は拡張機能を自動的にインストールしません
- デフォルト:
true - セッションごとのオーバーライド:
CLAUDE_CODE_IDE_SKIP_AUTO_INSTALLを1に設定すると、このキーがtrueの場合でも 1 つのセッションのインストールをスキップします
~/.claude.json
settings.json でこのキーを無視します。
claudeInChromeDefaultEnabled
Chrome 統合をオンにして、毎回 --chrome を渡さずにすべてのインタラクティブ CLI セッションを開始します。claude remote-control を実行する場合、プロジェクトスレッドの 1 つに対して開始するセッションもこのキーに従います。ただし、bypassPermissions モードの場合は除きます。Claude Code v2.1.287 以降では、このキーは VS Code 拡張機能のセッションにも適用されます。詳しくは Chrome をデフォルトで有効にするを参照してください。
/chrome を実行して Enabled by default を選択すると、このキーが設定されます。/config に Claude in Chrome enabled by default として表示されます。
- スコープ:
グローバル設定 - タイプ: ブール値
true: Claude Code は--chromeを渡すときと同様に、インタラクティブ CLI セッションが開始するときに Chrome 統合をオンにします。VS Code 拡張機能では、セッションは開始時にブラウザに接続しますfalse: インタラクティブ CLI セッションは Chrome 統合をオフで開始し、Claude Code はセットアップを提案するのを停止します。1 つのインタラクティブセッションでオンにするには--chromeを渡してください。VS Code 拡張機能では、キーが未設定の場合と同様に、@browserと入力したときにセッションが接続します
- デフォルト: 未設定。Chrome 統合はオフで、Claude Code はセットアップを提案できます
- セッションごとのオーバーライド:
--chromeと--no-chromeはこのキーより優先され、1 つのインタラクティブセッションで機能します
~/.claude.json
settings.json でこのキーを無視します。
copyFullResponse
/copy が応答に含まれるコードブロックがある場合に表示するピッカーなしで、毎回完全な応答をコピーします。そのピッカーで Always copy full response を選択すると、このキーが true に設定されます。/config に Skip the /copy picker として表示されます。
- スコープ:
グローバル設定 - タイプ: ブール値
true:/copyはピッカーを表示せずに完全な応答をコピーしますfalse: 応答にコードブロックが含まれている場合、/copyはピッカーを表示し、1 つのコードブロックまたは完全な応答を選択できます
- デフォルト:
false
~/.claude.json
settings.json でこのキーを無視します。
copyOnSelect
フルスクリーンレンダリングまたはエージェントビューでマウスで選択を終了したときに、テキストをクリップボードに自動的にコピーします。フルスクリーンレンダリングがオンの場合、/config に Copy on select として表示されます。
- スコープ:
グローバル設定 - タイプ: ブール値
true: Claude Code は選択を終了したときにテキストをクリップボードにコピーしますfalse: テキストを選択してもクリップボードは変わらず、代わりにキーボードショートカットで選択をコピーします
- デフォルト:
true
~/.claude.json
settings.json でこのキーを無視します。
defaultToAgentsView
引数なしで claude を実行するときに、新しい会話の代わりにエージェントビューを開きます。エージェントビューがオフになっていない限り、/config に Open agents view by default として表示されます。
- スコープ:
グローバル設定 - タイプ: ブール値
true: 引数なしのclaudeはエージェントビューを開きます。ただし、エージェントビューがオフになっている場合は除きますfalse: 引数なしのclaudeは新しい会話を開始します
- デフォルト:
false
~/.claude.json
settings.json でこのキーを無視します。
diffTool
VS CodeまたはJetBrains IDE が接続されているときに、Claude Code が提案する Edit または Write 変更の差分を表示する場所を選択します。"auto" は IDE の差分ビューアで開き、"terminal" はターミナルに保持します。Claude Code が VS Code または JetBrains IDE に接続されている場合のみ、/config に Diff tool として表示されます。
- スコープ:
グローバル設定 - タイプ: 文字列、以下のいずれか:
"auto": Claude Code は VS Code または JetBrains IDE が接続されているときに IDE の差分ビューアで差分を開きます"terminal": Claude Code は差分をターミナルに保持します
- デフォルト:
"auto"
~/.claude.json
settings.json でこのキーを無視します。
externalEditorContext
Ctrl+G を押すと、Claude Code は入力中のプロンプトを外部エディタで開きます。このキーをオンにすると、エディタバッファは Claude の前の応答で # コメント行として開始されるため、書き込み中に読むことができ、Claude Code は保存時にこれらの行を削除します。/config に Show last response in external editor として表示されます。
- スコープ:
グローバル設定 - タイプ: ブール値
true: エディタバッファは Claude の前の応答で#コメント行として開始され、Claude Code は保存時にこれらを削除しますfalse: エディタバッファはプロンプトのみで開きます
- デフォルト:
false
~/.claude.json
# … (earlier output truncated) でマークします。
Claude Code は settings.json でこのキーを無視します。
leftArrowOpensAgents
空のプロンプトで ← を押して、セッションをバックグラウンドにしてエージェントビューを開きます。このキーを false に設定してショートカットをオフにします。エージェントビューが利用可能な場合、/config に ← opens agents として表示されます。
- スコープ:
グローバル設定 - タイプ: ブール値
true: ターミナルで開始したセッションの空のプロンプトで←を押すと、セッションがバックグラウンドになり、エージェントビューが開きますfalse: Claude Code はショートカットをオフにします。エージェントビューから接続したセッションでは、空のプロンプトで←を押すと切断されます
- デフォルト:
true
~/.claude.json
settings.json でこのキーを無視します。
permissionExplainerEnabled
v2.1.256 まで、Bash または PowerShell 権限プロンプトで Ctrl+E を押してコマンドのモデル生成説明を表示でき、このキーを false に設定してそのショートカットをオフにできました。
- スコープ:
グローバル設定。v2.1.256 以前。 - タイプ: ブール値
- デフォルト:
true
prStatusFooterEnabled
現在のブランチのオープンなプルリクエストまたはマージリクエストのバッジをプロンプトフッターに表示し、そのステータスを示す色付きの下線を表示します。/config に Show PR status footer として表示されます。
- スコープ:
グローバル設定 - タイプ: ブール値
true: フッターは PR レビューステータスの条件下でバッジを表示しますfalse: Claude Code はフッターのプルリクエストおよびマージリクエストチェックをスキップし、そのバッジを表示しません。エージェントビューから接続したセッションは、リンクされたプルリクエストへのプレーンリンクを表示できます
- デフォルト:
true
~/.claude.json
settings.json でこのキーを無視します。
teammateDefaultModel
v2.1.233 まで、このキーをエージェントチームのチームメイトのモデルに設定しました。プロンプトがモデルを指定しなかったチームメイト用:"sonnet" などのエイリアス、または null でリードのモデルに従う。Claude Code が現在そのようなチームメイト用に選択するモデルについては、チームメイトとモデルを指定を参照してください。
- スコープ:
グローバル設定。v2.1.233 以前。 - タイプ: 文字列、モデルエイリアスまたは完全なモデル ID、または
null - デフォルト: 未設定
関連項目
- 権限を設定する:ルール構文、権限モード、ワークスペース信頼
- 環境変数:Claude Code が読み込むすべての
CLAUDE_*、ANTHROPIC_*、およびプロバイダー変数 - Claude で利用可能なツール:組み込みツールと承認が必要なツール
- 設定ファイルの例:個人用ファイル、チームファイル、および組織の管理ファイル
- 管理設定をセットアップする:組織が何を強制するかを決定する方法
- 管理設定をデプロイする:配信メカニズム、管理層内の優先順位、および管理設定の無効なエントリ
- 設定をデバッグする:
claude doctorと設定エラーダイアログ