Follow Discord
Sweep 22 Oct 2026 · 04:32Z Build v2.1.308 527 read Stable v2.1.308 Latest v2.1.308 Next v2.1.308 Feeds RSS JSON llms.txt llms-full.txt Unofficial
One family

Environment variables, all 1,448.

Names the client reads out of the environment it was started in, to turn something on, off or somewhere else.

Environment variables1,448seen across 149 builds
In v2.1.3081,274the newest inventory on disk
Gone122in an earlier build, not in the newest
Described182have a line in Anthropic's documentation
No docs line1,266no line in the documentation we hold

Every environment variable, and where it lived

1,448 environment variables One tick per build on this box, oldest on the left. A gap is a build the environment variable was not in.

○ not in v2.1.308, ◇ we found no documentation describing it.

Environment variableWhat it doesSpan v2.1.138 → v2.1.308 Status
GRPC_DEFAULT_SSL_ROOTS_FILE_PATH ◇ Path to a PEM file the bundled @grpc/grpc-js reads once and uses as the default root certificates for secure channels when no roots are passed in. Claude Code's agent proxy also folds certificates from the file it names into the relay CA bundle, and, when its bundle covers every host, sets this variable to the relay bundle path in the environment it builds for subprocesses; its login-shell profile exports it, set-if-absent.v2.1.138 or earlier → v2.1.308 ◆in the build GRPC_EXPERIMENTAL_ENABLE_OUTLIER_DETECTION ◇ Read by the bundled @grpc/grpc-js: the outlier_detection load balancer is registered when the value is true. Unset defaults to true; any other value turns it off.v2.1.138 or earlier → v2.1.308 ◆in the build GRPC_NODE_TRACE ◇ Comma-separated list of tracer names the bundled @grpc/grpc-js logs trace lines for; all enables every tracer and a name prefixed with - disables that tracer. Takes precedence over GRPC_TRACE.v2.1.138 or earlier → v2.1.308 ◆in the build GRPC_NODE_USE_ALTERNATIVE_RESOLVER ◇ When exactly true, the bundled @grpc/grpc-js DNS resolver looks up hosts with its alternative resolver (resolve4 and resolve6, and resolveTxt for TXT records) instead of dns.lookup. Default false.v2.1.138 or earlier → v2.1.308 ◆in the build GRPC_NODE_VERBOSITY ◇ Sets the log level of the bundled gRPC client library: DEBUG, INFO, ERROR or NONE (case-insensitive). It takes precedence over GRPC_VERBOSITY; when neither holds one of those values the level stays ERROR. Log lines go to stderr.v2.1.138 or earlier → v2.1.308 ◆in the build GRPC_SSL_CIPHER_SUITES ◇ Cipher suite string the bundled @grpc/grpc-js passes as ciphers when it creates TLS secure contexts.v2.1.138 or earlier → v2.1.308 ◆in the build GRPC_TRACE ◇ Comma-separated list of tracer names the bundled @grpc/grpc-js logs trace lines for, used when GRPC_NODE_TRACE is unset; all enables every tracer and a name prefixed with - disables that tracer.v2.1.138 or earlier → v2.1.308 ◆in the build GRPC_VERBOSITY ◇ Minimum log level of the bundled @grpc/grpc-js logger, used when GRPC_NODE_VERBOSITY is unset: DEBUG, INFO, ERROR or NONE, case-insensitive. Any other value keeps the default ERROR.v2.1.138 or earlier → v2.1.308 ◆in the build HEX_CACERTS_PATH ◇ SSL certificate error message now lists the specific env var to check per toolv2.1.251 → v2.1.308 ◆in the build HISTFILE ◇ Path of a shell history file. When the pre-gathered recon used for auto-mode setup collects shell history (after the user opted in), an absolute HISTFILE path is one of the history files it reads, alongside files such as ~/.zsh_history and ~/.bash_history; an empty or relative value is ignored. The format is chosen from the file name: fish_history as fish, ConsoleHost_history.txt as PSReadLine, anything else as POSIX.v2.1.208 → v2.1.308 ◆in the build HOME ◇ Remote settings can now supply many more environment variables, including auth tokens and home directory paths.v2.1.138 or earlier → v2.1.308 ◆in the build HOMEDRIVE ◇ More environment variables, including Windows-specific ones, now pass through to Claude Codev2.1.281 → v2.1.308 ◆in the build HOMEPATH ◇ More environment variables, including Windows-specific ones, now pass through to Claude Codev2.1.281 → v2.1.308 ◆in the build HOMESHARE ◇ More Windows environment variables, such as SYSTEMROOT, COMSPEC and PSMODULEPATH, now get special handling when set in settings envv2.1.281 → v2.1.308 ◆in the build HTTP_PROXY ◇ Concurrent sandboxes now get unique proxy usernames instead of sharing one identity.v2.1.138 or earlier → v2.1.308 ◆in the build HTTPLIB2_CA_CERTS ◇ One of the CA bundle variables Claude Code's agent proxy manages. When the proxy is running outside its tool-scoped mode it sets HTTPLIB2_CA_CERTS to the relay CA bundle path in the environment it builds for subprocesses, and its login-shell profile exports it, set-if-absent; an existing value naming a readable file of at most 1 MiB has its certificates folded into the relay bundle.v2.1.251 → v2.1.308 ◆in the build HTTPS_PROXY ◇ If a connection fails through your proxy, the error now names the proxy environment variable to check.v2.1.138 or earlier → v2.1.308 ◆in the build HUB_CONFIG ◇ No description from anybody.v2.1.267 → v2.1.308 ◆in the build INK_SCREEN_READER ◇ Screen-reader mode repaints less, so assistive tech hears less redundant output.v2.1.181 → v2.1.308 ◆in the build INTELLIJ_TERMINAL_COMMAND_BLOCKS ◇ When either INTELLIJ_TERMINAL_COMMAND_BLOCKS or INTELLIJ_TERMINAL_COMMAND_BLOCKS_REWORKED is set to any value and Claude Code detects a JetBrains JediTerm terminal, it applies its wheel correction from the start: a wheelup that follows a wheeldown within 250 ms, in a run of wheel events with no gap over 200 ms, is rewritten into a wheeldown. Without either variable the correction starts only once plain arrow-key events arrive within 75 ms of a wheel event in the session.v2.1.138 or earlier → v2.1.308 ◆in the build INTELLIJ_TERMINAL_COMMAND_BLOCKS_REWORKED ◇ When either INTELLIJ_TERMINAL_COMMAND_BLOCKS or INTELLIJ_TERMINAL_COMMAND_BLOCKS_REWORKED is set to any value and Claude Code detects a JetBrains JediTerm terminal, it applies its wheel correction from the start: a wheelup that follows a wheeldown within 250 ms, in a run of wheel events with no gap over 200 ms, is rewritten into a wheeldown. Without either variable the correction starts only once plain arrow-key events arrive within 75 ms of a wheel event in the session.v2.1.138 or earlier → v2.1.308 ◆in the build IS_DEMO ◇ Demo mode now also settles focus requests when CLAUBBIT is setv2.1.138 or earlier → v2.1.308 ◆in the build IS_SANDBOX ◇ Docker, bubblewrap and root-outside-sandbox checks share one cached prober that answers false until ready.v2.1.138 or earlier → v2.1.308 ◆in the build ITERM_SESSION_ID ◇ No description from anybody.v2.1.138 or earlier → v2.1.308 ◆in the build JAVA_HOME ◇ Git environment hardening now sorts toolchain variables like JAVA_HOME as folders and UV_PYTHON as filesv2.1.186 → v2.1.308 ◆in the build JAVA_TOOL_OPTIONS ◇ Sandboxed Java processes now automatically route through the sandbox's proxy via an injected agent jar.v2.1.186 → v2.1.308 ◆in the build K_CONFIGURATION ◇ No description from anybody.v2.1.138 or earlier → v2.1.308 ◆in the build K_SERVICE ◇ No description from anybody.v2.1.138 or earlier → v2.1.308 ◆in the build KITTY_WINDOW_ID ◇ No description from anybody.v2.1.138 or earlier → v2.1.308 ◆in the build KONSOLE_VERSION ◇ No description from anybody.v2.1.138 or earlier → v2.1.308 ◆in the build KUBECONFIG ◇ Plugin file reads stay inside the project and cannot touch credential folders.v2.1.242 → v2.1.263 ○gone KUBERNETES_SERVICE_HOST ◇ No description from anybody.v2.1.138 or earlier → v2.1.308 ◆in the build LANG ◇ No description from anybody.v2.1.138 or earlier → v2.1.308 ◆in the build LC_ALL ◇ Inline admin policy scripts run with a stripped environment and a PowerShell resolved from fixed paths only.v2.1.138 or earlier → v2.1.308 ◆in the build LC_TERMINAL ◇ No description from anybody.v2.1.138 or earlier → v2.1.308 ◆in the build LC_TIME ◇ Input to the locale used to format dates and times shown in the UI: Claude Code takes the first non-empty of LC_ALL, LC_TIME and LANG, drops any .encoding and @modifier suffix and turns _ into - (so en_GB.UTF-8 becomes en-GB), and uses the result if Intl.DateTimeFormat accepts it. If that first value is C or POSIX, or is not accepted, no locale is passed.v2.1.138 or earlier → v2.1.308 ◆in the build LOCAL_BRIDGE ◇ Boolean (1, true, yes or on). When it or USE_LOCAL_OAUTH is true, the Claude in Chrome browser bridge connects to ws://localhost:8765 instead of wss://bridge.claudeusercontent.com (or the staging bridge under USE_STAGING_OAUTH), and the bridge client is given devUserId: "dev_user_local".v2.1.138 or earlier → v2.1.308 ◆in the build LOCALAPPDATA ◇ On Windows, the Credentials, Vault and Protect folders are now protected paths that cannot be readv2.1.138 or earlier → v2.1.308 ◆in the build MAX_MCP_OUTPUT_TOKENS ◇ Nonsense values in retry, MCP output and hook timeout env vars now fall back to defaults.v2.1.138 or earlier → v2.1.308 ◆in the build MAX_STRUCTURED_OUTPUT_RETRIES ◇ The first error of a failed run is now handled distinctly from later ones.v2.1.138 or earlier → v2.1.308 ◆in the build MAX_THINKING_TOKENS ◇ You now get told when an effort level needs thinking on, and what turned thinking off.v2.1.138 or earlier → v2.1.308 ◆in the build MCP_CLIENT_SECRET ◇ OAuth client secret for an MCP server, used instead of prompting. When the client secret is requested and MCP_CLIENT_SECRET is non-empty, its value is used; otherwise Claude Code prompts Enter OAuth client secret: on stderr, and with no TTY it fails with No TTY available to prompt for client secret. Set MCP_CLIENT_SECRET env var instead.v2.1.138 or earlier → v2.1.308 ◆in the build MCP_CONNECT_TIMEOUT_MS ◇ Very large MCP_TIMEOUT values are capped instead of overflowing and timing out instantly.v2.1.138 or earlier → v2.1.308 ◆in the build MCP_CONNECTION_NONBLOCKING ◇ Five more environment variables, including stream and byte watchdogs, can be set in settings.json.v2.1.138 or earlier → v2.1.308 ◆in the build MCP_DISCOVERY_CACHE ◇ Startup no longer dials cached HTTP or SSE MCP servers; they restore from cache and connect on first use.v2.1.217 → v2.1.308 ◆in the build MCP_DISCOVERY_CACHE_MAX_STALE_S ◇ Cached MCP server discovery is dropped after repeated connection failures instead of only on age.v2.1.217 → v2.1.308 ◆in the build MCP_DISCOVERY_CACHE_STRIKES ◇ Cached MCP server discovery is dropped after repeated connection failures instead of only on age.v2.1.238 → v2.1.308 ◆in the build MCP_DISCOVERY_CACHE_TTL_S ◇ Cached MCP server discovery is dropped after repeated connection failures instead of only on age.v2.1.217 → v2.1.308 ◆in the build MCP_OAUTH_CALLBACK_PORT ◇ About 220 environment variables now parse and validate in one place, including bounds checks.v2.1.138 or earlier → v2.1.308 ◆in the build MCP_OAUTH_CLIENT_METADATA_URL ◇ MCP OAuth stops sending a client id that only works for loopback, and repairs saved entries.v2.1.138 or earlier → v2.1.308 ◆in the build MCP_PROTOCOL_NEGOTIATION ◇ A newer MCP protocol handshake exists per transport but every gate falls back to legacy here.v2.1.221 → v2.1.308 ◆in the build MCP_REMOTE_SERVER_CONNECTION_BATCH_SIZE ◇ Two new env vars set how many MCP servers connect at once, local and remote.v2.1.138 or earlier → v2.1.308 ◆in the build MCP_SDK_GENERATION ◇ MCP SDK generation gate tengu_brindle_causeway now defaults to on, favoring MCP SDK generation v2 when not set explicitlyv2.1.218 → v2.1.308 ◆in the build MCP_SERVER_CONNECTION_BATCH_SIZE ◇ MCP servers now connect three at a time; set MCP_SERVER_CONNECTION_BATCH_SIZE to change it.v2.1.138 or earlier → v2.1.308 ◆in the build MCP_TIMEOUT ◇ Very large MCP_TIMEOUT values are capped instead of overflowing and timing out instantly.v2.1.138 or earlier → v2.1.308 ◆in the build MCP_TOOL_TIMEOUT ◇ Two new env vars set how many MCP servers connect at once, local and remote.v2.1.138 or earlier → v2.1.308 ◆in the build MCP_TRUNCATION_PROMPT_OVERRIDE ◇ Chooses the instructions attached when an MCP tool result is too large and is saved to a file. legacy gives the short text (Use offset and limit parameters to read specific portions of the file...), any other non-empty value gives the longer jq/grep guidance, and unset or empty defers to the tengu_mcp_subagent_prompt flag (default false). Whenever the longer guidance is chosen, a result consisting of a single plain text block is also saved as that text; otherwise that unwrap follows the tengu_mcp_singleton_unwrap flag (default true).v2.1.138 or earlier → v2.1.308 ◆in the build MCP_XAA_IDP_CLIENT_SECRET ◇ Client secret for the XAA identity provider, read by claude mcp xaa setup only when --client-secret is passed: after writing the issuer and client id to user settings, the command saves the secret to secure storage (the keychain) under the --issuer URL. Passing --client-secret without this variable set fails with Error: --client-secret requires MCP_XAA_IDP_CLIENT_SECRET env var.v2.1.138 or earlier → v2.1.308 ◆in the build METADATA_SERVER_DETECTION ◇ Controls how the bundled Google gcp-metadata library decides whether a GCE metadata server is available. The trimmed, lowercased value must be assume-present (treat it as present without a ping), none (treat it as absent), bios-only (use only the BIOS probe) or ping-only (skip straight to pinging); any other non-empty value throws a RangeError, and unset uses the default ping.v2.1.138 or earlier → v2.1.308 ◆in the build MORERIGHT_TEST ◇ No description from anybody.v2.1.160 → v2.1.193 ○gone MSYSTEM ◇ Claude Code checks once whether git is a launcher for another program and can run the real git directlyv2.1.138 or earlier → v2.1.308 ◆in the build NETLIFY ◇ When 1, true, yes or on, Claude Code's deployment-environment detection reports netlify, unless an earlier platform check in its list matched first.v2.1.138 or earlier → v2.1.308 ◆in the build NIX_SSL_CERT_FILE ◇ SSL certificate error message now lists the specific env var to check per toolv2.1.251 → v2.1.308 ◆in the build NO_COLOR ◇ Small polish: credit labels, an extra help link, bigger artifact fetch limit, safer MCP environment handling.v2.1.138 or earlier → v2.1.308 ◆in the build NO_PROXY ◇ The self-hosted runner can generate a fresh proxy auth token for every outbound connection.v2.1.138 or earlier → v2.1.308 ◆in the build NODE_DEBUG ◇ Read by bundled libraries: the semver library prints debug lines prefixed SEMVER to stderr when NODE_DEBUG contains the word semver, and graceful-fs logs its GFS4 debug lines (through Node's util.debuglog) when it contains gfs4, also checking at exit that its retry queue is empty. The Google logging utility's debug-package backend writes to NODE_DEBUG, appending its log filters to the existing value.v2.1.138 or earlier → v2.1.308 ◆in the build NODE_ENV ◇ Claude Code now keeps a list of the environment variables that affect telemetry and feature flagsv2.1.160 → v2.1.245 ○gone NODE_EXTRA_CA_CERTS ◇ Session reset and model fallback use named stores, and cert env vars go through one accessor.v2.1.138 or earlier → v2.1.308 ◆in the build NODE_OPTIONS ◇ Remotely managed settings can no longer redirect your bridge connection by setting that URL variable.v2.1.138 or earlier → v2.1.308 ◆in the build NODE_PATH ◇ No description from anybody.v2.1.290 → v2.1.308 ◆in the build NPM_CONFIG_GLOBALCONFIG ◇ No description from anybody.v2.1.242 → v2.1.263 ○gone NPM_CONFIG_USERCONFIG ◇ Plugin file reads stay inside the project and cannot touch credential folders.v2.1.242 → v2.1.263 ○gone OSTYPE ◇ When cygwin or msys, the bundled which executable lookup uses Windows rules: ; as the PATH separator, the current directory searched first, and extensions from PATHEXT (default .EXE;.CMD;.BAT;.COM) tried on each name.v2.1.138 or earlier → v2.1.308 ◆in the build OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT ◇ Claude Code caps the content it records in telemetry (prompts, system prompts, model output, tool inputs and results) at the smallest of this, OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT, OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT and CLAUDE_CODE_OTEL_CONTENT_MAX_LENGTH (default 61440), cutting longer content and appending a [TRUNCATED - Content exceeds ... limit] marker. The bundled OTel SDK reads it only as a fallback for the log record and span attribute limits, which its own defaults always fill (unlimited when their variables are unset), so it does not limit SDK attributes.v2.1.213 → v2.1.308 ◆in the build OTEL_EXPORTER_OTLP_ENDPOINT ◇ Base URL for OTLP telemetry exports. When no signal-specific OTEL_EXPORTER_OTLP_<SIGNAL>_ENDPOINT is set, the HTTP exporters send to this URL with /v1/metrics, /v1/logs or /v1/traces appended, and the gRPC exporter uses it as given. Claude Code also reads it to pick the exporter's proxy and TLS agent options and in its gateway telemetry routing checks, and its gateway's managed settings set it to listen.public_url when telemetry.forward_to is configured.v2.1.138 or earlier → v2.1.308 ◆in the build OTEL_EXPORTER_OTLP_HEADERS ◇ Telemetry exporters can now ignore OTEL_EXPORTER_OTLP_HEADERS and use only the headers given in configurationv2.1.138 or earlier → v2.1.308 ◆in the build OTEL_EXPORTER_OTLP_INSECURE ◇ Used by the OTLP gRPC exporter when the endpoint starts with neither http:// nor https://: true (case-insensitive, trimmed) uses insecure credentials, any other value uses TLS credentials. A non-empty signal-specific OTEL_EXPORTER_OTLP_<SIGNAL>_INSECURE takes precedence; http:// endpoints are always insecure and https:// endpoints always use TLS.v2.1.138 or earlier → v2.1.308 ◆in the build OTEL_EXPORTER_OTLP_LOGS_ENDPOINT ◇ URL for OTLP log exports, used as given without a /v1/logs suffix and taking precedence over OTEL_EXPORTER_OTLP_ENDPOINT. Claude Code also reads it to pick the log exporter's proxy and TLS agent options and when matching the endpoint against a collector named by gateway managed settings.v2.1.160 → v2.1.308 ◆in the build OTEL_EXPORTER_OTLP_LOGS_HEADERS ◇ Comma-separated key=value headers for OTLP log exports; the bundled exporters merge it over OTEL_EXPORTER_OTLP_HEADERS, its values winning on a clash. While it is set, Claude Code skips some of its built-in routes that attach its own Authorization: Bearer token to log exports.v2.1.229 → v2.1.308 ◆in the build OTEL_EXPORTER_OTLP_LOGS_PROTOCOL ◇ Protocol for the OTLP log exporter when OTEL_LOGS_EXPORTER includes otlp: grpc, http/json or http/protobuf. Unset or empty falls back to OTEL_EXPORTER_OTLP_PROTOCOL; any other value throws Unknown protocol set in OTEL_EXPORTER_OTLP_LOGS_PROTOCOL or OTEL_EXPORTER_OTLP_PROTOCOL env var.v2.1.138 or earlier → v2.1.308 ◆in the build OTEL_EXPORTER_OTLP_METRICS_ENDPOINT ◇ In remote sessions, usage metrics can now go to the session's own metrics address, signed with CLAUDE_CODE_SESSION_ACCESS_TOKENv2.1.160 → v2.1.308 ◆in the build OTEL_EXPORTER_OTLP_METRICS_HEADERS ◇ Comma-separated key=value headers for OTLP metric exports; the bundled exporters merge it over OTEL_EXPORTER_OTLP_HEADERS, its values winning on a clash. While it is set, Claude Code skips some of its built-in routes that attach its own Authorization: Bearer token to metric exports, including the remote session ingress collector.v2.1.229 → v2.1.308 ◆in the build OTEL_EXPORTER_OTLP_METRICS_PROTOCOL ◇ When metrics are sent over OpenTelemetry by gRPC or HTTP protobuf, Claude Code now prepares an extra resource before creating the exporterv2.1.138 or earlier → v2.1.308 ◆in the build OTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE ◇ Set OTEL_METRICS_EXPORTER=prometheus and child sessions report through the runner, giving one scrape target per machine.v2.1.138 or earlier → v2.1.308 ◆in the build OTEL_EXPORTER_OTLP_PROTOCOL ◇ OTLP transport for Claude Code's telemetry exporters (metrics, logs and traces) when the signal-specific OTEL_EXPORTER_OTLP_<SIGNAL>_PROTOCOL variable is empty. Accepted values are grpc, http/json and http/protobuf; any other value, including leaving both unset, makes exporter setup throw Unknown protocol set in ... env var, and for traces one code path forces http/protobuf regardless. The claude gateway server also sets it to http/protobuf in the environment it pushes to clients through managed settings when telemetry.forward_to and listen.public_url are configured.v2.1.138 or earlier → v2.1.308 ◆in the build OTEL_EXPORTER_OTLP_TRACES_ENDPOINT ◇ OpenTelemetry trace exports now report each export's result through a callback, except when traces go to the startup gatewayv2.1.160 → v2.1.308 ◆in the build OTEL_EXPORTER_OTLP_TRACES_HEADERS ◇ Comma-separated key=value headers for OTLP trace exports; the bundled exporters merge it over OTEL_EXPORTER_OTLP_HEADERS, its values winning on a clash, and send them as HTTP headers or gRPC metadata. While it is set, Claude Code skips some of its built-in routes that attach its own Authorization: Bearer token to trace exports.v2.1.229 → v2.1.308 ◆in the build OTEL_EXPORTER_OTLP_TRACES_PROTOCOL ◇ You can now set standard OpenTelemetry compression and per-signal protocol variables and have them respected.v2.1.138 or earlier → v2.1.308 ◆in the build OTEL_EXPORTER_PROMETHEUS_HOST ◇ Host the bundled OpenTelemetry Prometheus exporter's metrics server binds to when OTEL_METRICS_EXPORTER includes prometheus. Unset or empty leaves the host unspecified, so the server uses its default listen address.v2.1.138 or earlier → v2.1.308 ◆in the build OTEL_EXPORTER_PROMETHEUS_PORT ◇ Port of the bundled OpenTelemetry Prometheus exporter's metrics server (served at /metrics) when OTEL_METRICS_EXPORTER includes prometheus. Default 9464; an unset, non-numeric or 0 value uses the default.v2.1.138 or earlier → v2.1.308 ◆in the build OTEL_LOG_ASSISTANT_RESPONSES ◇ Controls whether the OpenTelemetry assistant_response event carries the text of Claude's reply. True (1, true, yes, on) puts the joined text blocks in the response attribute; false (0, false, no, off) sends <REDACTED>. Unset or any other value follows OTEL_LOG_USER_PROMPTS. The event always carries response_length.v2.1.193 → v2.1.308 ◆in the build OTEL_LOG_MANAGED_SETTINGS ◇ Managed settings resolution is now reported to telemetry, with sensitive values redactedv2.1.274 → v2.1.308 ◆in the build OTEL_LOG_RAW_API_BODIES ◇ Changing the raw-API-body telemetry variable now takes effect instead of being frozen at startup.v2.1.138 or earlier → v2.1.308 ◆in the build OTEL_LOG_TOOL_CONTENT ◇ Project settings files can no longer set OpenTelemetry exporter endpoints, headers, certificates or telemetry opt-insv2.1.138 or earlier → v2.1.308 ◆in the build OTEL_LOG_TOOL_DETAILS ◇ Boolean; only 1, true, yes or on turn it on. When on, Claude Code's telemetry carries tool details it otherwise leaves out, such as file paths and full Bash commands on tool events, skill and subagent names, error text, and command names that are otherwise reported as custom.v2.1.138 or earlier → v2.1.308 ◆in the build OTEL_LOG_USER_PROMPTS ◇ Remote-session telemetry now redacts prompts, model names and agent ids when sending traces off-boxv2.1.138 or earlier → v2.1.308 ◆in the build OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT ◇ Maximum length of log record attribute values in the bundled OpenTelemetry logs SDK; unset means no limit. Claude Code also uses the smallest of this, OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT, OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT and CLAUDE_CODE_OTEL_CONTENT_MAX_LENGTH (default 61440) as the character cap on the content it records in telemetry, such as prompts, system prompts, model output and tool inputs and results, cutting longer content and appending a [TRUNCATED - Content exceeds ... limit] note.v2.1.213 → v2.1.308 ◆in the build OTEL_LOGS_EXPORT_INTERVAL ◇ Milliseconds between batched exports for the OpenTelemetry log exporters set by OTEL_LOGS_EXPORTER; default 5000 when unset. Claude Code's first-party event logging also uses it as its batch delay when its remote config gives no scheduledDelayMillis, with a default of 10000 there.v2.1.138 or earlier → v2.1.308 ◆in the build OTEL_LOGS_EXPORTER ◇ Telemetry export can now send metrics, logs, and traces to different destinations instead of forcing all three to OTLPv2.1.138 or earlier → v2.1.308 ◆in the build OTEL_METRIC_EXPORT_INTERVAL ◇ Milliseconds between metric exports for the periodic metric readers Claude Code builds for the console and otlp exporters in OTEL_METRICS_EXPORTER. Default 60000 when unset.v2.1.138 or earlier → v2.1.308 ◆in the build
Feedback