Skip to main content
環境変数は、モデル選択、認証、リクエストルーティング、機能トグルなど、Claude Code の動作を制御できます。同じ動作の多くは、設定ファイル フィールド、CLI フラグ、または /model などのセッション内コマンドを通じても設定できます。 このページでは、以下の方法について説明します:

環境変数を設定する

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

シェルで設定する

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

設定ファイルで設定する

settings.json ファイルの env キーの下に変数を追加します。Claude Code はスタートアップ時にファイルから直接読み込むため、claude がどのように起動されたかに関係なく有効になります。
~/.claude/settings.json
選択したファイルは、変数が適用される対象を制御します: 各ファイルの場所については 設定ファイル を、複数のファイルが同じ変数を設定する場合の組み合わせ方については 設定の優先順位 を参照してください。

優先順位

同じ動作に環境変数と設定フィールドの両方がある場合、環境変数が優先されます。たとえば、ANTHROPIC_MODELmodel 設定をオーバーライドし、CLAUDE_CODE_AUTO_CONNECT_IDEautoConnectIde をオーバーライドします。環境変数が設定されていない場合、設定フィールドが適用されます。 シェルと設定ファイルの env ブロックの両方で同じ変数が設定されている場合、設定ファイルの値が適用されます。Claude Code は起動時に各 env エントリをプロセス環境に書き込み、シェルから継承された値を置き換えます。いくつかの変数は特別な扱いを受けます。env 設定 に例外が記載されています。 設定ファイル間では、env 値は 設定の優先順位 に従うため、マネージド設定エントリはユーザーまたはプロジェクト設定の同じ変数をオーバーライドします。 環境変数が CLI フラグおよびセッション内コマンドとどのように相互作用するかは機能によって異なります:--model/modelANTHROPIC_MODEL をオーバーライドしますが、CLAUDE_CODE_EFFORT_LEVEL/effort をオーバーライドします。変数が別の設定ソースと相互作用する場合、変数 リストの行は優先順位を示すか、それを文書化するページにリンクします。 Claude Code は起動時に環境変数を読み取るため、変更は claude を次に起動するときに有効になります。

変数

標準 OpenTelemetry エクスポーター変数(OTEL_METRICS_EXPORTEROTEL_LOGS_EXPORTEROTEL_EXPORTER_OTLP_ENDPOINTOTEL_EXPORTER_OTLP_PROTOCOLOTEL_EXPORTER_OTLP_HEADERSOTEL_METRIC_EXPORT_INTERVALOTEL_RESOURCE_ATTRIBUTES、およびシグナル固有のバリアント)もサポートされています。設定の詳細は 監視 を参照してください。

関連項目