{"version":"2.1.319","anchor":"env-var-claude-code-drop-unavailable-deferred-tool-added-for","canonical_anchor":"env-var-claude-code-drop-unavailable-deferred-tool-added-for","heading":"Setting to drop a paused tool call whose tool is gone on resume","tier":"use","area":"Headless","scope":"individual","heads_up":false,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.319\/e\/env-var-claude-code-drop-unavailable-deferred-tool-added-for","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.319","markdown":"### Setting to drop a paused tool call whose tool is gone on resume\n\nResumed headless sessions now keep a paused tool call whose tool has vanished; CLAUDE_CODE_DROP_UNAVAILABLE_DEFERRED_TOOL=1 drops it instead\n\n**What**\n\nThis applies to headless sessions, meaning Claude Code run without its interactive screen, for example from a script or the SDK. A deferred tool call is one that was paused partway, waiting to finish later. If you resume such a session and the tool the call needs is no longer available, Claude Code now keeps the call and notes in the session that the tool is unavailable.\n\nTo drop the call and carry on instead, set `CLAUDE_CODE_DROP_UNAVAILABLE_DEFERRED_TOOL=1` and resume with a prompt.\n\nThe call is kept only for sessions that are not connected through a remote connection.\n\n**Why**\n\nA paused call is no longer lost silently when its tool disappears. If you would rather move on, the environment variable gives you a way to do so.\n\n- Area: Headless\n- Tier: Use it now\n- Useful: 4\/5\n- Signal: 3\/5\n- Scope: individual\n- Heads-up: no"}