A headless run is one where Claude Code works without an interactive screen, for example when started with claude -p from a script. Auto mode is a permission mode where Claude Code checks each action automatically instead of asking you.
At the end of a headless run that did not already fail, Claude Code now checks whether auto mode was unable to check some of the actions Claude tried. If so, it prints this error to stderr (the error output stream) and exits with code 1:
"Error: auto mode could not check some actions Claude tried, so they did not run. To run them, use another permission mode. Exiting with code 1."
Runs that use stream-json output are not affected. Previously the exit code came from the usual rules, or was 0, and these skipped actions were not checked. The new check is controlled by a server-side switch whose built-in default is on.
Scripts that run claude -p in auto mode may now see exit code 1 where they used to see 0. This tells a script that some of the work did not happen, instead of reporting success.
tengu_truthful_wren Not enough to sayNothing here resolved what this flag was doing on this version, so nothing here should be read as on or off.
This account: no value returned · anonymous baseline: no value returned · compiled default in v2.1.319: on
These values were read against a different version of Claude Code, so treat them as the nearest reading available instead of one taken on this release.
Read once, for one account on one subscription tier, against v2.1.319. It isn't a statement about your account. What a flag value here can and cannot tell you
New in this build: tengu_truthful_wren