スクリーンリーダーやMCPタイムアウトなど新しい環境変数を使いたい
5. 設定・カスタマイズコマンド / 機能
CLAUDE_AX_SCREEN_READER / CLAUDE_CODE_MCP_TOOL_IDLE_TIMEOUT など近年追加された主要な環境変数一覧
概要
Claude Code には細かい挙動を制御するための環境変数が多数用意されています。ここでは近年追加された代表的なものをまとめます。settings.json の env キーではなく、シェルの環境変数として設定します。
設定例
# スクリーンリーダー向け表示を強制
export CLAUDE_AX_SCREEN_READER=1
# MCPツール呼び出しのアイドルタイムアウト(デフォルト5分)を上書き
export CLAUDE_CODE_MCP_TOOL_IDLE_TIMEOUT=600000
# マウスクリックの処理を無効化
export CLAUDE_CODE_DISABLE_MOUSE_CLICKS=1
# バックグラウンドシェルの自動リーピングを無効化
export CLAUDE_CODE_DISABLE_BG_SHELL_PRESSURE_REAP=1
# クライアントのプレゼンス情報を書き出すファイル
export CLAUDE_CLIENT_PRESENCE_FILE=/tmp/claude-presence
# OpenTelemetryで応答本文/ツール詳細もログに含める
export OTEL_LOG_ASSISTANT_RESPONSES=1
export OTEL_LOG_TOOL_DETAILS=1
export OTEL_RESOURCE_ATTRIBUTES="service.name=claude-code"
# 設定ディレクトリを変更
export CLAUDE_CONFIG_DIR=/custom/path/.claude
# Vertex/Foundryの5分アイドルタイムアウトを無効化
export API_FORCE_IDLE_TIMEOUT=0こんな時に使う
- MCPサーバーの重い処理でデフォルト5分のタイムアウトに引っかかる時
- OpenTelemetryで詳細なログ(応答本文・ツール詳細)を収集したい時
- 設定ディレクトリをホーム以外の場所に変更したい時
- Vertex/Foundry利用時にアイドルタイムアウトで接続が切れて困る時
使い方
- 1シェルの環境変数として export で設定
- 2永続化する場合は ~/.bashrc や ~/.zshrc に追記
- 3CI環境ではワークフロー定義のenvセクションで設定
Tips
- CLAUDE_CODE_MCP_TOOL_IDLE_TIMEOUT はミリ秒単位でMCPツール呼び出しのタイムアウトを指定
- API_FORCE_IDLE_TIMEOUT=0 はVertex/Foundry環境の5分アイドルタイムアウトを無効化する
- モデルエイリアスの解決先を固定する ANTHROPIC_DEFAULT_OPUS_MODEL / ANTHROPIC_DEFAULT_SONNET_MODEL は「モデルエイリアスの解決先を固定したい」を参照
- Bedrock/Vertex/Foundryでは v2.1.207 以降 CLAUDE_CODE_ENABLE_AUTO_MODE のopt-inが不要になった(既定で自動モード利用可能)