CLAUDE_CODE_DISABLE_EMPTY_CLASSIC_DISPATCH_SKIP

Updated by

CLAUDE_CODE_DISABLE_EMPTY_CLASSIC_DISPATCH_SKIP is a Claude Code environment variable: When set, prevents skipping a classic hook dispatch even when all its registered handlers satisfy the skip check, so the dispatch always runs. Added in v2.1.311 and still present in v2.1.315. It is not in the official reference.

StatusPresent in v2.1.315
AddedAdded in v2.1.311
CategoryFeature toggles
Official docsNot listed

How to set it

For one session, export it in the shell that starts Claude Code:

export CLAUDE_CODE_DISABLE_EMPTY_CLASSIC_DISPATCH_SKIP=<value>
claude

To apply it to every session, add it to the env object of a settings file:

// ~/.claude/settings.json
{
  "env": {
    "CLAUDE_CODE_DISABLE_EMPTY_CLASSIC_DISPATCH_SKIP": "<value>"
  }
}

Related variables

Frequently asked questions

What does CLAUDE_CODE_DISABLE_EMPTY_CLASSIC_DISPATCH_SKIP do?

When set, prevents skipping a classic hook dispatch even when all its registered handlers satisfy the skip check, so the dispatch always runs.

Which Claude Code version has CLAUDE_CODE_DISABLE_EMPTY_CLASSIC_DISPATCH_SKIP?

Added in v2.1.311 and still present in v2.1.315.

How do I set CLAUDE_CODE_DISABLE_EMPTY_CLASSIC_DISPATCH_SKIP?

Export it before starting Claude Code (export CLAUDE_CODE_DISABLE_EMPTY_CLASSIC_DISPATCH_SKIP=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.