{"version":"2.1.305","anchor":"headless-client-supplied-disallowed-tools-can-persist-acros","canonical_anchor":"headless-client-supplied-disallowed-tools-can-persist-acros","heading":"Headless runs can keep a tool block list across turns","tier":"use","area":"Headless Mode","scope":"individual","heads_up":false,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.305\/e\/headless-client-supplied-disallowed-tools-can-persist-acros","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.305","markdown":"### Headless runs can keep a tool block list across turns\n\nIn headless runs, a list of tools the client blocks can now be kept and reused across turns instead of being read fresh every turn\n\n**Unclear.** It is not clear whether the block list now carries over to later turns by default or only when `keepsDisallowedTools` is set.\n\n**What**\n\nHeadless mode runs Claude Code without its interactive screen, for example from a script or through the SDK. A program driving it can send a list of tools Claude may not use.\n\nClaude Code now remembers that list for each turn, and a `keepsDisallowedTools` option reuses it on later turns. Block rules are now judged one tool at a time against the tools held for the session. If that judging fails, Claude Code falls back to filtering the list in a simpler way. The set of tools the client declared is also now fixed the first time it is seen.\n\n**Why**\n\nIf you drive Claude Code from code, the way your block list applies across turns may now differ from before.\n\n- Area: Headless Mode\n- Tier: Use it now\n- Useful: 3\/5\n- Signal: 2\/5\n- Scope: individual\n- Heads-up: no"}