SpyBara
Go Premium

env-vars.md 2026-10-06 23:59 UTC to 2026-10-07 20:01 UTC

This page contains 358 additions and 354 deletions.

2026
Thu 1 23:59 Fri 2 22:59 Sat 3 23:57 Sun 4 23:58 Mon 5 23:58 Tue 6 23:59 Wed 7 20:57

環境変数

Claude Code の動作を制御する環境変数のリファレンス。

環境変数は、モデル選択、認証、リクエストルーティング、機能トグルなど、Claude Code の動作を制御できます。同じ動作の多くは、設定ファイルフィールド、CLI フラグ、または /model などのセッション内コマンドを通じても設定できます。

このページでは、以下の内容について説明します。

環境変数を設定する

シェルで設定した変数はそのターミナルセッション中のみ有効ですが、設定ファイル内の変数は claude を実行するたびに適用されます。

シェルで設定する

claude を起動する前に変数を設定します。

export API_TIMEOUT_MS="1200000"
claude

すべてのセッションで設定するには、export 行を ~/.bashrc、~/.zshrc、またはシェルのプロファイルファイルに追加します。

代入行は成功時に何も出力しないため、同じシェルで変数を出力して確認します。

echo $API_TIMEOUT_MS

設定ファイルで設定する

settings.json ファイルの env キーの下に変数を追加します。ファイルが存在しない場合は作成します。Claude Code はファイルから直接読み込むため、claude がどのように起動されたかに関わらず有効になります。実行中のセッションは、ファイルを保存するときに新しい値と変更された値を環境に適用しますが、OpenTelemetry monitoring のように起動時に変数を一度だけ読み込む機能は、再起動するまで起動時の値を保持します。ファイルから変数を削除しても、実行中のセッションではその変数は設定解除されません。削除は claude を次に起動するときに有効になります。

{
  "env": {
    "API_TIMEOUT_MS": "1200000",
    "BASH_DEFAULT_TIMEOUT_MS": "300000"
  }
}

Claude Code はこれらの値を記述されたとおりに環境にコピーします。シェルによる処理は行われないため、~ や $HOME などの省略表記は入力したままの状態で残ります。CLAUDE_CONFIG_DIR のようにパスを受け取る変数には、絶対パスを記述してください。例: "CLAUDE_CONFIG_DIR": "/home/you/.claude-work"。

選択したファイルは、変数が適用される対象を制御します。

ファイル 適用対象
~/.claude/settings.json すべてのプロジェクトで、ユーザー自身
.claude/settings.json プロジェクトで作業しているすべての人、ソース管理にチェックイン
.claude/settings.local.json このプロジェクトのみで、ユーザー自身。Claude Code が設定を保存するときに gitignore されます。手動で作成した場合は gitignore に追加してください
管理設定 組織内のすべての人、管理者によってデプロイ

各ファイルの場所については Settings files を、複数のファイルが同じ変数を設定する場合の組み合わせ方については Settings precedence を参照してください。

優先順位

いくつかの動作には環境変数と専用の設定キーの両方があり、Claude Code がどちらを最初に読むかはキーごとに異なります。ANTHROPIC_MODEL と CLAUDE_CODE_AUTO_CONNECT_IDE の場合、Claude Code は変数を最初に読み、変数が設定されていない場合にのみ model または autoConnectIde 設定を使用します。設定しているペアについては、以下の変数の行と 設定リファレンス のキーのエントリを確認してください。

同じ変数がシェルと設定ファイルの env ブロックの両方で設定されている場合、ほとんどのセッションで設定ファイルの値が適用されます。Claude Code は各 env エントリをプロセス環境に書き込み、シェルから継承された値を置き換えます。env 値がシェルとどのように相互作用するか は、代わりに継承された値を保持するセッションについて説明しており、env 設定 はそれらがいつ適用されるかを示しています。いくつかの変数は特別な扱いを受けます。env 設定 は例外をリストしています。

設定ファイルでは変数を設定できますが、削除することはできません。制御していないシェルプロファイルによってエクスポートされた古い CLAUDE_CODE_USE_VERTEX など、設定を解除できない変数をオーバーライドするには、env ブロックで空の文字列に設定します。"CLAUDE_CODE_USE_VERTEX": ""。Claude Code は空の値をプロバイダー選択の未設定として扱います。サブプロセスは引き続き空の値を継承します。

設定ファイル間では、env 値は 設定の優先順位 に従うため、マネージド設定エントリはユーザーまたはプロジェクト設定の同じ変数をオーバーライドします。プロジェクトおよびローカル設定は、CLAUDE_CONFIG_DIR や OpenTelemetry エクスポーター変数など、一部の変数を設定できません。env で Claude Code が無視する変数 は、それらと、引き続き適用される OpenTelemetry オフ値をリストしています。

環境変数が CLI フラグおよびセッション内コマンドとどのように相互作用するかは、機能ごとに異なります。--model と /model は ANTHROPIC_MODEL をオーバーライドしますが、CLAUDE_CODE_EFFORT_LEVEL は --effort と /effort をオーバーライドします。変数が別の設定ソースと相互作用する場合、変数 リストの行は優先順位を示すか、それを文書化するページにリンクします。

Claude Code はスタートアップ時にシェル環境変数を読み込むため、それらへの変更は次回 claude を起動するときに有効になります。設定ファイルの env キーの下に設定された変数は、設定ファイル内 で説明されているスタートアップのみの例外を除き、ファイルが変更されたときに実行中のセッションに再適用されます。

変数

タイムアウト、トークン予算、再試行回数などの数値変数は、通常の数字に加えて、指数表記や桁区切り文字を使った表記も受け付けます。ただし、変数の行に通常の数字のみを受け付けると記載されている場合を除きます。たとえば、Claude Code は 2e3 を 2000、64_000 を 64000 として読み取ります。v2.1.211 より前は、これらの表記によって、1e6 がタイムアウトを 1 に設定するなど、意図よりはるかに小さい値が警告なしに設定されることがありました。

変数 目的
ANTHROPIC_API_KEY X-Api-Key ヘッダーとして送信される API キー。設定すると、ログインしている場合でも、Claude Pro、Max、Team、Enterprise のサブスクリプションの代わりにこのキーが使用されます。非対話モード(-p)では、キーが存在する場合は常に使用されます。対話モードでは、キーがサブスクリプションを上書きする前に、一度だけキーの承認を求められます。代わりにサブスクリプションを使用するには、unset ANTHROPIC_API_KEY を実行します
ANTHROPIC_AUTH_TOKEN Authorization ヘッダーのカスタム値(ここで設定した値の前に Bearer が付加されます)
ANTHROPIC_AWS_API_KEY AWS Console で生成された Claude Platform on AWS のワークスペース API キー。x-api-key として送信され、AWS SigV4 より優先されます
ANTHROPIC_AWS_BASE_URL Claude Platform on AWS のエンドポイント URL を上書きします。カスタムリージョンを使用する場合や、LLM ゲートウェイを経由してルーティングする場合に使用します。デフォルトは https://aws-external-anthropic.{region}.api.aws です。Claude Code は Amazon Bedrock と同じ優先順位でリージョンを解決します
ANTHROPIC_AWS_WORKSPACE_ID Claude Platform on AWS で必須です。すべてのリクエストで anthropic-workspace-id ヘッダーとして送信されます
ANTHROPIC_BASE_URL API エンドポイントを上書きし、プロキシまたはゲートウェイを経由してリクエストをルーティングします。ファーストパーティ以外のホストに設定すると、MCP ツール検索はデフォルトで無効になります。プロキシが tool_reference ブロックを転送する場合は、ENABLE_TOOL_SEARCH=true を設定してください。v2.1.196 以降、この変数が api.anthropic.com 以外のホストを指している場合、Amazon Bedrock、Google Cloud's Agent Platform、Microsoft Foundry での動作と同様に、Remote Control は無効になります
ANTHROPIC_BEDROCK_BASE_URL Amazon Bedrock のエンドポイント URL を上書きします。カスタムの Amazon Bedrock エンドポイントを使用する場合や、LLM ゲートウェイを経由してルーティングする場合に使用します。Amazon Bedrock を参照してください
ANTHROPIC_BEDROCK_MANTLE_BASE_URL Amazon Bedrock Mantle のエンドポイント URL を上書きします。Mantle エンドポイントを参照してください
ANTHROPIC_BEDROCK_REGION_PREFIX AWS リージョンから導出されるプレフィックスの代わりに、Claude Code が最初に試すクロスリージョン推論プロファイルのプレフィックス(us、eu、apac、jp、au、global のいずれか)。AWS GovCloud リージョンでは無視されます。Claude Code v2.1.224 以降が必要です。Amazon Bedrock を参照してください
ANTHROPIC_BEDROCK_SERVICE_TIER Amazon Bedrock のサービスティア(default、flex、priority のいずれか)。X-Amzn-Bedrock-Service-Tier ヘッダーとして送信されます。Amazon Bedrock を参照してください
ANTHROPIC_BETAS API リクエストに含める追加の anthropic-beta ヘッダー値のカンマ区切りリスト。Claude Code は必要なベータヘッダーをすでに送信しています。Claude Code がネイティブにサポートする前に Anthropic API のベータ機能を利用したい場合に使用します。API キー認証が必要な --betas フラグとは異なり、この変数は Claude.ai サブスクリプションを含むすべての認証方法で機能します
ANTHROPIC_CUSTOM_HEADERS リクエストに追加するカスタムヘッダー(Name: Value 形式、複数のヘッダーは改行で区切ります)。名前または値に、カーリークォートやゼロ幅スペースなど HTTP ヘッダーで扱えない文字が含まれている場合、リクエストは失敗し、該当するペアを位置で示すエラーが表示されます。Claude Code v2.1.227 以降が必要です。正確な文字セットとチェックが実行される場所については、Invalid request header value を参照してください。Authorization や Host など、認証情報、組織またはテナント、ルーティング、API 動作に関するヘッダーを設定する値は、サーバー管理設定によって配信された場合、承認が必要な設定として扱われます。プロジェクト設定またはローカル設定から指定された場合、そのような値は env の値が適用される条件のルールに従います
ANTHROPIC_CUSTOM_MODEL_OPTION /model ピッカーにカスタムエントリとして追加するモデル ID。組み込みのエイリアスを置き換えることなく、標準外のモデルやゲートウェイ固有のモデルを選択できるようにする場合に使用します。モデル設定を参照してください
ANTHROPIC_CUSTOM_MODEL_OPTION_DESCRIPTION /model ピッカーに表示されるカスタムモデルエントリの説明。設定されていない場合のデフォルトは Custom model (<model-id>) です
ANTHROPIC_CUSTOM_MODEL_OPTION_NAME /model ピッカーに表示されるカスタムモデルエントリの名前。設定されていない場合、Claude Code が ID を認識していればモデル名が、そうでなければモデル ID がエントリに表示されます
ANTHROPIC_CUSTOM_MODEL_OPTION_SUPPORTED_CAPABILITIES カスタムモデルがサポートする機能のカンマ区切りリスト(例: effort,thinking)。モデル設定を参照してください
ANTHROPIC_DEFAULT_FABLE_MODEL fable エイリアスの解決先となるモデル ID。また、サードパーティプロバイダーでの自動モデルフォールバックにおいて、Claude Code が Fable モデルとして認識する ID でもあります。モデル設定を参照してください
ANTHROPIC_DEFAULT_FABLE_MODEL_DESCRIPTION /model ピッカーに表示される、固定された Fable モデルの説明。設定されていない場合、行には Custom Fable model で始まるデフォルトの説明が表示されます。モデル設定を参照してください
ANTHROPIC_DEFAULT_FABLE_MODEL_NAME /model ピッカーに表示される、固定された Fable モデルの名前。設定されていない場合、Claude Code が固定された ID を認識していればモデル名が、そうでなければ固定された ID が行に表示されます。モデル設定を参照してください
ANTHROPIC_DEFAULT_FABLE_MODEL_SUPPORTED_CAPABILITIES 固定された Fable モデルがサポートする機能のカンマ区切りリスト(例: effort,thinking)。モデル設定を参照してください
ANTHROPIC_DEFAULT_HAIKU_MODEL haiku エイリアスの解決先となるモデル ID。バックグラウンド機能にも使用されます。モデル設定を参照してください
ANTHROPIC_DEFAULT_HAIKU_MODEL_DESCRIPTION /model ピッカーに表示される、固定された Haiku モデルの説明。設定されていない場合、行には Custom Haiku model で始まるデフォルトの説明が表示されます。モデル設定を参照してください
ANTHROPIC_DEFAULT_HAIKU_MODEL_NAME /model ピッカーに表示される、固定された Haiku モデルの名前。設定されていない場合、Claude Code が固定された ID を認識していればモデル名が、そうでなければ固定された ID が行に表示されます。モデル設定を参照してください
ANTHROPIC_DEFAULT_HAIKU_MODEL_SUPPORTED_CAPABILITIES 固定された Haiku モデルがサポートする機能のカンマ区切りリスト(例: effort,thinking)。モデル設定を参照してください
ANTHROPIC_DEFAULT_MODEL 新しいセッションがデフォルトで開始するモデル。Claude Code v2.1.236 以降が必要です。新しいセッションのデフォルトモデルを設定するを参照してください
ANTHROPIC_DEFAULT_OPUS_MODEL opus エイリアスの解決先となり、plan モードがアクティブな間に opusplan が使用するモデル ID。モデル設定を参照してください
ANTHROPIC_DEFAULT_OPUS_MODEL_DESCRIPTION /model ピッカーに表示される、固定された Opus モデルの説明。設定されていない場合、行には Custom Opus model で始まるデフォルトの説明が表示されます。モデル設定を参照してください
ANTHROPIC_DEFAULT_OPUS_MODEL_NAME /model ピッカーに表示される、固定された Opus モデルの名前。設定されていない場合、Claude Code が固定された ID を認識していればモデル名が、そうでなければ固定された ID が行に表示されます。モデル設定を参照してください
ANTHROPIC_DEFAULT_OPUS_MODEL_SUPPORTED_CAPABILITIES 固定された Opus モデルがサポートする機能のカンマ区切りリスト(例: effort,thinking)。モデル設定を参照してください
ANTHROPIC_DEFAULT_SONNET_MODEL sonnet エイリアスの解決先となり、plan モードがアクティブでないときに opusplan が使用するモデル ID。モデル設定を参照してください
ANTHROPIC_DEFAULT_SONNET_MODEL_DESCRIPTION /model ピッカーに表示される、固定された Sonnet モデルの説明。設定されていない場合、行には Custom Sonnet model で始まるデフォルトの説明が表示されます。モデル設定を参照してください
ANTHROPIC_DEFAULT_SONNET_MODEL_NAME /model ピッカーに表示される、固定された Sonnet モデルの名前。設定されていない場合、Claude Code が固定された ID を認識していればモデル名が、そうでなければ固定された ID が行に表示されます。モデル設定を参照してください
ANTHROPIC_DEFAULT_SONNET_MODEL_SUPPORTED_CAPABILITIES 固定された Sonnet モデルがサポートする機能のカンマ区切りリスト(例: effort,thinking)。モデル設定を参照してください
ANTHROPIC_FEDERATION_RULE_ID Workload Identity Federation のフェデレーションルール ID。ANTHROPIC_ORGANIZATION_ID と一緒に設定すると、Claude Code はフェデレーション認証情報を選択します。フェデレーション認証情報は /login の認証情報よりも上位に位置付けられます。認証の優先順位を参照してください
ANTHROPIC_FOUNDRY_API_KEY Microsoft Foundry 認証用の API キー(Microsoft Foundry を参照)
ANTHROPIC_FOUNDRY_AUTH_TOKEN Microsoft Entra アクセストークンなど、Microsoft Foundry 認証用のベアラートークン。Claude Code はこれを Authorization: Bearer ヘッダーとして送信します。ANTHROPIC_FOUNDRY_API_KEY および Azure のデフォルト認証情報チェーンより優先されます。Microsoft Foundry を参照してください。Claude Code v2.1.203 以降が必要です
ANTHROPIC_FOUNDRY_BASE_URL Microsoft Foundry リソースの完全なベース URL(例: https://my-resource.services.ai.azure.com/anthropic)。ANTHROPIC_FOUNDRY_RESOURCE の代替です(Microsoft Foundry を参照)
ANTHROPIC_FOUNDRY_RESOURCE Microsoft Foundry のリソース名(例: my-resource)。Claude Code は URL やホスト名を拒否します。ANTHROPIC_FOUNDRY_BASE_URL が設定されていない場合は必須です(Microsoft Foundry を参照)
ANTHROPIC_MODEL 使用するモデル設定の名前(モデル設定を参照)
ANTHROPIC_ORGANIZATION_ID Workload Identity Federation の組織 ID。ANTHROPIC_FEDERATION_RULE_ID と一緒に設定します。認証の優先順位を参照してください
ANTHROPIC_PROFILE 認証に使用する Anthropic プロファイルの名前。ant auth login で作成したものや、API キーなしで Console アカウントにサインインして作成したものなどです。認証の優先順位を参照してください
ANTHROPIC_SMALL_FAST_MODEL [非推奨] バックグラウンドタスク用の Haiku クラスのモデルの名前
ANTHROPIC_SMALL_FAST_MODEL_AWS_REGION Amazon Bedrock または Amazon Bedrock Mantle を使用する場合に、Haiku クラスのモデルの AWS リージョンを上書きします。Amazon Bedrock では、ANTHROPIC_DEFAULT_HAIKU_MODEL または非推奨の ANTHROPIC_SMALL_FAST_MODEL も設定されている場合にのみ有効になります。それ以外の場合、Amazon Bedrock はセッションのリージョンでデフォルトの Sonnet モデルまたはプライマリモデルを使ってバックグラウンドタスクを実行するためです
ANTHROPIC_VERTEX_BASE_URL Google Cloud's Agent Platform のエンドポイント URL を上書きします。カスタムの Google Cloud's Agent Platform エンドポイントを使用する場合や、LLM ゲートウェイを経由してルーティングする場合に使用します。Google Cloud's Agent Platform を参照してください
ANTHROPIC_VERTEX_PROJECT_ID Google Cloud's Agent Platform のリクエストの宛先となる GCP プロジェクト ID。GCP 認証情報を設定するを参照してください
ANTHROPIC_WORKSPACE_ID Workload Identity Federation のワークスペース ID。フェデレーションルールのスコープが複数のワークスペースにまたがる場合に設定し、トークン交換の対象となるワークスペースを指定します
API_FORCE_IDLE_TIMEOUT バイトが届かない場合にストリーミング中のモデルのレスポンスを中止する、5 分間のボディアイドルタイムアウトを上書きします。低速なゲートウェイやローカルモデルがチャンク間で 5 分を超えて停止する場合などに 0 を設定するとタイムアウトがオフになり、1 を設定するとすべてのプロバイダーでオンのままになります。設定されていない場合、タイムアウトは、Anthropic API への直接接続、Claude Platform on AWS、CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK=1 を設定した Amazon Bedrock 以外のプロバイダーで有効になります。ストリームウォッチドッグはこれとは独立して動作し、ここで 0 を設定した場合でも、長時間の無応答による停止を中止します
API_TIMEOUT_MS API リクエストのタイムアウト(ミリ秒)(デフォルト: 600000、つまり 10 分。最大: 2147483647)。低速なネットワークでリクエストがタイムアウトする場合や、プロキシを経由してルーティングする場合に値を大きくします。最大値を超える値は基盤となるタイマーでオーバーフローし、リクエストが即座に失敗する原因になります
AWS_BEARER_TOKEN_BEDROCK 認証用の Amazon Bedrock API キー(Amazon Bedrock API キーを参照)
BASH_DEFAULT_TIMEOUT_MS フォアグラウンドの Bash または PowerShell ツールコマンドのデフォルトタイムアウト(ミリ秒)(デフォルト: 120000、つまり 2 分)。30 分を超えるデフォルト値は、無人セッションにおけるバックグラウンドコマンドの制限時間のデフォルトにもなります。バックグラウンドの制限時間には Claude Code v2.1.285 以降が必要です
BASH_MAX_OUTPUT_LENGTH Claude Code がコマンドの結果として読み戻す bash 出力の最大文字数(デフォルト: 30000。最大: 150000)。bashOutputMaxChars 設定を行っている場合、Claude Code はこの変数を無視します。出力の制限を参照してください
BASH_MAX_TIMEOUT_MS モデルがフォアグラウンドの Bash または PowerShell ツールコマンドに設定できる最大タイムアウト(ミリ秒)(デフォルト: 600000、つまり 10 分)。実効上限は、この値と BASH_DEFAULT_TIMEOUT_MS のうち大きい方です。2 時間を超える実効上限は、無人セッションにおけるバックグラウンドコマンドの制限時間の最大値にもなります。バックグラウンドの制限時間には Claude Code v2.1.285 以降が必要です
BETA_TRACING_ENDPOINT 詳細なベータトレース用の OTLP/HTTP エンドポイント。ENABLE_BETA_TRACING_DETAILED=1 を指定すると、ログとトレースは設定済みのエクスポーターではなくこのエンドポイントに送信されます。シェル、ユーザー設定、または管理設定で設定します。プロジェクト設定とローカル設定では無視されます
CCR_FORCE_BUNDLE 1 に設定すると、claude --cloud がリモートからクローンする代わりに、ローカルリポジトリをバンドルしてアップロードするよう強制します
CLAUDECODE Claude Code が起動するサブプロセス(Bash ツールと PowerShell ツール、tmux セッション、フックコマンド、ステータスラインコマンド、stdio MCP サーバーのサブプロセス)で 1 に設定されます。IDE 拡張機能も、統合ターミナルでこの変数を設定します。スクリプトが Claude Code によって起動されたサブプロセス内で実行されているかどうかを検出するために使用します。現在のプロセスが、Claude Code が起動した stdio MCP サーバー内ではなく、ツール呼び出しやフックによって直接起動されたかどうかを確認するには、代わりに CLAUDE_CODE_CHILD_SESSION を使用してください
CLAUDE_AFK_COUNTDOWN_MS 未回答の AskUserQuestion ダイアログで、自動続行の何ミリ秒前に画面上のカウントダウンを表示するか。デフォルトは 20000(20 秒)で、自動続行のタイムアウトが上限です。自動続行がオンでない限り効果はありません。askUserQuestionTimeout 設定と CLAUDE_AFK_TIMEOUT_MS を参照してください。Claude Code v2.1.198 以降が必要です
CLAUDE_AFK_TIMEOUT_MS 未回答の AskUserQuestion ダイアログが、ユーザーの応答なしに自動続行するまでのアイドル時間(ミリ秒)。自動続行はデフォルトでオフです。askUserQuestionTimeout 設定でオプトインします。この変数はデモや自動テスト向けの上書き手段です。設定すると、その設定より優先され、設定が未設定または never の場合でも自動続行がオンになります。0 を設定してもタイムアウトはオフにならず、ダイアログが即座に閉じられます。v2.1.198 と v2.1.199 では、自動続行はデフォルトでオンで、タイムアウトは 60000(60 秒)でした。Claude Code v2.1.198 以降が必要です
CLAUDE_AGENT_SDK_DISABLE_BUILTIN_AGENTS 1 に設定すると、Explore や Plan などの組み込みのサブエージェントタイプをすべて無効にします。非対話モード(-p フラグ)でのみ適用されます。白紙の状態から始めたい SDK ユーザーに便利です。これにより、Agent ツール呼び出しで subagent_type が省略された場合に Claude Code が実行するサブエージェントである general-purpose も削除されます。その場合、そのような呼び出しは subagent_type is required で失敗します
CLAUDE_AGENT_SDK_MCP_NO_PREFIX 1 に設定すると、SDK で作成された MCP サーバーのツール名に mcp__<server>__ プレフィックスを付けません。ツールは元の名前を使用します。SDK での使用のみ
CLAUDE_ASYNC_AGENT_STALL_TIMEOUT_MS サブエージェントの停止タイムアウト(ミリ秒)。デフォルトは 600000(10 分)です。ストリームウォッチドッグがオンの状態で CLAUDE_STREAM_IDLE_TIMEOUT_MS を引き上げると、低速または停止した API レスポンスの処理で説明されているとおり、デフォルトもそれに合わせて上がります。タイマーはストリーミングの進行イベントごとにリセットされます。期間内に進行がない場合、Claude Code はサブエージェントを中止し、停止を親に報告します
CLAUDE_AUTOCOMPACT_PCT_OVERRIDE 自動圧縮がトリガーされる、自動圧縮ウィンドウに対する割合(1〜100)を設定します。早めに圧縮するには 50 などの低い値を使用します。この変数でしきい値を引き上げることはできないため、デフォルトの割合を超える値は無視されます。モデルのコンテキスト上限より前に圧縮するセッションでのみ適用されます。メインの会話とサブエージェントの両方に適用されます
CLAUDE_AUTO_BACKGROUND_TASKS 1 に設定すると、長時間実行されるエージェントタスクの自動バックグラウンド化を強制的に有効にします。有効にすると、サブエージェントは約 2 分間実行された後にバックグラウンドに移されます。Claude Code v2.1.212 以降では、非対話モードで長時間の MCP ツール呼び出しの自動バックグラウンド化も有効にします
CLAUDE_AX_PREPARK_MS スクリーンリーダーモードで、Claude Code が新しい行や変更された行を書き込む前に待機する時間(ミリ秒)。デフォルトは 0 で、Claude Code は待機しません。v2.1.287 より前のデフォルトは 50 でした。Claude Code は待機時間の上限を 5000 に制限します。Claude Code v2.1.233 以降が必要です
CLAUDE_AX_SCREEN_READER 1 に設定すると、装飾的な枠線やアニメーションのないフラットなテキストで、スクリーンリーダーに適した出力を表示します。0 に設定すると、axScreenReader が true の場合でもスクリーンリーダーモードを強制的にオフにします。--ax-screen-reader フラグが優先されます。Claude Code v2.1.181 以降が必要です
CLAUDE_AX_STARTUP_QUIET_MS スクリーンリーダーモードで、起動確認行の後、Claude Code が最初のインターフェース描画を保留する時間(ミリ秒)。これにより、新しい出力に中断される前に、スクリーンリーダーがその行を最後まで読み上げられます。デフォルトは 3000 です。0 に設定すると即座に描画します。Claude Code は保留時間の上限を 600000(10 分)に制限します。最初のキー入力で保留は早期に終了します。Claude Code v2.1.217 以降が必要です
CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR メインセッションで、各 Bash または PowerShell コマンドの後に元の作業ディレクトリに戻ります
CLAUDE_BYTE_STREAM_IDLE_TIMEOUT_MS バイトレベルのストリーミングアイドルウォッチドッグのタイムアウト(ミリ秒)。設定すると、そのウォッチドッグについて CLAUDE_STREAM_IDLE_TIMEOUT_MS より優先され、イベントレベルのウォッチドッグは変更されません。Claude Code はこの変数を 10 秒から 30 分の範囲に制限します。Claude Code v2.1.210 以降が必要です
CLAUDE_CLIENT_PRESENCE_FILE 画面ロックリスナーなどの外部ツールが、画面のロック解除時に作成し、ロック時に削除するファイルのパス。ファイルが存在する間、Claude Code は Remote Control のモバイルプッシュ通知をスキップするため、コンピューターを実際に使用している間はプッシュ通知が届かなくなります。ファイルが存在しないか読み取れない場合、通知は通常どおり送信されます。Claude Code はファイルをポーリングせず、プッシュをトリガーするイベントごとに 1 回確認します。Claude Code v2.1.181 以降が必要です
CLAUDE_CODE_ACCESSIBILITY 1 に設定すると、ネイティブのターミナルカーソルを表示したままにし、反転テキストのカーソルインジケーターを無効にします。macOS のズーム機能などの画面拡大ツールがカーソル位置を追跡できるようになります
CLAUDE_CODE_ADDITIONAL_DIRECTORIES_CLAUDE_MD 1 に設定すると、--add-dir で指定したディレクトリからメモリファイルを読み込みます。CLAUDE.md、.claude/CLAUDE.md、.claude/rules/*.md、CLAUDE.local.md を読み込みます。デフォルトでは、追加ディレクトリからメモリファイルは読み込まれません
CLAUDE_CODE_ALT_SCREEN_FULL_REPAINT 1 に設定すると、フルスクリーン描画で差分更新を送信する代わりに、フレームごとに画面全体を再描画します。フルスクリーンモードで古いテキストや位置のずれたテキストの断片が表示される場合に使用します。Windows では、バックグラウンドセッションとエージェントビューで Claude Code がこれを自動的に有効にします
CLAUDE_CODE_ALWAYS_ENABLE_EFFORT 1 に設定すると、Claude Code がモデル ID を effort 対応として認識しない場合でも、すべてのリクエストで effort パラメーターを送信します。カスタム識別子でモデルを提供する LLM ゲートウェイやサードパーティプロバイダーを経由してルーティングする場合に使用します。Claude 3 モデル、Sonnet 4.0 および 4.5、Opus 4.0 および 4.1、Haiku 4.5 など、API で effort パラメーターを拒否するモデルは、リクエストが失敗しないよう引き続き除外されます
CLAUDE_CODE_API_KEY_HELPER_TTL_MS 認証情報を更新する間隔(ミリ秒)(apiKeyHelper を使用する場合)
CLAUDE_CODE_ARTIFACT_AUTO_OPEN 0 に設定すると、新しいアーティファクトが公開されたときに Claude Code がブラウザを自動的に開かないようにします
CLAUDE_CODE_ARTIFACT_COMMENTS 0 に設定すると、Claude がアーティファクトへのコメントを読んで返信しないようにします。CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC によってアーティファクトがオフになっている場合は効果がありません。Claude Code v2.1.221 以降が必要です
CLAUDE_CODE_ARTIFACT_COMMENTS_AUTOREACT 0 に設定すると、Claude が自分宛てに送られたコメントに自ら返信するのを停止します。Claude Code v2.1.228 以降が必要です
CLAUDE_CODE_ATTRIBUTION_HEADER 0 に設定すると、クライアントのバージョンとプロンプトのフィンガープリントを含む帰属ブロックをシステムプロンプトの先頭から省略します。Anthropic API への直接接続でのキャッシュは、どちらの場合も影響を受けません。一部の直接接続の構成では、0 を設定した場合でも、Claude Code は auto モードの分類器リクエストにこのブロックを残します。対象となる接続と認証情報については、システムプロンプトの帰属ブロックを確認してください。v2.1.181 より前は、カスタムベース URL と Microsoft Foundry への接続でブロックにリクエストごとのトークンが含まれていたため、それらのバージョンでは、LLM ゲートウェイがリクエストボディに基づいてキャッシュする場合やリクエストをサードパーティプロバイダーに転送する場合、または Microsoft Foundry に直接接続する場合に、0 に設定してください
CLAUDE_CODE_AUTO_BACKGROUND_WORKER_CHECKIN_SECONDS v2.1.283 で削除されました。代わりに CLAUDE_CODE_WORKER_CHECKIN_SCHEDULE を使用してください
CLAUDE_CODE_AUTO_COMPACT_WINDOW 自動圧縮ウィンドウをトークン数で、100000 から 1000000 の範囲で設定します。500000 のような通常の整数のみを受け付けます。500k のような値は 500 として読み取られ、最小値の 100K に制限されます。実効ウィンドウは、モデルのコンテキストウィンドウでも上限が設けられます。/autocompact コマンド、--autocompact フラグ、autoCompactWindow 設定より優先されます。ステータスラインの used_percentage は常にモデルのコンテキストウィンドウ全体に対して計測されるため、この変数を設定すると、その割合は圧縮が実行されるタイミングを示さなくなります
CLAUDE_CODE_AUTO_CONNECT_IDE 自動の IDE 接続を上書きします。デフォルトでは、サポートされている IDE の統合ターミナル内で起動すると、Claude Code は自動的に接続します。これを防ぐには false に設定します。tmux が親ターミナルを隠してしまう場合など、自動検出が失敗したときに接続を強制的に試行するには true に設定します。autoConnectIde グローバル設定より優先されます
CLAUDE_CODE_AUTO_MODE_SERVER Claude Code がサーバーに auto モードのアクションのレビューを求めるかどうかを制御します。0 に設定すると、代わりに Claude Code 自身の分類器リクエストを使用します。Anthropic API への直接接続では、v2.1.281 以降が必要です。変数が未設定の場合にどのセッションがサーバーに問い合わせるか、またどのバージョンからかについては、リンク先のセクションに記載されています。Claude Code v2.1.271 以降が必要です
CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS AWS のデフォルト認証情報プロバイダーチェーンが認証情報を生成するまで Claude Code が待機する時間(ミリ秒)。この時間を過ぎるとリクエストは AWS default-chain credential resolve timed out で失敗します(デフォルト: 60000)。aws-vault のようなラッパーを介した MFA 付きのブラウザベースの SSO サインインなど、チェーン内のステップが正当な理由でより長い時間を必要とする場合に値を大きくします。Amazon Bedrock、Claude Platform on AWS、Mantle エンドポイントに適用されます。認証情報のキャッシュと解決のタイムアウトを参照してください。Claude Code v2.1.207 以降が必要です
CLAUDE_CODE_BASH_EDIT_DIFF 0 に設定すると Bash コマンドの実行中に変更されたファイルの差分をオフにし、1 に設定するとすべての権限モードで記録します。bashEditDiffEnabled 設定より優先されます。Claude Code v2.1.269 以降が必要です
CLAUDE_CODE_BG_TASKS_REPORT_RUNNING 0 に設定すると、バックグラウンド処理がまだ実行中であっても、非対話セッションがターン終了ごとにホストへアイドル状態を報告するようにします。デフォルトでは、バックグラウンドエージェントやワークフローの実行などのバックグラウンド処理がまだ動作している間、セッションはターン終了後も実行中の状態を報告し続けます。これにより、リモートのセッション一覧など状態を監視するホストが、作業の途中で Claude がユーザーの入力を待っていると通知するのを防ぎます。開発サーバーなどのバックグラウンドシェルコマンドは、実行中の状態を保持しません。実行中状態のデフォルトと 0 によるオプトアウトには Claude Code v2.1.269 以降が必要です。それより前のバージョンでは、実行中の状態を保持するには 1 を設定します
CLAUDE_CODE_BRIDGE_SESSION_ID セッションにアクティブな Remote Control 接続がある間、Bash ツールとフックコマンドのサブプロセスで自動的に設定され、接続が終了すると削除されます。値は session_ 形式のセッション ID で、セッションの claude.ai/code URL に表示されるものと同じ識別子です。これにより、スクリプトは自分を実行したセッションへのリンクを作成できます。Claude Code v2.1.199 以降が必要です。クラウドセッションでは、代わりに CLAUDE_CODE_REMOTE_SESSION_ID を読み取ってください
CLAUDE_CODE_BS_AS_CTRL_BACKSPACE 0 に設定すると、Claude Code は 0x08 バイト(^H とも表記)を通常の Backspace として読み取り、1 に設定すると Ctrl+Backspace として読み取ります。どちらの値もプラットフォームのデフォルトを置き換えます。デフォルトでは、Claude Code は Windows では Ctrl+Backspace として読み取り(TERM_PROGRAM が mintty の場合または TERM が cygwin の場合を除く)、macOS と Linux では通常の Backspace として読み取ります。Backspace で単語全体が削除される Windows のターミナルでは 0 を設定してください
CLAUDE_CODE_CERT_STORE TLS 接続用の CA 証明書ソースのカンマ区切りリスト。bundled は Claude Code に同梱されている Mozilla の CA セットです。system はオペレーティングシステムのトラストストアで、tls.getCACertificates を備えたランタイム(ネイティブバイナリ、または npm インストールの場合は Node 22.15 以降)でのみ読み取られます。CA 証明書ストアを参照してください。デフォルトは bundled,system です
CLAUDE_CODE_CHILD_SESSION Claude Code が Bash、PowerShell、Monitor ツール、フックコマンド、ステータスラインコマンドを介して起動するサブプロセスで 1 に設定されます。stdio MCP サーバーのサブプロセスには設定されません。これらは長期間存続し、起動元のセッションより長く動作するためです。CLAUDECODE とは異なり、この変数は Claude Code 自身がサブプロセスを起動するときにのみ設定され、IDE 拡張機能では設定されないため、ネストされたセッションと、IDE の統合ターミナルで起動されたトップレベルの claude を確実に区別できます。この方法で起動されたネストされた対話型の claude TUI は、--resume、--continue、上矢印キーの履歴、claude agents の一覧から自動的に除外されます。非対話の claude -p セッションは引き続き保存されます。この除外を上書きするには、CLAUDE_CODE_FORCE_SESSION_PERSISTENCE=1 を設定します。Claude Code v2.1.172 以降が必要です
CLAUDE_CODE_CLIENT_CERT mTLS 認証用のクライアント証明書ファイルのパス
CLAUDE_CODE_CLIENT_KEY mTLS 認証用のクライアント秘密鍵ファイルのパス
CLAUDE_CODE_CLIENT_KEY_PASSPHRASE 暗号化された CLAUDE_CODE_CLIENT_KEY のパスフレーズ(任意)
CLAUDE_CODE_CONNECT_TIMEOUT_MS v2.1.186 で削除され、現在は何もしません。以前は、ストリーミング API リクエストの接続、TLS、レスポンスヘッダーのフェーズに個別のタイムアウトを設定していました。リクエストごとのタイムアウトには API_TIMEOUT_MS を使用してください。ストリーミングリクエストのレスポンスヘッダーのフェーズについては、CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS を参照してください
CLAUDE_CODE_DEBUG_LOGS_DIR デバッグログファイルのパスを上書きします。名前に反して、これはディレクトリではなくファイルパスです。デバッグモードを --debug、/debug、または DEBUG 環境変数で別途有効にする必要があります。この変数を設定するだけではログ記録は有効になりません。--debug-file フラグは両方を一度に行います。デフォルトは ~/.claude/debug/<session-id>.txt です
CLAUDE_CODE_DEBUG_LOG_LEVEL デバッグログファイルに書き込まれる最小ログレベル。値: verbose、debug(デフォルト)、info、warn、error。ステータスラインコマンドの完全な出力など大量の診断情報を含めるには verbose に設定し、ノイズを減らすには error に引き上げます
CLAUDE_CODE_DISABLE_1M_CONTEXT 1 に設定すると、1M コンテキストウィンドウのサポートを無効にします。設定すると、1M のモデルバリアントはモデルピッカーで利用できなくなり、Claude Code は Sonnet 5.5 や Fable モデルなど、ネイティブで 1M のウィンドウを持つモデルのセッションを 200K のウィンドウに制限します。この制限がどのように適用されるかについては、拡張コンテキストを参照してください。コンプライアンス要件のあるエンタープライズ環境で役立ちます。認識されない [1m] モデル ID のウィンドウを補正する際の役割については、ゲートウェイまたはカスタムモデル ID のウィンドウを補正するを参照してください
CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING 1 に設定すると、Opus 4.6 と Sonnet 4.6 の適応型推論を無効にし、MAX_THINKING_TOKENS で制御される固定の思考予算にフォールバックします。常に適応型推論を使用する Fable モデル、Sonnet 5 以降、Haiku 5.5、Opus 4.7 以降には効果がありません
CLAUDE_CODE_DISABLE_ADMIN_ENV_UNION 1 に設定すると、Claude Code が管理者ソース間で管理設定の env ブロックをキーごとにマージしないようにします。v2.1.223 より前と同様に、最も優先度の高いソースの env ブロック全体のみが適用されます。Claude Code は設定の env ブロックで配信されたコピーを無視するため、Claude Code を起動する環境で設定してください。Claude Code v2.1.223 以降が必要です
CLAUDE_CODE_DISABLE_ADVISOR_TOOL 1 に設定すると、アドバイザーツールを無効にします。/advisor コマンドは利用できなくなり、設定された advisorModel は無視されます。--advisor フラグは受け付けられますが効果はないため、このフラグを渡す既存のスクリプトはエラーなく動作し続けます
CLAUDE_CODE_DISABLE_AGENT_VIEW 1 に設定すると、バックグラウンドエージェントとエージェントビュー(claude agents、--bg、/background、オンデマンドのスーパーバイザー)をオフにします。disableAgentView 設定と同等です
CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN 1 に設定すると、フルスクリーン描画を無効にし、従来のメイン画面レンダラーを使用します。会話はターミナルのネイティブなスクロールバックに残るため、Cmd+f や tmux のコピーモードが通常どおり機能します。CLAUDE_CODE_NO_FLICKER と tui 設定より優先されます。/tui default で切り替えることもできます。常にフルスクリーン描画を使用する、エージェントビューから開いたバックグラウンドセッションには適用されません
CLAUDE_CODE_DISABLE_ARTIFACT 1 に設定すると、セッションの出力を claude.ai 上の非公開 Web ページとして公開する Artifact ツールをオフにします。設定すると、どの設定ファイルでもツールを再度オンにすることはできません。代わりに設定ファイルからツールをオフにするには、enableArtifact を false に設定します。非推奨の disableArtifact キーでもオフにできます
CLAUDE_CODE_DISABLE_ATTACHMENTS 1 に設定すると、添付ファイルの処理を無効にします。@ 構文によるファイルのメンションは、ファイルの内容に展開されずにプレーンテキストとして送信されます
CLAUDE_CODE_DISABLE_AUTH_REFRESH_LOCK 1 に設定すると、別のプロセスが gcpAuthRefresh または awsAuthRefresh コマンドを実行している間に待機する代わりに、Claude Code のプロセスがそのコマンドを自ら実行するようにします。Claude Code v2.1.286 以降が必要です
CLAUDE_CODE_DISABLE_AUTO_MEMORY 1 に設定すると、自動メモリを無効にします。0 に設定すると、--bare モードや autoMemoryEnabled: false によって無効になる場合でも、自動メモリを強制的にオンにします。無効にすると、Claude は自動メモリファイルを作成も読み込みもしません
CLAUDE_CODE_DISABLE_BACKGROUND_TASKS 1 に設定すると、Bash ツールとサブエージェントツールの run_in_background パラメーター、自動バックグラウンド化、Ctrl+B ショートカットを含む、すべてのバックグラウンドタスク機能を無効にします
CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_DEFAULT 1 に設定すると、Content-Type ヘッダーが欠落しているか空である Amazon Bedrock のストリーミングレスポンスを、Claude Code が Amazon Bedrock のバイナリイベントストリームとして扱わないようにします。デフォルトでは、Claude Code はゲートウェイが、それ以外は変更されていないレスポンスからヘッダーを削除したとみなし、ボディをデコードしてストリーミングを継続します。ストリームを Server-Sent Events として再送出するゲートウェイの場合にのみ設定してください。その場合、Claude Code はヘッダーのないボディを Server-Sent Events として読み取ります。Claude Code v2.1.239 以降が必要です
CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_GUARD 1 に設定すると、Amazon Bedrock のストリーミングレスポンスが application/vnd.amazon.eventstream の Content-Type を持つかどうかのチェックをスキップします。この変数がない場合、レスポンスが異なる Content-Type を持つと、Claude Code はその型を示すエラーでリクエストを失敗させます。これはゲートウェイまたはプロキシがレスポンスを変換していることを意味します。この変数を設定するのではなく、Content-Type ヘッダーとボディを変更せずに転送するようゲートウェイを設定してください。Claude Code v2.1.208 以降が必要です
CLAUDE_CODE_DISABLE_BG_EXIT_HANDOFF 1 に設定すると、スーパーバイザーがバックグラウンドセッションのプロセスを停止、再起動、または更新したときに、そのセッションで実行中のバックグラウンドシェルコマンド、動的ワークフロー、そして v2.1.198 以降はバックグラウンドサブエージェントを、セッションの次のプロセスに引き渡す代わりに停止します。影響するのはこの引き渡しのみです。← または /background でセッションをバックグラウンド化した場合は、実行中の作業は引き続き引き継がれます。CLAUDE_DISABLE_ADOPT は両方をオフにします。Claude Code v2.1.196 以降が必要です
CLAUDE_CODE_DISABLE_BG_SHELL_PRESSURE_REAP 1 に設定すると、メモリ逼迫時に Claude Code がバックグラウンドシェルコマンドを終了しないようにします。デフォルトでは、macOS と Linux において、オペレーティングシステムが深刻なメモリ逼迫を報告し、かつセッションがターンやサブエージェントを実行せずに 30 分間アイドル状態だった場合、Claude Code はバックグラウンドシェルを終了します。Windows にはメモリ逼迫のシグナルがないため、この変数は効果がありません。Claude Code v2.1.193 以降が必要です
CLAUDE_CODE_DISABLE_BUNDLED_SKILLS 1 に設定すると、Claude Code に含まれるスキルとワークフローを無効にします。バンドルスキルとワークフローは完全に削除され、/init などの組み込みコマンドは入力可能なままですがモデルからは隠されます。/doctor は組み込みコマンドと同様に入力可能なままです。隠すには代わりに DISABLE_DOCTOR_COMMAND を使用してください。プラグイン、.claude/skills/、.claude/commands/ のスキルは影響を受けません。disableBundledSkills 設定と同等です
CLAUDE_CODE_DISABLE_CFC_PROMPT 1 に設定すると、Claude in Chrome のブラウザツールを利用可能なままにしつつ、システムプロンプトの Chrome セクションと /claude-in-chrome バンドルスキルを省略します。Claude Code を組み込み、独自のブラウザガイダンスを提供するホスト向けです。Claude Code v2.1.257 以降が必要です
CLAUDE_CODE_DISABLE_CLAUDE_MDS 1 に設定すると、ユーザー、プロジェクト、自動メモリのファイルを含め、CLAUDE.md メモリファイルをコンテキストに一切読み込まないようにします
CLAUDE_CODE_DISABLE_CRON 1 に設定すると、スケジュールタスクを無効にします。/loop スキルと cron ツールは利用できなくなり、セッションの途中ですでに実行中のタスクを含め、スケジュール済みのタスクはすべて実行されなくなります
CLAUDE_CODE_DISABLE_DANGEROUS_RM_TIMEOUT 1 に設定すると、クリティカルパスの削除に関するプロンプトの制限時間をオフにします。その場合、auto モードでは Claude Code はこれらの削除を代わりに分類器に送信し、bypassPermissions モードではプロンプトはユーザーの回答を待ちます。Claude Code は設定の env ブロックで配信されたコピーを無視するため、Claude Code を起動する環境で設定してください。Claude Code v2.1.281 以降が必要です
CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS 1 に設定すると、プレリリースの anthropic-beta リクエストヘッダー、それと組になるボディフィールド、defer_loading や eager_input_streaming などのベータ版ツールスキーマのフィールドを API リクエストから削除します。プロキシゲートウェイが anthropic-beta ヘッダーに対する Unexpected value(s) エラーや Extra inputs are not permitted エラーでリクエストを拒否する場合に使用します。この変数が削除するもの(MCP ツール検索を含む)と、Claude Code が引き続き送信するものについては、プレリリース機能を無効にするに記載されています
CLAUDE_CODE_DISABLE_EXPLORE_PLAN_AGENTS 1 に設定すると、組み込みの Explore および Plan サブエージェントを無効にします。Claude は代わりに検索ツールまたは汎用サブエージェントで探索し、plan モードでは Explore エージェントや Plan エージェントを起動せずにファイルを直接読み取ります。Explore または Plan という名前のカスタムサブエージェントは影響を受けません。Agent SDK または非対話モードで組み込みのサブエージェントタイプをすべて削除するには、代わりに CLAUDE_AGENT_SDK_DISABLE_BUILTIN_AGENTS を使用してください。Claude Code v2.1.198 以降が必要です
CLAUDE_CODE_DISABLE_FAST_MODE 1 に設定すると、fast mode を無効にします
CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY 1 に設定すると、「How is Claude doing?」というセッション品質アンケートを無効にします。DISABLE_TELEMETRY、DO_NOT_TRACK、または CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC が設定されている場合も、CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL で再度オプトインしない限り、アンケートは無効になります。完全に無効にする代わりにサンプリングレートを設定するには、feedbackSurveyRate 設定を使用します。セッション品質アンケートを参照してください
CLAUDE_CODE_DISABLE_FILE_CHECKPOINTING 1 に設定すると、ファイルのチェックポイント機能を無効にします。/rewind コマンドでコードの変更を復元できなくなります。fileCheckpointingEnabled 設定を上書きします
CLAUDE_CODE_DISABLE_GIT_INSTRUCTIONS 1 に設定すると、組み込みのコミットおよび PR ワークフローの指示と git status のスナップショットを Claude のコンテキストから削除します。独自の git ワークフロースキルを使用する場合に便利です。設定すると、includeGitInstructions 設定より優先されます
CLAUDE_CODE_DISABLE_INLINE_SHELL_RM_PROMPT 1 に設定すると、bash -c 'rm -rf ~' のように -c でシェルに渡されるスクリプトを、Claude Code がクリティカルパスの削除について読み取らないようにします。Claude Code はこれらのスクリプト内のシェル変数と位置パラメーターの対象を引き続きチェックし、その他のクリティカルパスのチェックも引き続き実行されます。Claude Code は設定の env ブロックで配信されたコピーを無視するため、Claude Code を起動する環境で設定してください。Claude Code v2.1.288 以降が必要です
CLAUDE_CODE_DISABLE_LEGACY_MODEL_REMAP 1 に設定すると、Anthropic API で Opus 4.0 および 4.1 が現在の Opus バージョンに自動的に再マッピングされるのを防ぎます。意図的に古いモデルに固定したい場合に使用します。この再マッピングは Amazon Bedrock、Google Cloud's Agent Platform、Microsoft Foundry では実行されません
CLAUDE_CODE_DISABLE_MODEL_ACCESS_FALLBACK 1 に設定すると、Amazon Bedrock および Google Cloud's Agent Platform 上の Claude Code が、セッションの途中でアカウントがセッションのモデルへのアクセスを失った場合に古いモデルへ切り替えないようにします。代わりに、拒否されたリクエストは即座に失敗します。設定したフォールバックモデルチェーンはその拒否時にも引き続き切り替わり、起動時のモデルチェックも起動時に引き続きフォールバックします。Claude Code v2.1.285 以降が必要です
CLAUDE_CODE_DISABLE_MOUSE 1 に設定すると、フルスクリーン描画でマウストラッキングを無効にします。PgUp と PgDn によるキーボードスクロールは引き続き機能します。ターミナルのネイティブな選択時コピーの動作を維持したい場合に使用します
CLAUDE_CODE_DISABLE_MOUSE_CLICKS 1 に設定すると、マウスホイールでのスクロールを維持したまま、フルスクリーン描画でのクリック、ドラッグ、ホバーの処理を無効にします。Claude Code 内でホイールスクロールを使いたいが、クリックでカーソルの位置が変わったり、ツールの出力が展開されたり、リンクが開いたりするのを避けたい場合に使用します。両方が設定されている場合は CLAUDE_CODE_DISABLE_MOUSE が優先されます。Claude Code v2.1.195 以降が必要です
CLAUDE_CODE_DISABLE_MTLS_RELOAD_ON_STALE_CONNECTION 1 に設定すると、接続のリセットや TLS ハンドシェイクエラーなどの接続レベルのエラーで API リクエストが失敗したときに、Claude Code が mTLS のクライアント証明書と鍵を再読み込みしないようにします。再読み込みを無効にすると、Claude Code はローテーションされたファイルを、次に設定を適用するときか次回の起動時にのみ読み込みます。Claude Code v2.1.232 以降が必要です
CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC 1 などの空でない任意の値に設定すると、必須ではないネットワークトラフィックを無効にします。対象は、自動更新、テレメトリ、エラー報告、/feedback コマンド、Claude が作成するフィードバック、リリースノート、PR および MR のステータスバッジのチェック、fast mode のチェックなどの可用性チェックです。また、依存関係のインストールをトリガーする可能性があるため、ネットワークトラフィックではなくローカルコマンドであるプラグインの command ソースのバックグラウンド実行も停止します。ほとんどのオン/オフ変数とは異なり、0 や false に設定してもこのトラフィックは無効になります。再度許可するには、変数の設定を解除してください。フィーチャーフラグの取得も無効になるため、Remote Control やその他のフィーチャーフラグの取得を必要とする機能は利用できなくなります。公式プラグインマーケットプレイスの自動インストールは対象外です。これを無効にするには CLAUDE_CODE_DISABLE_OFFICIAL_MARKETPLACE_AUTOINSTALL を使用してください。独自のオプトインを持つゲートウェイのモデル検出には影響しません
CLAUDE_CODE_DISABLE_NONSTREAMING_FALLBACK 1 に設定すると、ストリーミングリクエストがストリームの途中で失敗したときの非ストリーミングフォールバックを無効にします。ストリーミングエラーは代わりに再試行レイヤーに伝播されます。プロキシやゲートウェイによってフォールバックがツールの重複実行を引き起こす場合に便利です
CLAUDE_CODE_DISABLE_NOTIFICATION_PRESENCE_CHECK 1 に設定すると、ユーザーがターミナルで入力中またはターミナルにフォーカスしている間でも、PushNotification ツールのデスクトップ通知を送信します。デフォルトでは、最近のキーボード操作やターミナルのフォーカスを検出すると、ツールはデスクトップ通知とモバイルプッシュの両方をスキップします。この変数はローカルのチェックのみを無効にするため、ユーザーがアクティブであることをサーバーが検出した場合、サーバーは引き続きモバイルプッシュを抑制できます。Claude Code v2.1.193 以降が必要です
CLAUDE_CODE_DISABLE_OFFICIAL_MARKETPLACE_AUTOINSTALL 1 に設定すると、公式プラグインマーケットプレイスの自動登録を無効にします。Claude Code は、マーケットプレイスを登録しようとするとき(通常はマシンでの初回の対話型起動時)にこの変数を読み取ります。その時点で変数が設定されていると、Claude Code は登録を恒久的にスキップします。後で変数の設定を解除しても、スキップは取り消されません。claude plugin marketplace add anthropics/claude-plugins-official を実行すれば、いつでもマーケットプレイスを登録できます
CLAUDE_CODE_DISABLE_PERMISSION_PROMPT_NOTIFY_HOOKS 1 に設定すると、Claude Code が未回答の権限リクエストを Agent SDK の canUseTool コールバックに送信するセッション(Claude Desktop や VS Code 拡張機能が Claude Code をホストする方法)で、Claude Code が未回答の権限リクエストに対する Notification フックを実行しないようにします。ターミナルセッションでは効果がありません。Claude Code v2.1.233 以降が必要です
CLAUDE_CODE_DISABLE_POLICY_SKILLS 1 に設定すると、システム全体の管理スキルディレクトリからのスキルの読み込みをスキップします。オペレーターがプロビジョニングしたスキルを読み込むべきでないコンテナや CI のセッションで便利です
CLAUDE_CODE_DISABLE_POWERSHELL_CMD_RM_DENY 1 に設定すると、ドライブのルートやホームディレクトリなどのシステムパスに対する cmd の組み込みコマンド rd、rmdir、del、erase を拒否する PowerShell ツールのチェックをオフにします。Claude Code は設定ファイルの env ブロック内のこの変数を無視します。Claude Code v2.1.283 以降が必要です
CLAUDE_CODE_DISABLE_REFUSAL_FALLBACK 1 に設定すると、安全性分類器がリクエストを警告したときの自動モデル切り替えをオフにします。これは switchModelsOnFlag 設定が制御する動作です
CLAUDE_CODE_DISABLE_STRUCTURED_OUTPUTS 1 に設定すると、アップストリームが構造化出力の output_config.format フィールドとそれと組になる anthropic-beta の値を拒否する LLM ゲートウェイ向けに、Claude Code がそれらを送信しないようにします。CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS がオフにするその他のプレリリース機能はオンのままになります。Claude Code v2.1.288 以降が必要です
CLAUDE_CODE_DISABLE_SUBSTITUTION_RM_PROMPT 1 に設定すると、rm -rf "$(pwd)" のように、対象全体がコマンド置換の出力である再帰的な rm に対するクリティカルパスのチェックをオフにします。その他のクリティカルパスのチェックは引き続き実行されます。Claude Code は設定の env ブロックで配信されたコピーを無視するため、Claude Code を起動する環境で設定してください。Claude Code v2.1.281 以降が必要です
CLAUDE_CODE_DISABLE_TERMINAL_TITLE 1 に設定すると、会話のコンテキストに基づくターミナルタイトルの自動更新を無効にします。これにより、セッションタイトルを生成するバックグラウンドの小型・高速モデルへのリクエストもスキップされます
CLAUDE_CODE_DISABLE_THINKING 1 に設定すると、API リクエストから thinking パラメーターを完全に省略します。これは、このパラメーターを拒否するプロキシやゲートウェイ向けの互換性オプションです。デフォルトで思考するモデルでは、パラメーターを省略してもモデルが思考する場合があります。Anthropic API で拡張思考を明示的に無効にするには、代わりに MAX_THINKING_TOKENS=0 を使用してください。思考をオフにできない Opus 5.5、Sonnet 5.5、Haiku 5.5、Fable モデルでは、どちらの変数でも思考はオフになりません。サードパーティプロバイダーでは、MAX_THINKING_TOKENS=0 も同様にパラメーターを省略するため、2 つの変数は同じように動作します
CLAUDE_CODE_DISABLE_UNKNOWN_MODEL_WINDOW_ENFORCEMENT 1 に設定すると、LLM ゲートウェイのエイリアスなど、Claude Code がモデル ID を認識しない場合に、事前の自動圧縮をスキップします。この変数がない場合、Claude Code はその ID に対して想定したコンテキストウィンドウで圧縮します。代わりに CLAUDE_CODE_MAX_CONTEXT_TOKENS で想定ウィンドウを補正することもできます。それぞれの変数がどのような場合に適用されるかについては、ゲートウェイまたはカスタムモデル ID のウィンドウを補正するを参照してください。Claude Code v2.1.223 以降が必要です
CLAUDE_CODE_DISABLE_VIRTUAL_SCROLL 1 に設定すると、フルスクリーン描画で仮想スクロールを無効にし、トランスクリプト内のすべてのメッセージを描画します。フルスクリーンモードでのスクロール時に、メッセージが表示されるべき場所に空白の領域が表示される場合に使用します
CLAUDE_CODE_DISABLE_WEB_FETCH 1 に設定すると、WebFetch ツールをオフにします。WebSearch ツールは引き続き利用できます。Claude Code v2.1.285 以降が必要です
CLAUDE_CODE_DISABLE_WINDOWS_SHELL_LAUNCHER 1 に設定すると、Windows で PowerShell ツールのコマンドを cmd.exe ランチャーを介さずに直接起動します。デフォルトでは、ランチャーにより、バックグラウンドで実行中の PowerShell コマンドが、セッションをバックグラウンド化した場合などにセッションの次のプロセスへ引き継がれます。この変数を設定すると、バックグラウンド化された PowerShell コマンドはセッションのプロセスが終了したときに停止します。Bash コマンドは影響を受けません。Claude Code v2.1.269 以降が必要です
CLAUDE_CODE_DISABLE_WORKFLOWS 1 に設定すると、ワークフローを無効にします。disableWorkflows 設定と同等です
CLAUDE_CODE_EFFORT_LEVEL サポートされているモデルの effort レベルを設定します。値: low、medium、high、xhigh、max、またはモデルのデフォルトを使用する auto。利用できるレベルはモデルによって異なります。--effort、/effort、および modelSettings と effortLevel の設定より優先されます。maxEffortLevel による上限は引き続き適用されます。effort レベルを調整するを参照してください
CLAUDE_CODE_EMIT_SESSION_STATE_EVENTS 1 に設定すると、セッションの状態を伝える session_state_changed メッセージをメッセージストリームに追加します。Agent SDK、または --print、--output-format stream-json、--verbose のいずれかが必要です
CLAUDE_CODE_ENABLE_AUTO_MODE 古いリリースとの互換性のために受け付けられますが、効果はありません。auto モードは、Amazon Bedrock、Google Cloud の Agent Platform、Microsoft Foundry、サインイン済みの Claude apps gateway セッションを含むすべてのプロバイダーでデフォルトで利用できます。v2.1.158 から v2.1.206 では、これらのプロバイダーで auto モードを利用可能にするには、これを 1 に設定する必要がありました
CLAUDE_CODE_ENABLE_AWAY_SUMMARY セッションの要約の利用可否を上書きします。0 に設定すると、/config のトグルに関係なく要約を強制的にオフにします。1 に設定すると、awaySummaryEnabled が false の場合に要約を強制的にオンにします。設定および /config のトグルより優先されます
CLAUDE_CODE_ENABLE_BACKGROUND_PLUGIN_REFRESH 1 に設定すると、バックグラウンドでのインストールが完了した後、非対話モードでターンの境界にプラグインの状態を更新します。この更新はセッションの途中でシステムプロンプトを変更し、そのターンのプロンプトキャッシュを無効にするため、デフォルトではオフです
CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL 1 に設定すると、Anthropic 宛ての必須ではないトラフィックがブロックされている場合に、「How is Claude doing?」セッション品質アンケートを独自の OpenTelemetry コレクターにルーティングします。アンケートの評価は、設定したコレクターへの OTEL イベントとしてのみ送信されます。このモードではアンケートデータは Anthropic に送信されません。CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC、DISABLE_TELEMETRY、または DO_NOT_TRACK が設定されている場合に適用され、それ以外の場合は効果がありません。CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY と組織のプロダクトフィードバックポリシーが優先されます
CLAUDE_CODE_ENABLE_FINE_GRAINED_TOOL_STREAMING Claude が生成するのに合わせて、ツール呼び出しの入力を API からストリーミングするかどうかを制御します。これがオフの場合、長いファイル書き込みなどの大きなツール入力は Claude が生成を終えた後にのみ届くため、ハングしているように見えることがあります。Anthropic API ではデフォルトで有効です。Amazon Bedrock と Google Cloud の Agent Platform では、デプロイされたコンテナがサポートしているモデルごとに有効になります。オプトアウトするには 0 に設定します。ANTHROPIC_BASE_URL、ANTHROPIC_VERTEX_BASE_URL、または ANTHROPIC_BEDROCK_BASE_URL 経由でプロキシを通してルーティングする場合に強制的にオンにするには 1 に設定します。Microsoft Foundry とゲートウェイ接続ではデフォルトでオフです
CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY ANTHROPIC_BASE_URL が LiteLLM、Kong、内部プロキシなどの Anthropic 互換ゲートウェイを指している場合に、1 に設定するとゲートウェイの /v1/models エンドポイントから /model ピッカーを生成します。共有 API キーを使うゲートウェイでは、そうしないとキーがアクセスできるすべてのモデルがすべてのユーザーに表示されてしまうため、デフォルトではオフです。検出されたモデルは、セッションが受け取る availableModels 許可リストによって引き続きフィルタリングされます。ゲートウェイ構成ではサーバー管理設定による配信は利用できないため、このリストは MDM または管理設定ファイルで配信してください
CLAUDE_CODE_ENABLE_OPUS_4_7_FAST_MODE fast mode のデフォルトが Opus 4.6 から Opus 4.7 に移行した v2.1.142 で削除されました
CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION false に設定すると、プロンプト入力に表示されるグレー表示の予測であるプロンプト候補をオフにします。promptSuggestionEnabled 設定より優先されます。この設定は /config の Prompt suggestions トグルが書き込むものです。Claude Code は、アカウントが使用制限に近いか達している間も候補を一時停止します。制限に達するまで候補をオンのままにするには true に設定します。Claude Code v2.1.238 以降が必要です。プロンプト候補を参照してください
CLAUDE_CODE_ENABLE_TASKS それらを持つセッションで Claude Code が提供するタスク追跡ツールを選択します。デフォルトでは、Claude Code は Task ツールの TaskCreate、TaskUpdate、TaskGet、TaskList を提供します。代わりにレガシーの TodoWrite ツールを使うには 0 に設定します。タスクリストを参照してください
CLAUDE_CODE_ENABLE_TELEMETRY 1 に設定すると、メトリクスとログ記録のための OpenTelemetry データ収集を有効にします。OTel エクスポーターを設定する前に必要です。シェル、ユーザー設定、または管理設定で設定してください。プロジェクト設定とローカル設定では無視されます。モニタリングを参照してください
CLAUDE_CODE_ENABLE_TODO_TOOLS 1 に設定すると、すべてのモデルでタスク追跡ツールを利用できます。これがない場合、Claude Code は Task ツールの利用可否に記載されているモデルでのみデフォルトでそれらを提供します。CLAUDE_CODE_ENABLE_TASKS は引き続き Task ツールか TodoWrite かを選択します。Claude Code v2.1.233 以降が必要です
CLAUDE_CODE_EXIT_AFTER_STOP_DELAY クエリループがアイドル状態になってから自動的に終了するまでの待機時間(ミリ秒)。自動化されたワークフローや SDK モードを使用するスクリプトに便利です
CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS 1 に設定するとエージェントチームを有効にします。エージェントチームは実験的な機能で、デフォルトでは無効です
CLAUDE_CODE_EXTRA_BODY すべての API リクエスト本文のトップレベルにマージする JSON オブジェクト。Claude Code が直接公開していないプロバイダー固有のパラメーターを渡すのに便利です。シェルでエクスポートした値は、claude agents または --bg でディスパッチするバックグラウンドセッションにも適用されます。v2.1.206 より前は、バックグラウンドセッションはシェルでエクスポートされた値を無視し、バックグラウンドスーパーバイザープロセスが継承した値を使用していました
CLAUDE_CODE_FILE_READ_MAX_OUTPUT_TOKENS ファイル読み取りのデフォルトのトークン制限を上書きします。大きなファイルを全体読み取る必要がある場合に便利です
CLAUDE_CODE_FORCE_SESSION_PERSISTENCE 1 に設定すると、この claude が別の Claude Code セッション内から起動された場合でも、トランスクリプトの永続化、プロンプト履歴、claude agents への登録を強制します。継承された CLAUDE_CODE_CHILD_SESSION の値(たとえば screen セッションや、Claude Code の Bash ツールによって最初に起動されたバックグラウンドランチャーからのもの)によって、本当のトップレベルセッションがネストされたものと誤って分類される場合に使用します。v2.1.178 以降、Claude Code は tmux のケースを自動的に検出して継承されたマーカーを無視するため、tmux ではこの変数は不要になりました。v2.1.169 以前でも適用されます。v2.1.170 と v2.1.171 では、この変数が上書きするネストされたセッションの検出が削除されていたため、効果はありません
CLAUDE_CODE_FORCE_STRIKETHROUGH 1 に設定すると、ターミナルが取り消し線をサポートしているのに自動検出されない場合(TERM_PROGRAM が転送されていない SSH 経由など)に、Claude の応答内の ~~text~~ を強制的に取り消し線で表示します。これがない場合、検出されないターミナルではテキストが取り消し線で表示されず、~~ マーカーがそのまま表示されます。Claude Code v2.1.186 以降が必要です
CLAUDE_CODE_FORCE_SYNC_OUTPUT 1 に設定すると、ターミナルがサポートしているのに自動検出されない場合に、DEC プライベートモード 2026 の同期出力を強制的に有効にします。BSU/ESU を実装しているが機能プローブに応答しない Emacs eat などのエミュレーターに便利です。tmux の下では効果がありません。フルスクリーンレンダリングに切り替える CLAUDE_CODE_NO_FLICKER とは異なり、これはレンダラーを変更しません
CLAUDE_CODE_FORK_SUBAGENT フォークモードを制御します。フォークモードでは Claude が自身でフォークされたサブエージェントを生成でき、対話セッションでのみデフォルトでオンです。claude -p と Agent SDK でもオンにするには 1 に、あらゆる種類のセッションでオフにするには 0 に設定します。/subtask はフォークモードがオンかどうかに関係なく実行できます。対話セッションでのデフォルトには Claude Code v2.1.232 以降が必要です。それより前のバージョンでは、フォークモードをオンにするには変数を 1 に設定してください
CLAUDE_CODE_FORWARD_SUBAGENT_TEXT 1 に設定すると、claude -p --output-format stream-json の出力でサブエージェントのテキストと思考ブロックを出力します。これは --forward-subagent-text フラグと同じ動作です。ハーネスが claude を呼び出し、フラグ自体を渡せない場合にこの変数を使用します。stream-json 出力の非対話モード以外ではエラーで終了するフラグとは異なり、変数はそこでは無視されるため、プロセス全体で設定されていてもネストされた呼び出しは引き続き動作します。Claude Code v2.1.211 以降が必要です
CLAUDE_CODE_GATEWAY_HINT_HEADERS 1 に設定すると、カスタムプロキシや Amazon Bedrock、Claude Platform on AWS などのサードパーティプロバイダーで、x-claude-code-request-class や x-claude-code-compaction などのゲートウェイヒントヘッダーを送信します。0 に設定すると、Claude Code がデフォルトでこれらを送信する Anthropic API への直接接続を含め、すべての接続で送信を停止します。Claude Code v2.1.273 以降が必要です
CLAUDE_CODE_GATEWAY_MODEL_DISCOVERY_TIMEOUT_MS CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY によって有効になるゲートウェイモデル検出リクエストのタイムアウト(ミリ秒)(デフォルト: 3000)。起動時にゲートウェイが /v1/models に応答するのに 3 秒以上かかる場合に値を増やします。数字のみを受け付けます。0、負の値、その他の表記ではデフォルトのままになります。Claude Code v2.1.269 以降が必要です
CLAUDE_CODE_GIT_BASH_PATH Windows のみ: Git Bash 実行ファイル(bash.exe)へのパス。Git Bash がインストールされているが PATH にない場合に使用します。パスが存在しない場合、またはファイル名が bash.exe、sh.exe、bash、sh のいずれでもない場合、Claude Code は変数を無視し、未設定の場合と同様に Git Bash を自動検出して、--debug で確認できる警告をログに記録します。v2.1.219 より前は、パスが存在しない場合に Claude Code は起動時に終了し、bash か sh かを確認せずに既存の任意のファイルをシェルとして使用していました。Windows のセットアップを参照してください
CLAUDE_CODE_GLOB_HIDDEN false に設定すると、Claude が Glob ツールを呼び出す際に結果からドットファイルを除外します。デフォルトでは含まれます。@ ファイルオートコンプリート、ls、Grep、Read には影響しません
CLAUDE_CODE_GLOB_NO_IGNORE false に設定すると、Glob ツールが .gitignore パターンを尊重するようになります。デフォルトでは、Glob は gitignore されたファイルを含むすべての一致するファイルを返します。独自の respectGitignore 設定を持つ @ ファイルオートコンプリートには影響しません
CLAUDE_CODE_GLOB_TIMEOUT_SECONDS Glob ツールのファイル検出のタイムアウト(秒)。ほとんどのプラットフォームではデフォルトで 20 秒、WSL では 60 秒です
CLAUDE_CODE_GOAL_CHECKIN_MINUTES Claude Code が Claude に確認を求めるまでに、バックグラウンド作業がアクティブなゴールを待たせることができる分数。デフォルトは 30 です。チェックインをオフにするには 0 を設定します。整数の分数を数字のみで指定し、最大は 10080(1 週間)です。それ以外の値は Claude Code が未設定として扱い、デフォルトを使用します。Claude Code v2.1.234 以降が必要です
CLAUDE_CODE_GZIP_REQUEST_BODIES 0 に設定すると、api.anthropic.com に送信される Claude API、テレメトリ、アーティファクト公開のリクエスト本文の gzip 圧縮をオフにします。デフォルトでは、Claude Code は直接接続では大きなリクエスト本文を圧縮し、プロキシ経由でリクエストを送信する場合、クライアント証明書を設定している場合、または NODE_EXTRA_CA_CERTS を設定している場合は圧縮をスキップします。Claude Code が検出できない TLS 検査プロキシが圧縮されたリクエストを正しく処理できない場合は 0 を使用します
CLAUDE_CODE_HIDE_CWD 1 に設定すると、起動ロゴで作業ディレクトリを非表示にします。パスから OS のユーザー名がわかってしまう画面共有や録画に便利です
CLAUDE_CODE_IDE_HOST_OVERRIDE IDE 拡張機能への接続に使用するホストアドレスを上書きします。デフォルトでは、Claude Code は WSL から Windows へのルーティングを含め、正しいアドレスを自動検出します
CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL 1 に設定すると、IDE 拡張機能の自動インストールをスキップします。autoInstallIdeExtension を false に設定するのと同等です
CLAUDE_CODE_IDE_SKIP_VALID_CHECK 1 に設定すると、接続時の IDE ロックファイルエントリの検証をスキップします。IDE が実行されているのに自動接続で見つからない場合に使用します
CLAUDE_CODE_MAX_CONCURRENT_SUBAGENTS Agent ツールが新たな生成を拒否するまでに、1 つのセッションで同時に実行できるサブエージェントの数(デフォルト: 20)。数字のみの正の整数を受け付けます。それ以外は無視されるため、この変数で上限を調整することはできますが、無効にすることはできません。Claude Code v2.1.217 以降が必要です
CLAUDE_CODE_MAX_CONTEXT_TOKENS Claude Code がアクティブなモデルについて想定するコンテキストウィンドウのサイズを上書きします。v2.1.193 以降、適用方法は Claude Code がモデル ID をどのように解決するかによって異なります。ゲートウェイまたはカスタムモデル ID のウィンドウを修正するを参照してください。ANTHROPIC_BASE_URL 経由で、コンテキストウィンドウがその名前の組み込みサイズと一致しないモデルにルーティングする場合に使用します
CLAUDE_CODE_MAX_MCP_DESCRIPTION_LENGTH Claude Code がモデルに送信する各 MCP ツールの説明と各 MCP サーバーの指示の最大長(文字数)(デフォルト: 2048)。Claude Code はそれより長いテキストを切り詰めます。数字のみの正の整数を受け付けます。それ以外は無視され、デフォルトが適用されます。Claude Code v2.1.280 以降が必要です
CLAUDE_CODE_MAX_OUTPUT_TOKENS ほとんどのリクエストの最大出力トークン数を設定します。デフォルトと上限はモデルによって異なります。最大出力トークンを参照してください。モデルの上限を超える値は、Claude Code によって上限まで引き下げられます。Claude Code が既知のモデルに解決できないモデル ID の場合、デフォルトは 32000、上限は 128000 です。この値を増やすと、自動圧縮がトリガーされる前に利用できる実効コンテキストウィンドウが減少します
CLAUDE_CODE_MAX_RETRIES 失敗した API リクエストを再試行する回数を上書きします(デフォルト: 10)。v2.1.186 以降は 15 が上限です。v2.1.199 以降は、CLAUDE_CODE_RETRY_WATCHDOG がデフォルトを引き上げ、上限を撤廃します。より長い障害を待ち続ける必要がある無人セッションでは、代わりに CLAUDE_CODE_RETRY_WATCHDOG を設定してください
CLAUDE_CODE_MAX_SUBAGENTS_PER_SESSION v2.1.224 で削除され、現在は何もしません。以前は、1 つのセッションで Claude が Agent ツールを使って生成できるサブエージェントの総数を制限していました(デフォルト: 200)。上限を超えて生成しようとすると Subagent spawn limit reached で失敗していました。同時実行サブエージェントの制限と深さの制限は引き続き適用されます
CLAUDE_CODE_MAX_SUBAGENT_SPAWN_DEPTH メインの会話の下に許可されるサブエージェントの階層の数(デフォルト: 3)。デフォルトでは、サブエージェントは自身のサブエージェントを生成でき、3 番目の階層にあるサブエージェントはそれ以上生成できません。ネストをオフにするには 1 を設定します。v2.1.217 から v2.1.218 ではデフォルトが 1 だったため、制限を引き上げない限りサブエージェントは自身のサブエージェントを生成できませんでした。v2.1.219 でデフォルトが 3 に引き上げられました。数字のみの正の整数を受け付けます。それ以外は無視されるため、制限は調整できますが撤廃はできません。Claude Code v2.1.217 以降が必要です
CLAUDE_CODE_MAX_TOOL_USE_CONCURRENCY 並列で実行できる読み取り専用ツールとサブエージェントの最大数(デフォルト: 10)。値を大きくすると並列性が高まりますが、より多くのリソースを消費します
CLAUDE_CODE_MAX_TURNS 明示的な制限が渡されていない場合に、エージェントのターン数を制限します。--max-turns を渡すのと同等で、両方が設定されている場合はフラグが優先されます。正の整数でない値は、上限なしとして扱われるのではなく、起動時にエラーで拒否されます
CLAUDE_CODE_MAX_WEB_SEARCHES_PER_SESSION 1 つのセッションで実行できる WebSearch 呼び出しの総数の上限(デフォルト: 200)。Claude が上限に達すると、以降の WebSearch 呼び出しは、すでに収集した情報で続行するよう Claude に伝える通知を返します。上限のない正の整数を受け付けます。それ以外は無視されてデフォルトが適用されるため、上限を引き上げることはできますが、オフにすることはできません。Claude Code v2.1.212 以降が必要です
CLAUDE_CODE_MCP_ALLOWLIST_ENV 1 に設定すると、シェル環境を継承する代わりに、安全なベースライン環境とサーバーに設定された env のみで stdio MCP サーバーを起動します
CLAUDE_CODE_MCP_AUTO_BACKGROUND_MS 実行中の MCP ツール呼び出しがバックグラウンドタスクに移行するまでの経過時間(ミリ秒)(デフォルト: 120000、つまり 2 分)。自動バックグラウンド化をオフにするには 0 に設定します。Claude Code v2.1.212 以降が必要です
CLAUDE_CODE_MCP_STARTUP_WAIT_MS 非対話セッションの最初のターンが、まだ接続中の MCP サーバーを待機する時間(ミリ秒)。デフォルトの最初のターンの待機の代わりに使用されます。設定すると、待機は保留中のすべてのサーバーを対象とします。待機をスキップするには 0 に設定します。--permission-prompt-tool サーバーは、値に関係なく独自の MCP_TIMEOUT の待機を維持します。Claude Code v2.1.274 以降が必要です
CLAUDE_CODE_MCP_TOOL_IDLE_TIMEOUT MCP ツール呼び出しのアイドルタイムアウト(ミリ秒)。stdio、HTTP、SSE、WebSocket、または claude.ai コネクタの MCP サーバーがこの時間、応答も進捗通知も送信しない場合、ツール呼び出しは全体の MCP_TOOL_TIMEOUT を待たずにエラーで中止されます。ネットワークサーバーの 300000(5 分)、stdio サーバーの 1800000(30 分)というトランスポートごとのデフォルトを上書きします。アイドルチェックを無効にするには 0 に設定します。1000 未満の値は 1 秒に引き上げられ、値は実効的な MCP_TOOL_TIMEOUT が上限になります。.mcp.json でサーバーごとの timeout が 1000 以上に設定されている場合、そのサーバーのアイドル時間枠は少なくとも timeout の値まで引き上げられます。IDE サーバーや SDK のインプロセスサーバーには適用されません。Claude Code v2.1.187 以降が必要です。v2.1.203 より前は、stdio サーバーはアイドルタイムアウトの対象外でした
CLAUDE_CODE_MESSAGING_SOCKET ユーザーではなく Claude Code が設定します: 受信トレイソケットをバインドするセッションでは、Claude Code はソケットをバインドする際に、そのソケットのパスをフックと Bash コマンドにエクスポートします。メッセージングがオンの状態で開始されたセッションでは、Claude Code はフックが実行される前にソケットをバインドします。マシン上の他のセッションは、このパスにメッセージを配信します。各セッションは親から継承したソケットではなく独自のソケットをエクスポートし、そのソケットに届いたメッセージはセッションの受信制御を通過します。設定の env ブロックではこれを設定できません。Claude Code v2.1.224 以降が必要です
CLAUDE_CODE_MESSAGING_TOKEN ユーザーではなく Claude Code が設定します: 受信トレイソケットをバインドするセッションでは、Claude Code はこのセッションごとのトークンを CLAUDE_CODE_MESSAGING_SOCKET と一緒にフックと Bash コマンドにエクスポートします。ソケットに投稿するスクリプトは、最初の行として {"type":"auth","token":"<token>"} を送信することで、そのセッションに属していることを証明できます。ネイティブ Windows では、Claude Code はこの行を必須とし、有効な行で始まらない接続を閉じます。Claude Code がいつトークンを参照するかは、自身の子に関するルールで説明されています。各セッションは独自のトークンをエクスポートし、親セッションから継承したトークンを使うことはありません。設定の env ブロックではこれを設定できません。Claude Code v2.1.228 以降が必要です
CLAUDE_CODE_NATIVE_CURSOR 1 に設定すると、描画されたブロックの代わりに、入力キャレットの位置にターミナル自体のカーソルを表示します。カーソルはターミナルの点滅、形状、フォーカスの設定に従います。0 を設定しても変数を未設定のままにするのと同じように解釈されるため、ターミナル自体のカーソルがすでにオンになっているセッションで描画されたブロックが戻ることはありません
CLAUDE_CODE_NEW_INIT 1 に設定すると、/init で対話的なセットアップフローを実行します。このフローでは、コードベースを調べてファイルを書き込む前に、CLAUDE.md、スキル、フックなど、どのファイルを生成するかを尋ねます。この変数がない場合、/init は確認なしで CLAUDE.md を自動的に生成します
CLAUDE_CODE_NONBLOCKING_STDOUT 1 に設定すると、2 つ目のノンブロッキングファイルディスクリプターを通じてターミナル出力を書き込むため、一時停止した tmux コントロールモードのペインや停止した SSH 接続など、読み取りを停止したターミナルによって Claude Code がセッションの途中でフリーズすることがなくなります。stdout がターミナルの場合に、macOS、Linux、WSL で適用されます。Claude Code v2.1.261 以降が必要です
CLAUDE_CODE_NONSTREAMING_TIMEOUT_RETRIES タイムアウトした非ストリーミングリクエストを Claude Code が再送信する回数を制限します。0 の場合、リクエストは最初のタイムアウトで失敗します。デフォルトでは未設定のため、CLAUDE_CODE_MAX_RETRIES がこれらの再送信を制限します。タイムアウトについては再試行の動作を調整するを参照してください。Claude Code v2.1.285 以降が必要です
CLAUDE_CODE_NO_FLICKER 1 に設定すると、ちらつきを減らし、長い会話でもメモリ使用量を一定に保つリサーチプレビューであるフルスクリーンレンダリングを有効にします。tui 設定を上書きします。/tui fullscreen で切り替えることもできます
CLAUDE_CODE_OAUTH_REFRESH_TOKEN Claude.ai 認証用の OAuth リフレッシュトークン。設定すると、claude auth login はブラウザを開く代わりにこのトークンを直接交換します。CLAUDE_CODE_OAUTH_SCOPES が必要です。自動化された環境で認証をプロビジョニングするのに便利です
CLAUDE_CODE_OAUTH_SCOPES リフレッシュトークンの発行時に付与された、スペース区切りの OAuth スコープ(例: "user:profile user:inference user:sessions:claude_code")。CLAUDE_CODE_OAUTH_REFRESH_TOKEN が設定されている場合に必要です
CLAUDE_CODE_OAUTH_TOKEN claude.ai 認証用の OAuth アクセストークン。SDK や自動化された環境で /login の代わりに使用します。キーチェーンに保存された認証情報より優先されます。claude setup-token で生成します。/login を実行しない限り、Claude Code はセッション全体を通して設定したトークンを使用します。期限切れのトークンを置き換えるには、新しいトークンを生成して再起動してください
CLAUDE_CODE_OPUS_4_6_FAST_MODE_OVERRIDE v2.1.160 で削除され、現在は何もしません。以前は、fast mode を現在のデフォルトではなく Claude Opus 4.6 に固定していました。Opus 4.6 は fast mode をサポートしなくなりました
CLAUDE_CODE_OTEL_CONTENT_MAX_LENGTH コンテンツを含む OpenTelemetry 属性(モデルの応答、ツールのコンテンツ、システムプロンプト、生の API 本文)の最大長。切り詰めマーカーを含み、UTF-16 コード単位で指定します(デフォルト: 61440、つまり 60 KB)。テレメトリバックエンドが 64 KB より大きい属性値を受け付ける場合にのみ値を増やすか、テレメトリ量を減らすために値を下げます。Claude Code v2.1.214 以降が必要です。モニタリングを参照してください
CLAUDE_CODE_OTEL_DIAG_STDERR 1 に設定すると、OpenTelemetry エクスポーターの診断エラーを stderr に書き込みます。デフォルトではこれらのエラーは --debug でのみ表示されるため、Prometheus のポート競合など設定の誤ったエクスポーターは通知なく失敗します。Claude Code v2.1.179 以降が必要です。モニタリングを参照してください
CLAUDE_CODE_OTEL_FLUSH_TIMEOUT_MS 保留中の OpenTelemetry スパンをフラッシュする際のタイムアウト(ミリ秒)(デフォルト: 5000)。モニタリングを参照してください
CLAUDE_CODE_OTEL_HEADERS_HELPER_DEBOUNCE_MS 動的な OpenTelemetry ヘッダーを更新する間隔(ミリ秒)(デフォルト: 1740000 / 29 分)。動的ヘッダーを参照してください
CLAUDE_CODE_OTEL_SHUTDOWN_TIMEOUT_MS シャットダウン時に OpenTelemetry エクスポーターが完了するまでのタイムアウト(ミリ秒)(デフォルト: 2000)。終了時にメトリクスが失われる場合は値を増やしてください。モニタリングを参照してください
CLAUDE_CODE_PACKAGE_MANAGER_AUTO_UPDATE 1 に設定すると、新しいバージョンが利用可能な場合に、Claude Code がパッケージマネージャーのアップグレードコマンドをバックグラウンドで実行できるようになります。Homebrew と WinGet のインストールに適用されます。その他のパッケージマネージャーでは、引き続きアップグレードコマンドが実行されずに表示されます。自動更新を参照してください
CLAUDE_CODE_PERFORCE_MODE 1 に設定すると、Perforce 対応の書き込み保護を有効にします。設定すると、対象ファイルに所有者の書き込みビットがない場合、Edit、Write、NotebookEdit は p4 edit <file> のヒントとともに失敗します。Perforce は同期されたファイルのこのビットを、p4 edit で開くまでクリアしています。これにより、Claude Code が Perforce の変更追跡を迂回することを防ぎます
CLAUDE_CODE_PLUGIN_CACHE_DIR プラグインのルートディレクトリを上書きします。名前に反して、これはキャッシュ自体ではなく親ディレクトリを設定します。マーケットプレイスとプラグインキャッシュはこのパスの下のサブディレクトリに配置されます。デフォルトは ~/.claude/plugins です
CLAUDE_CODE_PLUGIN_DIRS セッションで読み込むプラグインディレクトリ。それぞれ --plugin-dir フラグと同じ方法で読み込まれます。複数のパスは、Unix では :、Windows では ; で区切ります。Claude Code は相対パスをスキップするため、各パスは絶対パスで指定するか ~ で始めてください。Claude Code v2.1.280 以降が必要です。1 つのセッションでプラグインを読み込むを参照してください
CLAUDE_CODE_PLUGIN_DIR_WATCH mod のファイルが変更されたときに、Claude Code が mod を再読み込みするかどうかを制御します。再読み込みは --plugin-dir でディレクトリから読み込んだ mod に適用され、対話セッションではデフォルトでオンです。非対話セッションでもオンにするには 1 に、すべてのセッションでオフにするには 0 に設定します。Claude Code v2.1.287 以降が必要です。mod の設定と環境変数を参照してください
CLAUDE_CODE_PLUGIN_GIT_TIMEOUT_MS プラグインマーケットプレイスをクローンまたは更新する際のタイムアウト(ミリ秒)(デフォルト: 120000)。大きなリポジトリや低速なネットワーク接続の場合は値を増やしてください。Git clone timed out を参照してください
CLAUDE_CODE_PLUGIN_KEEP_MARKETPLACE_ON_FAILURE 1 に設定すると、マーケットプレイスの更新でリモートに到達できないか認証できない場合に、再クローンの試行をスキップし、既存のマーケットプレイスのチェックアウトを引き続き使用します。再クローンが同じように失敗するオフライン環境やエアギャップ環境に便利です。オフライン環境でマーケットプレイスの更新が失敗するを参照してください
CLAUDE_CODE_PLUGIN_PREFER_HTTPS 1 に設定すると、GitHub の owner/repo 短縮形のソースを SSH ではなく HTTPS でクローンします。プラグインのインストールと更新、および /plugin marketplace add と update に適用されます。CI ランナー、コンテナ、または github.com 用の SSH キーが設定されていない環境に便利です
CLAUDE_CODE_PLUGIN_SEED_DIR 1 つ以上の読み取り専用プラグインシードディレクトリへのパス。Unix では :、Windows では ; で区切ります。事前に内容を用意したプラグインディレクトリをコンテナイメージにバンドルするために使用します。Claude Code は起動時にこれらのディレクトリからマーケットプレイスを登録し、事前にキャッシュされたプラグインを再クローンせずに使用します。コンテナ用にプラグインを事前に用意するを参照してください
CLAUDE_CODE_POWERSHELL_RESPECT_EXECUTION_POLICY 1 に設定すると、ツール呼び出し、フック、ステータスラインコマンドのために PowerShell を起動する際に Claude Code が -ExecutionPolicy Bypass を渡すのを停止し、代わりにマシンの実効的な実行ポリシーに従います。デフォルトでは、Claude Code はプロセススコープで実行ポリシーをバイパスするため、デフォルトで Restricted の Windows 環境でも .ps1 スクリプトやモジュールのインポートが動作します。この設定に関係なく、プロセススコープのバイパスがグループポリシーの MachinePolicy や UserPolicy を上書きすることはありません
CLAUDE_CODE_PRINT_BG_WAIT_CEILING_MS -p フラグを使った非対話モードで、最後のターンの後にサブエージェントやワークフローなどのバックグラウンド作業をアイドル状態で待機する時間の上限(ミリ秒)。Claude がバックグラウンドの結果を処理するためにターンを実行するたびに、アイドル待機はリセットされます。デフォルト: 600000、つまり 10 分。アイドル待機が上限に達すると、Claude Code は残りのバックグラウンドタスクの待機をやめて終了します。無期限に待機するには 0 に設定します。この上限は、通常のバックグラウンドシェルに適用される 5 秒の猶予期間とは別のものです。Claude Code v2.1.182 以降が必要です
CLAUDE_CODE_PROCESS_WRAPPER エージェントビューセッションをホストするバックグラウンドサービスなど、Claude Code が自身のバイナリから起動するプロセスを、/opt/corp/launcher のような argv プレフィックスとして指定した企業のランチャー経由で起動します。切り離されたバックグラウンドサービスが継承できるよう、シェルでのエクスポートではなく、ユーザー設定または管理設定の env ブロックで設定してください。プロジェクト設定とローカル設定では設定できません。processWrapper 設定と同等で、この設定には Claude Code v2.1.210 以降が必要です。両方が設定されている場合はこの変数が優先されます。VS Code 拡張機能は、独自の claudeProcessWrapper 設定を通じて別途ランチャーを設定します。Windows では無視されます。値の形式、ランチャーが対象とする範囲、ランチャーが満たす必要のある契約については、企業のランチャーの背後で Claude Code を実行するを参照してください。Claude Code v2.1.208 以降が必要です
CLAUDE_CODE_PROJECT_DIR_NAME CLAUDE_CONFIG_DIR と一緒に設定すると、作業ディレクトリのパスから派生した名前の代わりに、Claude Code がそのセッションのトランスクリプトと自動メモリを保存する projects/ ディレクトリ名を選択できます。たとえば、CLAUDE_CONFIG_DIR=/srv/tenant-a CLAUDE_CODE_PROJECT_DIR_NAME=work claude で Claude Code を起動すると、それらは /srv/tenant-a/projects/work/ の下に保存されます。CLAUDE_CONFIG_DIR が未設定の場合、Claude Code はこの変数を無視します。また、この変数は claude を起動する環境からのみ読み取られ、設定ファイルの env ブロックからは読み取られません。プロジェクトディレクトリに自分で名前を付けるを参照してください。Claude Code v2.1.234 以降が必要です
CLAUDE_CODE_PROMPT_CACHE_TTL Claude Code が受け付ける値は 5m または 1h のみで、メインの会話(対話、-p、SDK のターンと、それらとインラインで実行されるヘルパー)のプロンプトキャッシュ TTL を選択します。promptCacheTtl 設定と ENABLE_PROMPT_CACHING_1H より優先され、FORCE_PROMPT_CACHING_5M はこれを上書きします。API は 1 時間のキャッシュ書き込みを高い料金で課金します。Claude Code v2.1.242 以降が必要です
CLAUDE_CODE_PROPAGATE_TRACEPARENT 1 に設定すると、ANTHROPIC_BASE_URL がカスタムプロキシを指している場合に W3C トレースコンテキストを伝播します。伝播の対象は、モデルと HTTP MCP リクエストの traceparent ヘッダー、および Bash、PowerShell、フックのサブプロセスの TRACEPARENT 環境変数です。デフォルトでは、Anthropic API に直接接続している場合にのみ伝播が有効です。v2.1.152 で追加されました。トレース(ベータ)を参照してください
CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST Claude Code を組み込み、Claude Code に代わってモデルプロバイダーのルーティングを管理するホストプラットフォームによって設定されます。設定されている場合、Claude Code は設定ファイル内の CLAUDE_CODE_USE_BEDROCK、ANTHROPIC_BASE_URL、ANTHROPIC_API_KEY などのプロバイダー選択、エンドポイント、認証の変数を無視するため、ユーザー設定でホストのルーティングを上書きすることはできません。また、Claude Code は管理設定内の model、fallbackModel、modelOverrides などのモデル選択キーを、どの管理ソースから配信されたかに関係なく無視するため、ホストのモデル設定が古い管理モデルの固定より優先されます。さらに、Claude Code は管理 env ブロック内の ANTHROPIC_MODEL や ANTHROPIC_DEFAULT_*_MODEL ファミリーなどのモデル選択変数も無視します。管理設定内の availableModels 許可リストは、ホストが独自のものを提供しない限り引き続き適用されます。また、Claude Code は Amazon Bedrock、Claude Platform on AWS、Google Cloud の Agent Platform、Microsoft Foundry などのサードパーティプロバイダーで通常適用する自動テレメトリオプトアウトもスキップするため、テレメトリは標準の DISABLE_TELEMETRY オプトアウトに従います。API プロバイダー別のデフォルトの動作を参照してください
CLAUDE_CODE_PROXY_RESOLVES_HOSTS 1 に設定すると、呼び出し元ではなくプロキシが DNS 解決を実行できるようにします。プロキシがホスト名の解決を処理すべき環境向けのオプトイン設定です
CLAUDE_CODE_REMOTE Claude Code がクラウドセッションとして実行されている場合に、自動的に true に設定されます。フックやセットアップスクリプトからこれを読み取って、クラウドセッション内にいるかどうかを検出します
CLAUDE_CODE_REMOTE_SESSION_ID クラウドセッションで、現在のセッションの ID に自動的に設定されます。これを読み取ってセッションのトランスクリプトへのリンクを作成します。出力をセッションにリンクするを参照してください
CLAUDE_CODE_RESTRICTED 1 に設定すると、--restricted を渡すのと同じように、制限モードでセッションを開始します。Claude Code は設定ファイルの env ブロック内のこの変数を無視します。Claude Code v2.1.248 以降が必要です
CLAUDE_CODE_RESUME_INTERRUPTED_TURN 1 に設定すると、前のセッションがターンの途中で終了した場合に自動的に再開します。SDK モードで使用され、SDK がプロンプトを再送信しなくてもモデルが続行できるようにします。これをオフにするには、変数を未設定にするか 0 に設定します。VS Code のチャットパネルについては、再読み込み後に会話を続けるを参照してください
CLAUDE_CODE_RESUME_INTERRUPTED_TURN_MAX_AGE_MS ターンの途中で終了したセッションが再開時に自動的に続行するための、最後のトランスクリプトメッセージの最大経過時間(ミリ秒)。最後のメッセージがこの上限より古い場合、Claude Code は CLAUDE_CODE_RESUME_INTERRUPTED_TURN による自動再開とその CLAUDE_CODE_RESUME_PROMPT の継続メッセージをスキップし、セッションはアイドル状態で開始されるため、明示的に続行します。未設定または 0 は上限なしを意味しますが、最後のリクエストが API エラーで失敗したターンは、そのエラーが 6 時間未満の間だけ再開されます。正の値はそれらを含むすべてのターンに上限を設けます。負の値または数値以外の値は 1 時間の上限を適用します。長時間実行されるエージェントの起動スクリプトでこれを設定すると、古いトランスクリプトに対する再起動で古いプロンプトが再実行されるのを防げます。Claude Code は、対話セッションから会話を引き継いだエージェントビューセッションがクラッシュして再起動する際に、自ら 1 時間の上限を設定します。Claude Code v2.1.211 以降が必要です
CLAUDE_CODE_RESUME_PROMPT CLAUDE_CODE_RESUME_INTERRUPTED_TURN が中断されたターンのプロンプトを再送信する代わりにそのターンを続行する場合、または -p で延期されたツール呼び出しを再開する場合に、Claude Code が Claude に送信する継続メッセージを上書きします。デフォルトは Continue from where you left off. です。空文字列の場合はデフォルトが使用されます
CLAUDE_CODE_RETRY_WATCHDOG 評価ハーネス、CI ジョブ、リモートワーカーなどの無人セッションでは 1 に設定します。429 および 529 の容量エラーを、CLAUDE_CODE_MAX_RETRIES 回の試行後に失敗させるのではなく、無期限に再試行します。標準速度のリクエストが、支出上限または使用クレジットの枯渇を示す 429 を受け取った場合、スケジュールに従ってリセットされるゲートウェイの支出上限によるものであっても、Claude Code は即座に失敗します。v2.1.239 より前は、ウォッチドッグはこれらを無期限に再試行していました。fast mode のリクエストについては、レート制限を処理するを参照してください。ウォッチドッグは試行間で最大 5 分間、またはレスポンスにレート制限のリセット時刻が含まれている場合は制限がリセットされるまでバックオフするため、使用制限に達したセッションは残りの時間枠が過ぎるまで待機します。v2.1.199 以降では、サーバーエラー、タイムアウト、接続の切断など、その他の一時的なエラーのデフォルトの再試行回数も 300(約 3 時間のバックオフ)に引き上げ、CLAUDE_CODE_MAX_RETRIES を明示的に設定した場合の 15 という上限を撤廃します。Claude Code v2.1.186 以降が必要です
CLAUDE_CODE_SAFE_MODE 1 に設定するとセーフモードで起動します。セーフモードでは、壊れた設定のトラブルシューティングのために、CLAUDE.md、スキル、プラグイン、フック、MCP サーバー、カスタムコマンドとエージェント、出力スタイル、ワークフロー、カスタムテーマ、カスタムキーボードショートカット、ステータスラインとファイル候補のコマンド、LSP サーバー、自動メモリが読み込まれません。ポリシーで設定されたフック、ステータスライン、ファイル候補のコマンドを含め、管理設定のポリシーは引き続き適用されます。管理プラグイン、管理スキル、管理 CLAUDE.md、ポリシーで設定された MCP サーバーは適用されません。--safe-mode を渡すのと同等です。直接起動された子プロセスはこの変数を継承します
CLAUDE_CODE_SCRIPT_CAPS CLAUDE_CODE_SUBPROCESS_ENV_SCRUB が設定されている場合に、特定のスクリプトをセッションごとに呼び出せる回数を制限する JSON オブジェクト。キーはコマンドテキストと照合される部分文字列で、値は整数の呼び出し上限です。たとえば、{"deploy.sh": 2} は deploy.sh の呼び出しを最大 2 回まで許可します。照合は部分文字列ベースのため、./scripts/deploy.sh $(evil) のようなシェル展開のトリックも上限にカウントされます。xargs や find -exec による実行時のファンアウトは検出されません。これは多層防御のための制御です
CLAUDE_CODE_SCROLL_SPEED フルスクリーンレンダリングでのマウスホイールのスクロール倍率を設定します。20 までの任意の正の値を受け付けます。これには、すでにホイールイベントを増幅するターミナルで加速されたトラックパッドやホイールのスクロールを遅くするための、0.5 などの 1 未満の小数値も含まれます。ターミナルが増幅なしでノッチごとに 1 つのホイールイベントを送信する場合、vim に合わせるには 3 に設定します。JetBrains IDE のターミナルでは、Claude Code が独自のスクロール処理を使用するため無視されます
CLAUDE_CODE_SEND_FEEDBACK 0 に設定すると、セッションで Claude が下書きするフィードバックをオフにします。アカウントがすでにアクセス権を持っている場合にオンにするには 1 に設定します。この変数自体でアクセス権を付与することはできず、DISABLE_FEEDBACK_COMMAND や feedbackDrafts 設定の off 値など、フィードバックをオフにする他のスイッチも引き続き適用されます
CLAUDE_CODE_SESSIONEND_HOOKS_TIMEOUT_MS SessionEnd フックの時間予算(ミリ秒)を上書きします。この値は、独自の timeout を設定していない各フックのタイムアウトにもなります。セッションの終了、/clear、対話的な /resume によるセッションの切り替えに適用されます。デフォルトでは予算は 1.5 秒で、設定ファイルで設定されたフックごとの timeout の最大値まで、最大 60 秒まで自動的に引き上げられます。プラグインが提供するフックのタイムアウトは予算を引き上げません
CLAUDE_CODE_SESSION_ID Bash と PowerShell のツールサブプロセス、フックコマンドのサブプロセス、stdio MCP サーバーのサブプロセスで、現在のセッション ID に自動的に設定されます。Bash、PowerShell、フックでは、これはフックの JSON 入力の session_id フィールドと一致し、/clear で更新されます。MCP サーバーのサブプロセスは、起動時の ID を保持します。--resume <session-id> では再開された ID を受け取り、フックや Bash と一致します。明示的な ID なしの --continue または --resume では、代わりに起動時の最初の ID を受け取る場合があります。スクリプトや外部ツールを、それらを起動した Claude Code セッションと関連付けるために使用します
CLAUDE_CODE_SHELL Claude Code が Bash ツールのコマンドを実行するために使用するシェルを設定します。bash または zsh バイナリへのパス(例: /opt/homebrew/bin/bash)を受け付けます。fish などの他のシェルはサポートされていません。値が動作する bash または zsh のパスでない場合、Claude Code はそれを無視して自動検出にフォールバックします。自動検出では、$SHELL が bash または zsh を指している場合はそれを使用し、そうでない場合は PATH と標準のインストール場所で見つかった最初の動作する zsh、次に bash を選択します
CLAUDE_CODE_SHELL_PREFIX Claude Code が起動するシェルコマンドをラップするコマンドプレフィックス。対象は Bash ツール呼び出し、フックコマンド、ステータスラインコマンド、stdio MCP サーバーの起動コマンドです。PowerShell フックと exec 形式のフックはプレフィックスなしで実行されます。ログ記録や監査に便利です。/path/to/logger.sh のような実行ファイルのパスのみを設定すると、各コマンドは /path/to/logger.sh '<command>' として実行されます。ラッパーはコマンドラインを $1 で単一のシェルクォートされた引数として受け取るため、ラッパーは exec bash -c "$1" のように $1 をシェルで再評価する必要があります。$1 を実行ファイルのパスとしてそのまま扱うと、npx -y <package> のような引数を渡す stdio MCP サーバーが動作しなくなります。Bash ツール呼び出しの場合、$1 には Claude が実行したコマンドだけでなく、環境のセットアップを含む Claude Code が組み立てた完全なシェル呼び出しが含まれます
CLAUDE_CODE_SIMPLE 1 に設定すると、最小限のシステムプロンプトと、Bash、ファイル読み取り、ファイル編集のツールのみで実行します。--mcp-config からの MCP ツールは引き続き利用できます。フック、スキル、カスタムコマンド、サブエージェント、インストール済みプラグイン、MCP サーバー、自動メモリ、CLAUDE.md の自動検出を無効にします。--add-dir で渡したディレクトリ内のスキルは引き続き読み込まれます。OAuth トークンとキーチェーンの認証情報は読み取られないため、Anthropic の認証は ANTHROPIC_API_KEY または --settings 内の apiKeyHelper から行う必要があります。--bare を渡すのと同等です
CLAUDE_CODE_SIMPLE_SYSTEM_PROMPT 1 に設定すると、どのモデルでも短いシステムプロンプトと簡略化されたツールの説明を使用します。0、false、no、または off に設定すると、実験やサーバー設定によって有効になるモデルでもオプトアウトします。完全なツールセット、フック、MCP サーバー、CLAUDE.md の検出は有効のままです
CLAUDE_CODE_SKIP_ANTHROPIC_AWS_AUTH リクエストに自身で署名するゲートウェイ向けに、Claude Platform on AWS のクライアント側の認証をスキップします
CLAUDE_CODE_SKIP_AWS_CRED_CACHE 1 に設定すると、AWS のデフォルト認証情報プロバイダーチェーンから解決された認証情報のプロセス内キャッシュをオフにし、Claude Code が API リクエストのたびにチェーンを解決するようにします。キャッシュがオフの場合、SSO ベースのプロファイルはリクエストのたびに IAM Identity Center に認証情報を要求します。認証情報のキャッシュと解決のタイムアウトを参照してください。Claude Code v2.1.207 以降が必要です
CLAUDE_CODE_SKIP_BEDROCK_AUTH Amazon Bedrock の AWS 認証をスキップします(たとえば、LLM ゲートウェイを使用する場合)
CLAUDE_CODE_SKIP_FAST_MODE_NETWORK_ERRORS 1 に設定すると、fast mode の利用可否チェックが失敗した場合に利用可能として扱います。これは、チェックによる api.anthropic.com への直接リクエストをブロックするネットワーク向けです。Claude Code は「disabled by your organization」という応答には引き続き従います
CLAUDE_CODE_SKIP_FAST_MODE_ORG_CHECK 1 に設定すると、クライアント側の fast mode の利用可否チェックをスキップします。これは、チェックのリクエストを拒否するのではなく傍受するプロキシ向けです。組織で fast mode が無効になっている場合、API は引き続き fast mode のリクエストを拒否します
CLAUDE_CODE_SKIP_FOUNDRY_AUTH 独自の Authorization ヘッダーを挿入するプロキシやゲートウェイ向けに、Microsoft Foundry の Azure 認証をスキップします。Claude Code は Azure の認証情報なしでリクエストを送信し、ANTHROPIC_CUSTOM_HEADERS などで指定した Authorization ヘッダーを保持します。ANTHROPIC_FOUNDRY_API_KEY または ANTHROPIC_FOUNDRY_AUTH_TOKEN が設定されている場合は無視されます。v2.1.203 より前は、この変数を設定すると、API キーも設定されていない限り Microsoft Foundry クライアントがリクエストを送信できなくなっていました
CLAUDE_CODE_SKIP_MANTLE_AUTH Amazon Bedrock Mantle の AWS 認証をスキップします(たとえば、LLM ゲートウェイを使用する場合)
CLAUDE_CODE_SKIP_MODEL_ACCESS_MEMORY Amazon Bedrock と Google Cloud の Agent Platform での起動時のモデルチェックは、アカウントが呼び出せないことが判明したモデルを、このマシン上で最大 1 日間記憶します。この記憶をオフにするには 1 に設定します。Claude Code v2.1.285 以降が必要です
CLAUDE_CODE_SKIP_PROMPT_HISTORY 1 に設定すると、プロンプト履歴とセッションのトランスクリプトのディスクへの書き込みをスキップします。この変数を設定して開始したセッションは、--resume、--continue、上矢印キーの履歴に表示されません。一時的なスクリプトセッションに便利です
CLAUDE_CODE_SKIP_VERTEX_AUTH Google Cloud の Agent Platform の Google 認証をスキップします(たとえば、LLM ゲートウェイを使用する場合)
CLAUDE_CODE_STARTUP_FAILURE_RESULTS 1 に設定すると、--output-format stream-json で開始したセッションで、通常は stderr の出力のみで終わる起動失敗について、Claude Code が起動を拒否した理由を示す result メッセージを書き込みます。Claude Code v2.1.274 以降が必要です
CLAUDE_CODE_STOP_HOOK_BLOCK_CAP Claude Code がそれを上書きしてターンを終了するまでに、Stop または SubagentStop フックがターンの終了を連続してブロックできる最大回数(デフォルト: 8)。上限を無効にするには 0 に設定します。フックが解決のために正当により多くの反復を必要とする場合は値を増やしてください
CLAUDE_CODE_SUBAGENT_MODEL 別の方法でモデルが割り当てられていないサブエージェント、エージェントチームのチームメイト、ワークフローエージェントのデフォルトモデル。haiku などのエイリアスまたは完全なモデル名を受け付けます。これより優先されるソースが 2 つあります。Claude がエージェントを生成する際に渡すモデルと、inherit を含むエージェント定義内の model フィールドです。これを変更するには、CLAUDE_CODE_SUBAGENT_MODEL_FORCE を設定します。完全な順序についてはモデルを選択するを参照してください。inherit に設定するのは未設定のままにするのと同じです。v2.1.251 より前は、この変数は呼び出しごとのモデルと定義の model フィールドの両方を上書きしていました
CLAUDE_CODE_SUBAGENT_MODEL_FORCE 1 に設定すると、サブエージェント、チームメイト、ワークフローエージェントに 1 つのモデルを強制します。それがどのモデルかは、すべてのサブエージェントを 1 つのモデルで実行するで説明されています。Claude Code v2.1.257 以降が必要です
CLAUDE_CODE_SUBAGENT_PROMPT_CACHE_TTL Claude Code が受け付ける値は 5m または 1h のみで、サブエージェント、ワークフロー、バックグラウンド作業など、メインの会話以外のリクエストのプロンプトキャッシュ TTL を選択します。subagentPromptCacheTtl 設定と ENABLE_PROMPT_CACHING_1H より優先され、FORCE_PROMPT_CACHING_5M はこれを上書きします。API は 1 時間のキャッシュ書き込みを高い料金で課金します。Claude Code v2.1.242 以降が必要です
CLAUDE_CODE_SUBPROCESS_ENV_SCRUB 1 に設定すると、Bash コマンド、フック、stdio MCP サーバーなど、Claude Code が起動するサブプロセスの環境から認証情報を取り除きます。スクラブは変数名または値によって認証情報を識別し、GitHub トークンとプロキシ設定はそのまま残します。サブプロセス環境のスクラブで削除されるものを参照してください。allowed_non_write_users が設定されている場合、claude-code-action はこれを自動的に設定します
CLAUDE_CODE_SYNC_PLUGIN_INSTALL 非対話モード(-p フラグ)で 1 に設定すると、最初のクエリの前にプラグインのインストールが完了するのを待ちます。これがない場合、プラグインはバックグラウンドでインストールされ、最初のターンでは利用できない可能性があります。待機時間を制限するには CLAUDE_CODE_SYNC_PLUGIN_INSTALL_TIMEOUT_MS と組み合わせます
CLAUDE_CODE_SYNC_PLUGIN_INSTALL_TIMEOUT_MS 同期的なプラグインインストールのタイムアウト(ミリ秒)。超過すると、Claude Code はプラグインなしで続行し、エラーをログに記録します。デフォルトはありません。この変数がない場合、同期インストールは完了するまで待機します
CLAUDE_CODE_SYNC_SKILLS -p フラグを使った非対話モードで 1 に設定すると、Claude Code はその実行で claude.ai アカウントに対して有効になっているスキルをダウンロードし、最初のクエリを実行する前に、CLAUDE_CODE_SYNC_SKILLS_WAIT_TIMEOUT_MS を上限としてスキルの一覧を待ちます。ダウンロード自体はバックグラウンドで完了し、Claude はスキルを呼び出す際にそのスキルのダウンロードを待ちます。claude.ai 認証が必要です。claude.ai アカウントでサインインするターミナルセッションでは、この変数がなくても、これらのスキルが ~/.claude/skills/synced/ にダウンロードされ、約 10 分ごとに再同期されるため、-p の実行で最初のクエリから現在のスキルが必要な場合にのみ設定してください。v2.1.273 より前は、ターミナルセッションはこの変数を設定した -p の実行でのみスキルをダウンロードしていました。synced フォルダ名はこのダウンロード用に予約されています。v2.1.227 より前は、スキルは ~/.claude/skills/ に直接ダウンロードされていました。Claude Code は、ダウンロードしたスキルの ! コマンドをマシン上で実行しないなど、ダウンロードしたスキルに追加のルールを適用します
CLAUDE_CODE_SYNC_SKILLS_INSTALL_TIMEOUT_MS Agent SDK で構築されたアプリがスキルを再読み込みする際に、セッションの途中で実行されるスキルの再同期のタイムアウト(ミリ秒)(デフォルト: 30000)。超過すると、到着済みのスキルで再読み込みが続行され、残りのダウンロードはバックグラウンドで完了します
CLAUDE_CODE_SYNC_SKILLS_WAIT_TIMEOUT_MS CLAUDE_CODE_SYNC_SKILLS が設定されている場合に、最初のクエリが最初のスキル一覧を待つタイムアウト(ミリ秒)(デフォルト: 5000)。超過すると、最初のクエリは到着済みのスキルで実行されます。いずれの場合もダウンロードはバックグラウンドで完了し、Claude はスキルを呼び出す際にそのスキルのダウンロードを待ちます
CLAUDE_CODE_SYNTAX_HIGHLIGHT false に設定すると、差分出力のシンタックスハイライトを無効にします。色がターミナルの設定と干渉する場合に便利です。コードブロックとファイルプレビューのハイライトも無効にするには、syntaxHighlightingDisabled 設定を使用します
CLAUDE_CODE_TASK_LIST_ID セッション間でタスクリストを共有します。Task ツールを持つセッションで、複数の Claude Code インスタンスに同じ ID を設定すると、共有タスクリストで連携できます。タスクリストを参照してください
CLAUDE_CODE_TEAM_TEARDOWN_PARK_TIMEOUT_MS 非対話セッションが終了時にエージェントチームの破棄が完了するのを待つ時間をミリ秒単位で上書きします。1000 から 60000 を受け付けます。範囲外の値は無視され、デフォルトの 10000 が適用されます。Claude Code v2.1.206 以降が必要です
CLAUDE_CODE_TMPDIR 内部の一時ファイルに使用する一時ディレクトリを上書きします。Claude Code は、Unix ではこのパスに /claude-{uid}/ を、Windows では /claude/ を追加します。デフォルト: macOS では /tmp、Linux と Windows では os.tmpdir()。macOS と Linux では、上書き値が長いパスの場合、一時パスが長すぎると失敗するツールがあるため、サンドボックス化された Bash サブプロセスはシステムのデフォルトの下にある短いフォールバックの $TMPDIR を受け取ります。サンドボックス化されていない Bash コマンドは、シェルの $TMPDIR が設定されている場合はそれを継承します。ネイティブ Windows では、シェルが $TMPDIR を設定していない場合、$TMPDIR を参照する Bash コマンドは上書き値を受け取り、上書き値を設定していない場合は %TEMP% を受け取ります。Claude Code 自身の一時ファイルは常に上書き値を使用します。シェル、ユーザー設定、または管理設定で設定してください。プロジェクト設定とローカル設定では無視されます
CLAUDE_CODE_TMUX_TRUECOLOR 1 など空でない任意の値に設定すると、tmux 内で 24 ビットのトゥルーカラー出力を許可します。ほとんどのオン/オフ変数とは異なり、0 または false に設定してもトゥルーカラーは許可されます。256 色への制限に戻すには変数を未設定にします。デフォルトでは、tmux は設定しない限りトゥルーカラーのエスケープシーケンスをパススルーしないため、$TMUX が設定されている場合、Claude Code は 256 色に制限します。~/.tmux.conf に set -ga terminal-overrides ',*:Tc' を追加した後にこれを設定してください。その他の tmux 設定についてはターミナルの設定を参照してください
CLAUDE_CODE_TOOL_MEMORY_CGROUP_EXCLUDE Linux と WSL で、Claude Code がツールのメモリ上限から除外するプロセスの種類を、mcp や lsp などのカンマ区切りリストで設定します。すべての種類に上限を適用するには none を、Bash、PowerShell、Monitor ツールのコマンドにのみ上限を適用するには all-new を設定します。何を指定しても、Claude Code は Bash、PowerShell、Monitor ツールのコマンドを上限の対象に含めます。Claude Code v2.1.246 以降が必要です
CLAUDE_CODE_TOOL_MEMORY_LIMIT Linux と WSL で、4G などのサイズを設定すると、Bash と PowerShell のツールコマンドが使用できるメモリに上限を設けます。v2.1.246 以降では Monitor ツールのコマンドも対象です。サイズは数字のみで指定し、単独の場合はバイト数、または K、M、G、T のサフィックスを付けます。上限をオフにするには 0 または off を設定します。Claude Code が最初に起動したプロセスが上限をオンまたはオフにした後は、変更した値は次に claude を起動したときに有効になります。Claude Code v2.1.233 以降が必要です
CLAUDE_CODE_TRANSCRIPT_LOCAL_GC 1 に設定すると、長時間の -p または Agent SDK セッションのトランスクリプトファイルが大きくなりすぎないように制限します。各コンテキスト圧縮の後、ファイルが 5 MB を超えている場合、Claude Code はその圧縮より前の履歴を削除します。セッションを再開すると、ファイルがトリミングされたかどうかに関係なく同じ会話が復元されます。設定の env ブロックではオンにできないため、Claude Code を起動する環境で設定してください。Claude Code v2.1.287 以降が必要です
CLAUDE_CODE_USER_DIALOG_TIMEOUT_MS Claude Code が Remote Control や SDK ホストなどのリモートクライアントに転送するダイアログ、または保留されたセッション間メッセージの承認ダイアログを、Claude Code がキャンセルするまでの期限(ミリ秒)。権限プロンプトと AskUserQuestion の質問は独自のフローを使用し、この設定の影響を受けません。Claude Code v2.1.236 以降では、無人で実行されている可能性のあるセッションにおける、セッション途中の Fable 使用クレジット同意プロンプトにも期限を設けます。期限が適用されないケースを含む、保留メッセージの有効期限に関する完全なルールについては、受信メッセージを制御すると非対話セッションを参照してください。dialogExpiry 設定を上書きします。0 または負の値を指定すると期限が無効になります
CLAUDE_CODE_USE_ANTHROPIC_AWS Claude Platform on AWS を使用します
CLAUDE_CODE_USE_BEDROCK Amazon Bedrock を使用します
CLAUDE_CODE_USE_FOUNDRY Microsoft Foundry を使用します
CLAUDE_CODE_USE_MANTLE Amazon Bedrock の Mantle エンドポイントを使用します
CLAUDE_CODE_USE_NATIVE_FILE_SEARCH 1 に設定すると、ripgrep の代わりに Node.js のファイル API を使用して、カスタムコマンド、サブエージェント、出力スタイルを検出します。バンドルされた ripgrep バイナリが環境で利用できないかブロックされている場合に設定します。Grep やファイル検索ツールには影響しません
CLAUDE_CODE_USE_POWERSHELL_TOOL PowerShell ツールを制御します。Git Bash がない Windows では、ツールは自動的に有効になります。無効にするには 0 に設定します。Git Bash がインストールされている Windows では、claude.ai および Console アカウントではデフォルトでオンです。Amazon Bedrock、Google Cloud's Agent Platform、Microsoft Foundry のセッションで有効にするには 1 に、オフにするには 0 に設定します。Linux、macOS、WSL では 1 に設定すると有効になり、その場合は PATH 上に pwsh が必要です。Windows で有効にすると、Claude は Git Bash を経由せずに PowerShell コマンドをネイティブに実行できます。PowerShell ツールを参照してください
CLAUDE_CODE_USE_VERTEX Google Cloud's Agent Platform を使用します
CLAUDE_CODE_WEBFETCH_CACHE_TTL_MS WebFetch が取得した各 URL のレスポンスをキャッシュしておく時間をミリ秒単位で設定します。デフォルトは 900000(15 分)です。数字のみを受け付けます。0、小数、その他の表記ではデフォルトが維持されます。Claude Code は起動ごとに 1 回だけ値を読み込むため、設定の env ブロックでの変更は次に claude を起動したときに適用されます。Claude Code v2.1.233 以降が必要です
CLAUDE_CODE_WEBFETCH_DEADLINE_MS WebFetch がページのダウンロード(追跡するリダイレクトを含む)を待つ時間の上限をミリ秒単位で指定します。それまでに完了しないダウンロードは期限エラーで失敗します。デフォルトは 300000(5 分)です。0 に設定すると制限がなくなります。数字のみを受け付けます。小数やその他の表記ではデフォルトが維持されます。Claude Code v2.1.268 以降が必要です
CLAUDE_CODE_WORKER_CHECKIN_SCHEDULE CLAUDE_AUTO_BACKGROUND_TASKS が 1 に設定されている場合に、まだ実行中のバックグラウンドサブエージェントを確認するよう Claude にリマインドするまで、Claude Code が待つ時間を指定します。1 から 86400 までの整数秒の待機時間を 1 つ以上カンマ区切りで指定します(例: 600 や 600,1800,3600)。各値は次のリマインダーまでの待機時間で、最後の値が繰り返されます。数字のみを受け付けます。その他の値や表記は未設定として扱われます。未設定の場合、リマインダーはありません。Claude Code v2.1.283 以降が必要です
CLAUDE_CODE_WORKFLOW_MAX_CONCURRENT_AGENTS 1 回のワークフロー実行で同時に実行するエージェントの数を 1 から 256 の範囲で指定します。デフォルトでは、1 回の実行で最大 16 個のエージェントを同時に実行し、Claude Code が利用できる CPU が少ない場合はそれより少なくなります。キューに入った agent() 呼び出しは空きスロットを待ちます。実行中の各エージェントのトランスクリプトは Claude Code のメモリに保持されるため、値を大きくするとメモリ使用量が増えます。数字のみを受け付けます。範囲外の値やその他の表記ではデフォルトが維持されます。Claude Code v2.1.269 以降が必要です
CLAUDE_CODE_WORKFLOW_PREFIX_STAGGER_MS ワークフローのエージェントが自身の最初のリクエストを送信する前に、同じプレフィックスを持つ兄弟エージェントの最初のレスポンスが始まるのを待つ時間の上限をミリ秒単位で指定します。ファンアウトでプロンプトキャッシュのプレフィックスを共有する複数のエージェントを開始する場合、Claude Code は最初のエージェント以外をこの時間まで待機させ、残りのエージェントがそれぞれキャッシュなしでプレフィックスを処理するのではなく、キャッシュされたプレフィックスを読み取るようにします。デフォルトは 5000 です。待機を無効にするには 0 に設定します。DISABLE_PROMPT_CACHING が設定されている場合、エージェントは待機しません。Claude Code v2.1.229 以降が必要です
CLAUDE_CONFIG_DIR 設定ディレクトリを上書きします(デフォルト: ~/.claude)。すべての設定、セッション履歴、プラグインはこのパスの下に保存されます。認証情報については、Claude Code が認証情報を保存する場所を参照してください。複数のアカウントを並行して使用する場合に便利です。例: alias claude-work='CLAUDE_CONFIG_DIR=~/.claude-work claude'。シェル、ユーザー設定、または管理設定で設定します。設定ファイルでは絶対パスを記述します。プロジェクト設定とローカル設定では無視されます
CLAUDE_DISABLE_ADOPT ← を押すか /background でセッションをバックグラウンドに移したときに、進行中のバックグラウンド作業を引き継がずに停止するには 1 に設定します。Claude Code はバックグラウンドに移す前に確認を求め、その後、本来であれば引き継がれるタスクを停止します。Claude Code v2.1.195 以降が必要です
CLAUDE_EFFORT Bash ツールのサブプロセスとフックコマンドで、サブプロセス開始時点で有効な effort レベル(low、medium、high、xhigh、max)に自動的に設定されます。フックに渡される effort.level フィールドと一致します。現在のモデルが effort パラメーターをサポートしている場合にのみ設定されます
CLAUDE_ENABLE_BYTE_WATCHDOG バイトレベルのストリーミングアイドルウォッチドッグを強制的に有効にするには 1 に、強制的に無効にするには 0 に設定します。0 は、最初のバイトの期限が適用される接続でその期限もオフにします。未設定の場合、ウォッチドッグは Anthropic API への直接接続と Claude Platform on AWS 接続、および ANTHROPIC_BASE_URL または ANTHROPIC_AWS_BASE_URL 経由で到達するゲートウェイ接続のストリーミングレスポンスで、デフォルトで有効になります。v2.1.222 より前はこれらのゲートウェイ接続では実行されなかったため、キープアライブの ping が届いている間でも、イベントレベルのウォッチドッグがそこで停止を報告することがありました。タイムアウトとタイマー同士の相互作用については、ストリーミングアイドルウォッチドッグを参照してください
CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK Amazon Bedrock の vnd.amazon.eventstream レスポンスでバイトレベルのストリーミングアイドルウォッチドッグを有効にするには 1 に設定します。これにより、Bedrock のストリーミングリクエストで最初のバイトの期限も有効になります。デフォルトではオフです。タイムアウトは CLAUDE_STREAM_IDLE_TIMEOUT_MS で設定します
CLAUDE_ENABLE_STREAM_WATCHDOG イベントレベルのストリーミングアイドルウォッチドッグを強制的に無効にするには 0 に、強制的に有効にするには 1 に設定します。未設定の場合、ウォッチドッグはすべてのプロバイダーでデフォルトでオンです。v2.1.196 より前は、未設定時のデフォルトは Anthropic API への直接接続ではサーバー側で制御され、その他のプロバイダーではオフでした。タイムアウトは CLAUDE_STREAM_IDLE_TIMEOUT_MS で設定します。これと並行して動作するその他の停止検出タイマーについては、ストリーミングアイドルウォッチドッグを参照してください
CLAUDE_ENV_FILE Claude Code が各 Bash コマンドの前に同じシェルプロセス内で内容を実行するシェルスクリプトのパスです。これにより、ファイル内の export がコマンドから参照できるようになります。virtualenv や conda の有効化をコマンド間で維持するために使用します。SessionStart、Setup、CwdChanged、FileChanged フックによっても動的に設定されます
CLAUDE_JOB_DIR 各バックグラウンドセッションで、Claude Code がそのセッションの ~/.claude/jobs/<id> ディレクトリに設定します。セッションが実行するシェルコマンドはこれを継承します。一時ファイルは $CLAUDE_JOB_DIR/tmp に書き込んでください。そこへの Claude の Write および Edit 呼び出しでは権限プロンプトが表示されず、ディレクトリはセッションの削除時に削除されます
CLAUDE_PID Claude Code が生成するサブプロセス(Bash および PowerShell ツールのコマンドとフックコマンド)で、Claude Code 自身のプロセス ID に設定されます。Linux では、Bash ツールのシェル統合がこれを使用して、Claude Code プロセス自体に一致する pkill パターンを拒否します。エラーリファレンスを参照してください。独自のスクリプトからこれを読み取ることで、親の Claude Code プロセスを意図的に特定したりシグナルを送ったりできます。Claude Code v2.1.214 以降が必要です
CLAUDE_REMOTE_CONTROL_SESSION_NAME_PREFIX 明示的な名前が指定されていない場合に自動生成される Remote Control セッション名のプレフィックスです。デフォルトはマシンのホスト名で、myhost-graceful-unicorn のような名前になります。--remote-control-session-name-prefix CLI フラグは、1 回の呼び出しに対して同じ値を設定します
CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS 最初のバイトの期限が適用される接続で、ストリーミングリクエストのレスポンスの最初のバイトを待つ期限をミリ秒単位で指定します。Claude Code による値の制限方法、大きなリクエスト本文に対して追加される時間、未設定時の期限の決め方については、No response from API を参照してください。Claude Code v2.1.242 以降が必要です
CLAUDE_STREAM_IDLE_TIMEOUT_MS イベントレベルおよびバイトレベルのストリーミングアイドルウォッチドッグが停止した接続を閉じるまでのタイムアウトをミリ秒単位で指定します。この変数を明示的に設定する場合、最小値は 300000(5 分)です。これより小さい値は、拡張思考の長い中断やプロキシのバッファリングを吸収するために暗黙的に引き上げられ、バイトレベルのウォッチドッグでは値の上限が 30 分になります。バイトレベルのウォッチドッグについては、CLAUDE_BYTE_STREAM_IDLE_TIMEOUT_MS がこの変数より優先されます。ウォッチドッグごとの未設定時のデフォルトについては、ストリーミングアイドルウォッチドッグを参照してください
CLAUDE_SUBAGENT_BG_SHELL_MAX_MS v2.1.260 で削除され、現在は何の効果もありません。以前は、サブエージェントが開始したバックグラウンドシェルコマンドの実行時間の上限をミリ秒単位で指定していました(デフォルトは 60 分)。バックグラウンドコマンドの存続期間のルールを参照してください
DEBUG デバッグモードを有効にするには 1 に設定します。--debug を付けて起動するのと同じです。デバッグログは ~/.claude/debug/<session-id>.txt、または CLAUDE_CODE_DEBUG_LOGS_DIR で設定したパスに書き込まれます。デバッグモードを有効にするのは真値の 1、true、yes、on のみのため、他のツール向けに設定された DEBUG=express:* のような名前空間パターンではデバッグモードは有効になりません
DISABLE_AUTOUPDATER バックグラウンドでの自動更新を無効にするには 1 に設定します。手動の claude update は引き続き機能します。両方をブロックするには DISABLE_UPDATES を使用します
DISABLE_AUTO_COMPACT コンテキストの上限に近づいたときの自動圧縮を無効にするには 1 に設定します。手動の /compact コマンドは引き続き使用できます。コンテキスト圧縮を実行するタイミングを明示的に制御したい場合に使用します。autoCompactEnabled 設定を上書きします
DISABLE_COMPACT 自動圧縮と手動の /compact コマンドの両方を含む、すべてのコンテキスト圧縮を無効にするには 1 に設定します
DISABLE_COST_WARNINGS コストの警告メッセージを無効にするには 1 に設定します
DISABLE_DOCTOR_COMMAND /doctor セットアップチェックアップスキルとそのエイリアスの /checkup を非表示にするには 1 に設定します。ユーザーにセッションからセットアップ診断を実行させたくない管理されたデプロイで便利です。ターミナルコマンドの claude doctor には影響しません。v2.1.205 より前は、この変数は /doctor 診断画面コマンドを非表示にしていました
DISABLE_ERROR_REPORTING エラー報告をオプトアウトするには、1 などの空でない任意の値に設定します。ほとんどのオン/オフ変数とは異なり、0 や false に設定してもオプトアウトされます。エラー報告を再びオンにするには、変数の設定を解除します
DISABLE_EXTRA_USAGE_COMMAND レート制限を超えて追加の使用量を購入できる /usage-credits コマンドを非表示にするには 1 に設定します
DISABLE_FEEDBACK_COMMAND /feedback コマンドと Claude が作成するフィードバックを無効にするには 1 に設定します。同じ経路で報告を行う /bug と /share も無効になります。v2.1.212 より前はこれらは /feedback のエイリアスだったため、どの名前でもコマンドが無効になっていました。旧名の DISABLE_BUG_COMMAND も受け付けられます
DISABLE_GROWTHBOOK GrowthBook の機能フラグの取得を無効にし、すべてのフラグでコードのデフォルトを使用するには 1 または true に設定します。これにより、Remote Control およびその他の機能フラグの取得を必要とする機能が使用できなくなります。0 または false に設定すると、取得はオンのままです。DISABLE_TELEMETRY も設定しない限り、テレメトリイベントのログ記録はオンのままです
DISABLE_INSTALLATION_CHECKS インストールに関する警告を無効にするには 1 に設定します。標準インストールでの問題が隠れる可能性があるため、インストール場所を手動で管理している場合にのみ使用してください
DISABLE_INSTALL_GITHUB_APP_COMMAND /install-github-app コマンドを非表示にするには 1 に設定します。サードパーティプロバイダー(Amazon Bedrock、Google Cloud's Agent Platform、Microsoft Foundry)を使用している場合は、すでに非表示になっています
DISABLE_INTERLEAVED_THINKING interleaved-thinking ベータヘッダーの送信を防ぐには 1 に設定します。LLM ゲートウェイやプロバイダーがインターリーブ思考をサポートしていない場合に便利です
DISABLE_LOGIN_COMMAND /login コマンドを非表示にするには 1 に設定します。API キーや apiKeyHelper によって認証が外部で処理される場合に便利です
DISABLE_LOGOUT_COMMAND /logout コマンドを非表示にするには 1 に設定します
DISABLE_PROMPT_CACHING すべてのモデルでプロンプトキャッシュを無効にするには 1 に設定します(モデルごとの設定より優先されます)
DISABLE_PROMPT_CACHING_FABLE Fable モデルでプロンプトキャッシュを無効にするには 1 に設定します
DISABLE_PROMPT_CACHING_HAIKU 実行場所にかかわらず、デフォルトの Haiku モデルでプロンプトキャッシュを無効にするには 1 に設定します
DISABLE_PROMPT_CACHING_OPUS デフォルトの Opus モデルでプロンプトキャッシュを無効にするには 1 に設定します
DISABLE_PROMPT_CACHING_SONNET デフォルトの Sonnet モデルでプロンプトキャッシュを無効にするには 1 に設定します
DISABLE_TELEMETRY テレメトリをオプトアウトするには、1 などの空でない任意の値に設定します。ほとんどのオン/オフ変数とは異なり、0 や false に設定してもオプトアウトされます。テレメトリを再びオンにするには、変数の設定を解除します。テレメトリイベントには、コード、ファイルパス、Bash コマンドなどのユーザーデータは含まれません。機能フラグの取得も無効になります。組織のテレメトリをオフにするを参照してください
DISABLE_UPDATES 手動の claude update や claude install を含むすべての更新をブロックするには 1 に設定します。DISABLE_AUTOUPDATER よりも厳格です。独自のチャネルで Claude Code を配布しており、ユーザーに自分で更新させたくない場合に使用します
DISABLE_UPGRADE_COMMAND /upgrade コマンドを非表示にするには 1 に設定します
DO_NOT_TRACK テレメトリをオプトアウトするには 1 に設定します。機能フラグの取得への影響も含め、DISABLE_TELEMETRY と同じ効果があります。Claude Code はこの変数を標準的なブール値として読み取るため、0 ではテレメトリはオンのままです。また、多くの開発者向け CLI で認識されているツール横断の慣例としてこの変数を尊重します
ENABLE_BETA_TRACING_DETAILED 1 に設定し、BETA_TRACING_ENDPOINT を OTLP/HTTP コレクターのエンドポイントに設定すると、詳細なベータトレーシングがオンになります。これにより、コンテンツを含むスパン属性と claude_code.hook スパンが追加されます。対話型 CLI セッションでは、組織がベータの許可リストに登録されている必要もあります。どちらの変数もプロジェクト設定とローカル設定では無視されます
ENABLE_CLAUDEAI_MCP_SERVERS Claude Code が claude.ai の MCP サーバーを取得しないようにするには false に設定します。ログインしているユーザーではデフォルトで有効です。プロジェクト単位または組織単位で無効にするには、代わりに設定で disableClaudeAiConnectors を設定します
ENABLE_PROMPT_CACHING_1H デフォルトの 5 分ではなく 1 時間のプロンプトキャッシュ TTL をリクエストするには 1 に設定します。API キー、Amazon Bedrock、Google Cloud's Agent Platform、Microsoft Foundry、Claude Platform on AWS のユーザー向けです。含まれる使用量の範囲内のサブスクリプションユーザーは、メインの会話で自動的に 1 時間の TTL を受け取ります。使用クレジットを消費しているサブスクリプションユーザーは、これを設定することで 1 時間の TTL を維持できます。1 時間のキャッシュ書き込みには、より高い料金が課金されます。代わりにリクエストの区分ごとに TTL を選択するには、この変数より優先される CLAUDE_CODE_PROMPT_CACHE_TTL と CLAUDE_CODE_SUBAGENT_PROMPT_CACHE_TTL を使用します
ENABLE_PROMPT_CACHING_1H_BEDROCK 非推奨です。代わりに ENABLE_PROMPT_CACHING_1H を使用してください
ENABLE_TOOL_SEARCH MCP ツール検索を制御します。未設定の場合、Claude Code はデフォルトですべての MCP ツールを遅延読み込みします。ただし、Claude 4.5 世代より前の Google Cloud's Agent Platform のモデル、Azure でホストされている Microsoft Foundry のデプロイ、および ANTHROPIC_BASE_URL がファーストパーティ以外のホストを指している場合は、引き続き事前に読み込みます。true は、それらの Agent Platform のモデルと Microsoft Foundry のデプロイを除き、常に遅延読み込みを行いベータヘッダーを送信します。tool_reference をサポートしないプロキシではリクエストが失敗します。auto は、ツール定義がコンテキストの 10% 以内に収まる場合に事前に読み込みます。auto:N はカスタムのしきい値を設定します(例: 5% の場合は auto:5)。false はすべてのツールを事前に読み込みます。CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS が設定されている場合、自分で設定した値は無視されます。v2.1.221 より前は、この変数を true に設定しない限り、Claude Code は Google Cloud's Agent Platform のすべてのモデルでツール検索を無効にしていました
FALLBACK_FOR_ALL_PRIMARY_MODELS フォールバックモデルが設定されていない場合に、すべてのモデルで過負荷エラーが繰り返されたときに Claude Code が再試行を停止するようにするには、1 などの空でない任意の値に設定します。ほとんどのオン/オフ変数とは異なり、0 や false に設定してもこれが有効になります。デフォルトの再試行動作に戻すには、変数の設定を解除します。この変数がない場合、Claude サブスクリプションではなく API キーまたはサードパーティプロバイダーで認証しているときに、Claude Code が Opus、Fable、Mythos のモデルと認識するモデルでのみ、このように再試行を停止します。Claude Code v2.1.160 以降では、どのプライマリモデルでも過負荷エラーが繰り返されると、Claude Code は設定されたフォールバックモデルチェーンに切り替えるため、この変数はフォールバックモデルへの切り替えには影響しません
FORCE_AUTOUPDATE_PLUGINS メインの自動更新が DISABLE_AUTOUPDATER で無効になっている場合でも、プラグインの自動更新を強制するには 1 に設定します
FORCE_HYPERLINK ターミナルが OSC 8 ハイパーリンクをサポートしているのに自動検出されない場合にクリック可能なハイパーリンクを有効にするには 1 に、無効にするには 0 に設定します。未設定の場合、Claude Code はターミナルのサポートを検出した場合にのみハイパーリンクを有効にします。Claude Code はこの値をブール値ではなく数値として解析するため、false、no、off などの値はハイパーリンクを無効にするのではなく有効にします。フッターの PR またはマージリクエストのバッジは、SSH 経由など Claude Code がターミナルのサポートを検出できない場合でもハイパーリンクとして表示されます。バッジをプレーンテキストとして表示するには 0 に設定します
FORCE_PROMPT_CACHING_5M 本来 1 時間の TTL が適用される場合でも、5 分のプロンプトキャッシュ TTL を強制するには 1 に設定します。CLAUDE_CODE_PROMPT_CACHE_TTL、CLAUDE_CODE_SUBAGENT_PROMPT_CACHE_TTL、ENABLE_PROMPT_CACHING_1H、および promptCacheTtl と subagentPromptCacheTtl 設定を上書きします
HTTP_PROXY ネットワーク接続用の HTTP プロキシサーバーを指定します
HTTPS_PROXY ネットワーク接続用の HTTPS プロキシサーバーを指定します
IS_DEMO デモモードを有効にするには、1 などの空でない任意の値に設定します。デモモードでは、ヘッダーと /status の出力からメールアドレスと組織名が非表示になり、オンボーディングがスキップされます。ほとんどのオン/オフ変数とは異なり、0 や false に設定してもデモモードが有効になります。オフにするには、変数の設定を解除します。セッションを配信または録画する場合に便利です
MAX_MCP_OUTPUT_TOKENS MCP ツールのレスポンスで許可されるトークンの最大数です(デフォルト: 25000)。出力が 10,000 トークンを超えると、Claude Code は警告を表示します。anthropic/maxResultSizeChars を宣言しているツールは、テキストコンテンツに対して代わりにその文字数制限を使用しますが、それらのツールからの画像コンテンツには引き続きこの変数が適用されます。このアノテーションのないツールからの 50,000 文字を超える成功したテキスト結果は、この変数にかかわらずファイルに保存されます
MAX_STRUCTURED_OUTPUT_RETRIES -p フラグを使用した非対話モードで、モデルの応答が --json-schema に対する検証に失敗したときに Claude Code が許可する試行回数です。その回数だけ試行に失敗して有効な出力が得られない場合、実行は失敗します。ワークフローのサブエージェントの構造化出力が検証に失敗した場合にも、同じ上限が適用されます。デフォルトは 5(最初の試行と 4 回の再試行)です
MAX_THINKING_TOKENS 拡張思考の固定トークン予算です。Claude Code は、これをリクエストの最大出力トークン数より 1 トークン少ない値を上限とし、1,024 を下回らないようにします。その上限の設定方法については CLAUDE_CODE_MAX_OUTPUT_TOKENS を参照してください。未設定で思考が有効な場合、適応型推論を備えたモデルは自身で思考の深さを選択し、その他のモデルは上限を使用します。Anthropic API で思考を無効にするには 0 に設定します。ただし、Opus 5.5、Sonnet 5.5、Haiku 5.5、および Fable モデルは思考をオフにできません。サードパーティプロバイダーでは、0 は代わりに thinking パラメーターを省略します。Anthropic API で思考をオフにしている場合、Opus 5 などその組み合わせを受け付けないことが分かっているモデルに対しては、Claude Code はより高いレベルではなく effort high を送信します。正の値の場合、CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING で適応型推論をオフにしている場合を除き、Claude Code は適応型推論モデルでは数値自体を無視します
MCP_CLIENT_SECRET 事前設定された認証情報を必要とする MCP サーバー用の OAuth クライアントシークレットです。--client-secret を付けてサーバーを追加する際の対話型プロンプトを回避できます
MCP_CONNECTION_NONBLOCKING 起動時に、最初のクエリの前に MCP サーバーの接続を待つかどうかを制御します。MCP の起動はデフォルトでノンブロッキングです。サーバーはバックグラウンドで接続し、接続が完了したものから順にツールが利用可能になります。最初のクエリの前に Claude Code がサーバーの接続を待つようにするには 0 に設定します。alwaysLoad: true で設定されたサーバーは、最初のプロンプトを構築する時点でツールが存在している必要があるため、ディスカバリーキャッシュから提供される場合を除き、この設定にかかわらず起動を待機させます。--input-format stream-json を使用しない非対話モード(-p)では、Claude Code はこの変数にかかわらず、最初のターンの前にまだ保留中のサーバーも待ちます。--mcp-config を明示的に渡した場合、待機の期限は長くなります。キャッシュされたサーバーの例外については、そのフラグの項目を参照してください
MCP_CONNECT_TIMEOUT_MS ブロッキングの MCP 起動時に、ツールリストのスナップショットを作成する前に接続バッチを待つ時間をミリ秒単位で指定します(デフォルト: 5000)。MCP_CONNECTION_NONBLOCKING=0 の場合、または alwaysLoad: true が指定されたサーバーに適用されます。期限の時点でまだ保留中のサーバーは、バックグラウンドで接続を続けます。個々のサーバーの接続試行を制限する MCP_TIMEOUT とは別のものです
MCP_DISCOVERY_CACHE MCP ディスカバリーキャッシュをオンまたはオフにします。キャッシュがオンの場合、以前に使用したリモートの HTTP または SSE サーバーは cached ステータスを表示することがあり、Claude Code は起動時ではなく最初のツール呼び出し時にそのサーバーに接続します。段階的なロールアウトによってアカウントで有効になっていない限り、キャッシュはデフォルトでオフです。オンにするには 1 に、ロールアウトで有効になっている場合でもオフのままにするには 0 に設定します。v2.1.238 より前は、キャッシュはデフォルトでオンでした。cached ステータスには Claude Code v2.1.221 以降が必要です
MCP_DISCOVERY_CACHE_MAX_STALE_S ディスカバリーキャッシュのエントリの最大経過時間を秒単位で指定します(デフォルト: 14400、つまり 4 時間)。エントリがこれより古い状態で起動した場合、Claude Code はそのエントリを破棄し、キャッシュがオフの場合と同様に起動時にサーバーに接続します。Claude Code は値の上限を 7 日とします。v2.1.238 より前は、デフォルトは 86400(24 時間)で、Claude Code は値に上限を設けていませんでした
MCP_DISCOVERY_CACHE_STRIKES ディスカバリーキャッシュのエントリが MCP_DISCOVERY_CACHE_TTL_S より古い状態で起動した場合、Claude Code はバックグラウンドでエントリを更新します。この変数は、Claude Code がエントリを破棄して次回の起動時にサーバーに接続するまでに、連続して何回更新に失敗できるかを設定します(デフォルト: 1)。ネットワーク接続がときどき切れる場合は、1 回の更新失敗でエントリが破棄されないように値を引き上げてください。Claude Code v2.1.238 以降が必要です
MCP_DISCOVERY_CACHE_TTL_S Claude Code がディスカバリーキャッシュのエントリを更新せずに使用する秒数です(デフォルト: 900)。エントリがこれより古い状態で起動した場合、Claude Code は引き続きエントリを使用しますが、バックグラウンドで更新します。エントリが MCP_DISCOVERY_CACHE_MAX_STALE_S より古くなると、Claude Code は代わりにエントリを破棄します。Claude Code は値の上限を MCP_DISCOVERY_CACHE_MAX_STALE_S(デフォルトは 4 時間)とします。v2.1.238 より前は、Claude Code は値に上限を設けていませんでした
MCP_OAUTH_CALLBACK_PORT OAuth リダイレクトコールバック用の固定ポートです。事前設定された認証情報を使用して MCP サーバーを追加する際の --callback-port の代替として使用します
MCP_PROTOCOL_NEGOTIATION v2 MCP クライアントランタイムでのみ、Claude Code がサーバーに対して MCP プロトコルリビジョン 2026-07-28 をプローブするかどうかを指定します。HTTP、claude.ai コネクタ、stdio サーバーをプローブするには auto に、どれもプローブしない場合は legacy に設定します。変数が未設定の場合、Claude Code は MCP クライアントランタイムで説明されているサーバーをプローブします。その他の値は、デバッグログに警告を出して無視されます。Claude Code v2.1.221 以降が必要です
MCP_REMOTE_SERVER_CONNECTION_BATCH_SIZE 起動時に並行して接続するリモート MCP サーバー(HTTP/SSE)の最大数です(デフォルト: 20)
MCP_SDK_GENERATION このプロセスが MCP サーバーへの接続に使用する MCP クライアントランタイムを固定します。MCP TypeScript SDK 1.x をベースにした v1、または MCP TypeScript SDK 2.0 をベースにした v2 を指定します。この変数がない場合、Claude Code はそのセクションに記載されているバージョン以降で v2 を使用します。Claude Code v2.1.221 以降では、v2 ランタイムは MCP OAuth サーバーが認可レスポンスで返す発行者を確認し、一致しない場合は Issuer mismatch in authorization response で始まるエラーでサインインを失敗させます。v1 ランタイムはこの確認を行いません。認識されない値を設定した場合、Claude Code はそれを無視し、デバッグログに警告を書き込みます。Claude Code はプロセスごとに 1 回だけ値を読み込みます。Claude Code v2.1.218 以降が必要です
MCP_SERVER_CONNECTION_BATCH_SIZE 起動時に並行して接続するローカル MCP サーバー(stdio)の最大数です(デフォルト: 3)
MCP_TIMEOUT MCP サーバー起動のタイムアウトをミリ秒単位で指定します(デフォルト: 30000、つまり 30 秒)
MCP_TOOL_TIMEOUT MCP ツール実行のタイムアウトをミリ秒単位で指定します(デフォルト: 100000000、約 28 時間)。HTTP、SSE、または claude.ai コネクタのサーバーでは、各リクエストもデフォルトで 60 秒後にタイムアウトします。このリクエストごとの制限を引き上げるには、この変数またはサーバーごとの timeout を 60000 より大きい値に設定します。それより小さい値を設定すると、ツール実行全体のタイムアウトは短くなりますが、リクエストごとの制限は 60 秒のままです。stdio および WebSocket サーバーには、リクエストごとのタイマーはありません。.mcp.json のサーバーごとの timeout フィールドは、そのサーバーについてこの値を上書きします。1000 以上のサーバーごとの timeout は、そのサーバーのツール呼び出しの最小アイドル時間も設定するため、CLAUDE_CODE_MCP_TOOL_IDLE_TIMEOUT がそれより早く呼び出しを中止することはありません。この下限には Claude Code v2.1.203 以降が必要です。環境変数では 1000 未満の値は 1 秒に切り上げられ、サーバーごとのフィールドでは 1000 未満の値は無視されます
NO_PROXY プロキシを経由せずに直接リクエストを送信するドメインと IP のリストです
OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT 属性値の長さに関する標準の OpenTelemetry SDK の制限です。Claude Code は、コンテンツを含むテレメトリ属性の長さを、この値と CLAUDE_CODE_OTEL_CONTENT_MAX_LENGTH の小さい方に制限するため、切り詰めマーカーは SDK の制限内に収まります。Claude Code は OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT と OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT のバリアントも同様に読み取り、設定された値のうち最も小さいものがすべてのシグナルに適用されます。Claude Code v2.1.214 以降が必要です。モニタリングを参照してください
OTEL_LOG_ASSISTANT_RESPONSES assistant_response OpenTelemetry ログイベントにモデルの応答テキストを含めるには 1 に設定します。未設定の場合、Claude Code は代わりに OTEL_LOG_USER_PROMPTS の値を使用します。OTEL_LOG_USER_PROMPTS が設定されている場合でも応答を秘匿したままにするには 0 に設定します。シェル、ユーザー設定、または管理設定で設定します。プロジェクト設定とローカル設定では無視されます。Claude Code v2.1.193 以降が必要です。モニタリングを参照してください
OTEL_LOG_MANAGED_SETTINGS 秘匿処理された管理設定と、秘匿処理前の設定の SHA-256 ダイジェストを managed_settings_resolved OpenTelemetry ログイベントに追加するには 1 に設定します。デフォルトでは無効です。シェル、ユーザー設定、または管理設定で設定します。プロジェクト設定またはローカル設定の値ではオンになりません。Claude Code v2.1.274 以降が必要です。モニタリングを参照してください
OTEL_LOG_RAW_API_BODIES Anthropic Messages API のリクエストとレスポンスの JSON を api_request_body / api_response_body ログイベントとして出力します。コンテンツの上限で切り詰めた本文をインラインで出力するには 1 に、切り詰めない本文をディスクに書き込んで代わりに body_ref パスを出力するには file:<dir> に設定します。CLAUDE_CODE_OTEL_CONTENT_MAX_LENGTH でコンテンツの上限を設定します(デフォルトは 60 KB)。デフォルトでは無効です。本文には会話履歴全体が含まれます。シェル、ユーザー設定、または管理設定で設定します。プロジェクト設定とローカル設定では無視されます。モニタリングを参照してください
OTEL_LOG_TOOL_CONTENT tool.output OpenTelemetry スパンイベントにツールのコンテンツを含めるには 1 に設定します。スパン属性は独自のゲートの下でツールのコンテンツを保持します。トレーシングが必要です。機密データを保護するため、デフォルトでは無効です。シェル、ユーザー設定、または管理設定で設定します。そのセクションで説明されているオフの値を除き、プロジェクト設定とローカル設定では無視されます。モニタリングを参照してください
OTEL_LOG_TOOL_DETAILS OpenTelemetry のメトリクス、トレース、ログに、ツールの入力引数、MCP サーバー名、ユーザーが作成したワークフロー名、ツール失敗時の生のエラー文字列、api_refusal イベントの拒否 category、コストとトークンのメトリクスにおける実際のエージェント、スキル、プラグイン、MCP サーバーの名前、およびその他のツールの詳細を含めるには 1 に設定します。PII を保護するため、デフォルトでは無効です。シェル、ユーザー設定、または管理設定で設定します。そのセクションで説明されているオフの値を除き、プロジェクト設定とローカル設定では無視されます。モニタリングを参照してください
OTEL_LOG_USER_PROMPTS OpenTelemetry のトレースとログにユーザーのプロンプトテキストを含めるには 1 に設定します。デフォルトでは無効です(プロンプトは秘匿されます)。シェル、ユーザー設定、または管理設定で設定します。そのセクションで説明されているオフの値を除き、プロジェクト設定とローカル設定では無視されます。モニタリングを参照してください
OTEL_METRICS_INCLUDE_ACCOUNT_UUID メトリクス属性からアカウント UUID を除外するには false に設定します(デフォルト: 含める)。モニタリングを参照してください
OTEL_METRICS_INCLUDE_ENTRYPOINT メトリクス属性にセッションのエントリーポイントを含めるには true に設定します(デフォルト: 除外)。v2.1.152 で追加されました。モニタリングを参照してください
OTEL_METRICS_INCLUDE_REPOSITORY セッションのリポジトリを識別する vcs.* 属性を OpenTelemetry のメトリクスとイベントに付与するには true に設定します(デフォルト: 除外)。Claude Code v2.1.269 以降が必要です。リポジトリ属性を参照してください
OTEL_METRICS_INCLUDE_RESOURCE_ATTRIBUTES v2.1.161 以降、Claude Code は OTEL_RESOURCE_ATTRIBUTES のキーをメトリクスのデータポイントのラベルに付与します。これらを除外するには false に設定します(デフォルト: 含める)。モニタリングを参照してください
OTEL_METRICS_INCLUDE_SESSION_ID メトリクス属性からセッション ID を除外するには false に設定します(デフォルト: 含める)。モニタリングを参照してください
OTEL_METRICS_INCLUDE_VERSION メトリクス属性に Claude Code のバージョンを含めるには true に設定します(デフォルト: 除外)。モニタリングを参照してください
SLASH_COMMAND_TOOL_CHAR_BUDGET Skill ツールに表示されるスキルのメタデータの文字数予算を上書きします。予算はコンテキストウィンドウの 1% で動的に調整され、フォールバックは 8,000 文字です。後方互換性のために旧名が維持されています
TASK_MAX_OUTPUT_LENGTH v2.1.277 で、サイズを指定していた TaskOutput ツールとともに削除され、現在は何の効果もありません。以前は、TaskOutput ツールが保持するバックグラウンドタスクの出力の最大文字数を設定していました。現在、Claude は代わりに Read でバックグラウンドタスクの出力ファイルを読み取ります
USE_BUILTIN_RIPGREP Claude Code に同梱されている rg の代わりに、システムにインストールされている rg を使用するには 0 に設定します
VERTEX_REGION_CLAUDE_3_5_HAIKU Google Cloud's Agent Platform を使用する際の Claude 3.5 Haiku のリージョンを上書きします
VERTEX_REGION_CLAUDE_3_5_SONNET Google Cloud's Agent Platform を使用する際の Claude 3.5 Sonnet のリージョンを上書きします
VERTEX_REGION_CLAUDE_3_7_SONNET Google Cloud's Agent Platform を使用する際の Claude 3.7 Sonnet のリージョンを上書きします
VERTEX_REGION_CLAUDE_4_0_OPUS Google Cloud's Agent Platform を使用する際の Claude 4.0 Opus のリージョンを上書きします
VERTEX_REGION_CLAUDE_4_0_SONNET Google Cloud's Agent Platform を使用する際の Claude 4.0 Sonnet のリージョンを上書きします
VERTEX_REGION_CLAUDE_4_1_OPUS Google Cloud's Agent Platform を使用する際の Claude 4.1 Opus のリージョンを上書きします
VERTEX_REGION_CLAUDE_4_5_OPUS Google Cloud's Agent Platform を使用する際の Claude Opus 4.5 のリージョンを上書きします
VERTEX_REGION_CLAUDE_4_5_SONNET Google Cloud's Agent Platform を使用する際の Claude Sonnet 4.5 のリージョンを上書きします
VERTEX_REGION_CLAUDE_4_6_OPUS Google Cloud's Agent Platform を使用する際の Claude Opus 4.6 のリージョンを上書きします
VERTEX_REGION_CLAUDE_4_6_SONNET Google Cloud's Agent Platform を使用する際の Claude Sonnet 4.6 のリージョンを上書きします
VERTEX_REGION_CLAUDE_4_7_OPUS Google Cloud's Agent Platform を使用する際の Claude Opus 4.7 のリージョンを上書きします
VERTEX_REGION_CLAUDE_4_8_OPUS Google Cloud's Agent Platform を使用する際の Claude Opus 4.8 のリージョンを上書きします
VERTEX_REGION_CLAUDE_5_5_OPUS Google Cloud's Agent Platform を使用する際の Claude Opus 5.5 のリージョンを上書きします。v2.1.280 で追加されました
VERTEX_REGION_CLAUDE_5_5_SONNET Google Cloud's Agent Platform を使用する際の Claude Sonnet 5.5 のリージョンを上書きします。v2.1.284 で追加されました
VERTEX_REGION_CLAUDE_5_OPUS Google Cloud's Agent Platform を使用する際の Claude Opus 5 のリージョンを上書きします。v2.1.219 で追加されました
VERTEX_REGION_CLAUDE_5_SONNET Google Cloud's Agent Platform を使用する際の Claude Sonnet 5 のリージョンを上書きします。v2.1.197 で追加されました
VERTEX_REGION_CLAUDE_FABLE_5 Google Cloud's Agent Platform を使用する際の Claude Fable 5 のリージョンを上書きします。v2.1.170 で追加されました
VERTEX_REGION_CLAUDE_FABLE_5_1 Google Cloud's Agent Platform を使用する際の Claude Fable 5.1 のリージョンを上書きします。v2.1.257 で追加されました
VERTEX_REGION_CLAUDE_HAIKU_4_5 Google Cloud's Agent Platform を使用する際の Claude Haiku 4.5 のリージョンを上書きします
VERTEX_REGION_CLAUDE_HAIKU_5_5 Google Cloud's Agent Platform を使用する際の Claude Haiku 5.5 のリージョンを上書きします。v2.1.293 で追加されました

標準の OpenTelemetry エクスポーター変数(OTEL_METRICS_EXPORTER、OTEL_LOGS_EXPORTER、OTEL_EXPORTER_OTLP_ENDPOINT、OTEL_EXPORTER_OTLP_PROTOCOL、OTEL_EXPORTER_OTLP_HEADERS、OTEL_METRIC_EXPORT_INTERVAL、OTEL_RESOURCE_ATTRIBUTES、およびシグナル固有のバリアント)もサポートされています。設定の詳細については、モニタリングを参照してください。

CLAUDE_CODE_ENABLE_TELEMETRY と、エクスポートをオンにする、送信先を選択する、またはコンテンツを取得する OpenTelemetry 変数は、シェル、ユーザー設定、または管理設定で設定してください。そのセクションで説明されているオフの値を除き、Claude Code はプロジェクト設定とローカル設定ではこれらを無視します。OTEL_RESOURCE_ATTRIBUTES と、OTEL_METRIC_EXPORT_INTERVAL などのエクスポート間隔、タイムアウト、圧縮に関する変数は、プロジェクト設定とローカル設定からも引き続き適用されます。

サブプロセス環境のスクラブで削除されるもの

CLAUDE_CODE_SUBPROCESS_ENV_SCRUB を 1 に設定すると、Claude Code は Bash コマンド、フック、stdio MCP サーバーなど、自身が起動するサブプロセスの環境から認証情報を削除します。これにより、プロンプトインジェクション攻撃が読み取れる情報が減ります。Claude Code のプロセス自体は、独自の API 呼び出しのために認証情報を保持します。

スクラブは変数名または値の形式によって認証情報を識別するため、唯一の制御手段としてではなく、範囲を絞った権限ルールと併用する一つの層として使用してください。

次の表は、スクラブが例示の変数に対して行う処理を示しています。

変数の例 スクラブの処理
ANTHROPIC_API_KEY、AWS_SECRET_ACCESS_KEY 削除します
NPM_TOKEN、DB_PASSWORD 名前が認証情報のように見えるため、削除します
パスワードを含む DATABASE_URL 値が認証情報のように見えるため、削除します
パスワードを含む PIP_INDEX_URL または NPM_CONFIG_REGISTRY URL は保持し、そこからユーザー名とパスワードを取り除きます
CLAUDE_CONFIG_DIR 削除します
GITHUB_TOKEN、GH_TOKEN、GH_ENTERPRISE_TOKEN、GITHUB_ENTERPRISE_TOKEN gh や GitHub API を呼び出すスクリプトが引き続き動作するよう、そのまま残します
HTTP_PROXY、HTTPS_PROXY URL 内のユーザー名とパスワードも含めて、そのまま残します。サンドボックスは、サンドボックス化されたコマンドに対してこれらの変数を自ら設定できます
GIT_CONFIG_COUNT、GIT_CONFIG_KEY_<n>、GIT_CONFIG_VALUE_<n> 内容にかかわらず、そのまま残します
変数名も値も認証情報のように見えないシークレット そのまま残します

スクラブは GITHUB_TOKEN をそのまま残すため、GitHub Actions のジョブには必要最小限の permissions を付与してください。サンドボックス化された Bash コマンドから GitHub トークンを削除するには、sandbox.credentials の下に deny エントリを追加します。

サブプロセスが削除対象の変数のいずれかを必要とする場合は、スクラブを設定しないでください。

Linux では、スクラブは Bash サブプロセスを分離された PID 名前空間でも実行するため、サブプロセスは /proc を通じてホストのプロセス環境を読み取れません。その副作用として、ps、pgrep、kill はホストのプロセスを参照したり、シグナルを送信したりできません。

v2.1.251 より前のバージョンでは、スクラブは ANTHROPIC_API_KEY と AWS_SECRET_ACCESS_KEY を削除し、表に示したその他の例示の変数は変更せずに残していました。

機能フラグの取得が必要な機能

Claude Code の一部の機能は、Anthropic から取得する機能フラグによってオンになります。次のセッションでは、Claude Code はこの取得をスキップします。

  • DISABLE_GROWTHBOOK、DISABLE_TELEMETRY、DO_NOT_TRACK、または CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC を設定したセッション。どの値で取得がオフになるかは、変数の表の各変数の行に記載されています
  • Amazon Bedrock、Claude Platform on AWS、Google Cloud の Agent Platform、Microsoft Foundry などのサードパーティプロバイダー上のセッション。ただし、Claude Code を組み込んだホストプラットフォームが CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST を設定している場合を除きます
  • Claude apps ゲートウェイのセッション

取得がオフの場合、次のことはできません。

インストールまたはアップグレード後の最初のセッション

Claude Code をインストールした後、または機能が追加されたバージョンにアップグレードした後の最初のセッションでは、フラグで制御される機能が利用できないことがあります。また、そのセッションは、以降のセッションとは異なる権限モードで開始されることもあります。そのセッション中に Claude Code がフラグを取得すると、フラグはマシンに保存されるため、そのマシンでの次のセッションでは機能が利用でき、通常の開始権限モードになります。

新規インストール後、claude -p、Agent SDK、VS Code 拡張機能などの非対話型セッションでは、Claude Code は開始権限モードを選択する前にフラグを取得できることがありますが、必ずしもフラグを待つわけではありません。

次のような構成では、最初以降のセッションも、新たに取得したフラグなしで開始されます。

  • 実行のたびにクリーンな環境になる場合: 各実行が CI コンテナや、以前のセッションが保存したフラグのないその他の環境で開始される場合、すべての実行が最初のセッションになります
  • API キーのないゲートウェイトークンの場合: API キーなしで ANTHROPIC_AUTH_TOKEN を使用して認証し、ANTHROPIC_BASE_URL が LLM ゲートウェイなど Anthropic 以外のホストを指している場合、Claude Code にはフラグを取得するための認証情報がありません

これらの構成でセッションを開始する権限モードを選択するには、別の権限モードで開始するを参照してください。

関連項目