CLAUDE_CODE_SUBPROCESS_ENV_SCRUB
Updated by Alex Sorokoletov
CLAUDE_CODE_SUBPROCESS_ENV_SCRUB is a Claude Code environment variable: When set to 1, strips Anthropic and cloud provider credentials from subprocess environments — the Bash tool, hooks, and MCP stdio servers. The changelog confirms this as an official env var. Added between v2.1.77 and v2.1.79 and still present in v2.1.294. It is listed in the official reference.
| Status | Present in v2.1.294 |
|---|---|
| Added | Added between v2.1.77 and v2.1.79 |
| Category | Permissions and sandbox |
| Official docs | Listed |
How to set it
For one session, export it in the shell that starts Claude Code:
export CLAUDE_CODE_SUBPROCESS_ENV_SCRUB=<value>
claudeTo apply it to every session, add it to the env object of a settings file:
// ~/.claude/settings.json
{
"env": {
"CLAUDE_CODE_SUBPROCESS_ENV_SCRUB": "<value>"
}
}Release notes that mention it
- Claude Code v2.1.100 — 3 New Environment Variables: Context Token Limits, Perforce VCS, and Script Capability Controls
- Claude Code v2.1.83 — 8 New Environment Variables: Security Hardening and the 40-Fix Mega Release
- Claude Code v2.1.79 — 3 New Environment Variables: Subprocess Sandboxing and Startup Optimization
- Claude Code Version Tracker: Undocumented Env Vars, Feature Gates & Models
Related variables
CLAUDE_CHROME_PERMISSION_MODE: Permission mode for Claude for Chrome.CLAUDE_CODE_AUTO_MODE_CLASSIFY_EDITS: Turns the classification pass on: every edit runs through the classifier before it touches disk.CLAUDE_CODE_AUTO_MODE_EDIT_REMOVAL: Governs whether Auto mode may delete content as part of an edit.CLAUDE_CODE_AUTO_MODE_EDIT_REMOVAL_CAP: Caps how much a single autonomous edit can remove before it's held for a human.CLAUDE_CODE_AUTO_MODE_EXTERNAL_PERMISSIONS: Hands permission decisions to an external policy engine instead of the built-in prompt.CLAUDE_CODE_AUTO_MODE_GIT_STATUS: Feeds the working tree's git status into the classifier's context.CLAUDE_CODE_AUTO_MODE_GIT_STATUS_LIMIT: Bounds how much of that status is included, so the classifier prompt doesn't balloon in large or messy repos.CLAUDE_CODE_AUTO_MODE_GIT_STATUS_UPLOADS: Controls whether git-status context is uploaded to the classification service.
Frequently asked questions
What does CLAUDE_CODE_SUBPROCESS_ENV_SCRUB do?
When set to 1, strips Anthropic and cloud provider credentials from subprocess environments — the Bash tool, hooks, and MCP stdio servers. The changelog confirms this as an official env var.
Which Claude Code version has CLAUDE_CODE_SUBPROCESS_ENV_SCRUB?
Added between v2.1.77 and v2.1.79 and still present in v2.1.294.
How do I set CLAUDE_CODE_SUBPROCESS_ENV_SCRUB?
Export it before starting Claude Code (export CLAUDE_CODE_SUBPROCESS_ENV_SCRUB=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.