CLAUDE_CODE_VERSION
Updated by Alex Sorokoletov
CLAUDE_CODE_VERSION is a Claude Code environment variable: Exposes the CLI version to subprocesses, hooks, and MCP servers. Your hooks and MCP tools can now read CLAUDE_CODE_VERSION directly — gate behavior on minimum version, log it for observability, or refuse to run on an incompatible version. Added between v2.1.128 and v2.1.138 and still present in v2.1.294. It is not in the official reference.
| Status | Present in v2.1.294 |
|---|---|
| Added | Added between v2.1.128 and v2.1.138 |
| Category | Other |
| Official docs | Not listed |
How to set it
For one session, export it in the shell that starts Claude Code:
export CLAUDE_CODE_VERSION=<value>
claudeTo apply it to every session, add it to the env object of a settings file:
// ~/.claude/settings.json
{
"env": {
"CLAUDE_CODE_VERSION": "<value>"
}
}Release notes that mention it
Related variables
CLAUDE_CODE_ENVIRONMENT_RUNNER_VERSION: Environment runner version.CLAUDE_CODE_DESKTOP_APP_VERSIONCLAUDE_SSH_VERSIONANTHROPIC_BETAS: Comma-separated beta feature headers.ANTHROPIC_CUSTOM_HEADERS: Custom HTTP headers (newline-separated Key: Value).ANTHROPIC_FEDERATION_RULE_IDANTHROPIC_ORGANIZATION_IDANTHROPIC_WORKSPACE_ID
Frequently asked questions
What does CLAUDE_CODE_VERSION do?
Exposes the CLI version to subprocesses, hooks, and MCP servers. Your hooks and MCP tools can now read CLAUDE_CODE_VERSION directly — gate behavior on minimum version, log it for observability, or refuse to run on an incompatible version.
Which Claude Code version has CLAUDE_CODE_VERSION?
Added between v2.1.128 and v2.1.138 and still present in v2.1.294.
How do I set CLAUDE_CODE_VERSION?
Export it before starting Claude Code (export CLAUDE_CODE_VERSION=value), or add it to the "env" object in ~/.claude/settings.json to apply it to every session.
All variables, searchable: Claude Code environment variables.