Follow Discord
Sweep 22 Oct 2026 · 04:32Z Build v2.1.308 527 read Stable v2.1.308 Latest v2.1.308 Next v2.1.308 Feeds RSS JSON llms.txt llms-full.txt Unofficial

disallowedTools

setting gone JSON

A Claude Code settings key, read out of the shipped bundle. It was in the build from v2.1.301 and was gone by v2.1.302.

Skills turned into slash commands now keep their menu text, aliases and tool permissions.

Not Anthropic's. This is the line from the earliest changelog entry here that named it, v2.1.225.

First seen v2.1.301 15 Oct 2026
Last seen v2.1.301 15 Oct 2026, gone by v2.1.302
Builds1 / 149on this box, as of v2.1.308
Written about v2.1.30 first named in a changelog, 3 Feb 2026
v2.1.301in the build not in the build never minedv2.1.308

In the changelogs

14

Releases whose published page names disallowedTools.

  1. v2.1.305
    Handed-off permission prompts keep your blocked-tool list

    A turn handed off after its permission prompt was left unanswered now carries the session's disallowedTools list, replacing any other

    found in this entry's text, named in this entry

  2. v2.1.285
    Tool restrictions and turn limits now carry over to spawned sessions

    Spawned sessions now keep your disallowedTools and tools restrictions and your maxTurns limit

    found in this entry's text

  3. v2.1.281
    SDK options: disallowedTools parsed; maxThinkingTokens check fixed

    SDK options now read disallowedTools, and the maxThinkingTokens whole-number check now checks the right value

    found in this entry's text, named in this entry

  4. v2.1.281
    Spawned-session config now forwards disallowedTools and takes effort from the right object

    Config for spawned sessions now passes on disallowedTools and reads the effort level from the correct place

    found in this entry's text, named in this entry

  5. v2.1.281
    Remote session create forwards disallowedTools

    Creating a remote session now sends the caller's disallowedTools, combined with the built-in list for device-bound sessions

    found in this entry's text, named in this entry

  6. v2.1.281
    Device-bound cloud sessions now disallow the device_* MCP tools

    Cloud sessions tied to a device now block the device_bash, device_list_dir, device_stage_files and device_commit_files tools

    found in this entry's text

  7. v2.1.281
    disallowedTools forwarded in session spec

    Session launch settings now pass on the list of tools that are not allowed, along with permission mode, effort and model

    found in this entry's text, named in this entry

  8. v2.1.239
    Remote Control workers can be handed MCP config and a system prompt by the daemon, switched off in this build

    Remote Control workers could receive MCP config and prompts from the daemon, but no session does.

    found in this entry's text

  9. v2.1.238
    Skills run as commands no longer pin a model or effort level

    Skills run as slash commands now inherit your session's model and effort instead of overriding them.

    found in this entry's text

  10. v2.1.236
    Deny rules match batched tools by the original tool name

    A disallowedTools rule now also blocks the batched wrapper around that tool.

    named in this entry, found in this entry's text

  11. v2.1.227
    agent() refuses spawns whose tool restrictions cannot be applied

    Spawning a sub-agent fails outright if its disallowed-tools list can't actually be applied.

    named in this entry, found in this entry's text

  12. v2.1.227
    Spawned agents can be clamped to a fixed set of shell commands

    Spawning an agent with a bad command clamp list now fails immediately instead of running unclamped.

    found in this entry's text

  13. v2.1.225
    Skill-backed prompt commands pass through more metadata

    Skills turned into slash commands now keep their menu text, aliases and tool permissions.

    found in this entry's text

  14. v2.1.30
    Enhanced Custom Subagent Schema

    found in this entry's text

First cited

9

The earliest release whose published evidence quoted disallowedTools was v2.1.227, 10 Aug 2026. That is the oldest release this project wrote about it, so it is a floor on the name's age and not the release that introduced it. It is not a presence reading: which builds carried the name is the table below.

ReleaseDateThe span that was quoted
v2.1.22710 Aug 2026agent() opts.disallowedTools unparseable entry
v2.1.23820 Aug 2026disallowedTools: xI(e.disallowedTools ?? []),
v2.1.27517 Sep 2026disallowedTools: mcp__plugin_claude-test_browser__claude_test_allow
v2.1.28123 Sep 2026disallowedTools
v2.1.28123 Sep 2026disallowedTools: e.disallowedTools,
v2.1.28123 Sep 2026disallowedTools: n.disallowedTools,

3 further spans in the ledger name it. The list above is the earliest first and stops at 6.

Presence across releases

2
BuildsHow manyDatesReading
v2.1.3011 build15 Oct 2026 ◆in the build
v2.1.302 – v2.1.3087 builds16 Oct 2026 → 22 Oct 2026 ○not in the build

Build by build

8

One row per release since the first build this name was read out of. Absent means the build was read and the name was not in it, never mined means no bundle for that release was ever archived, and a declared type or a default is only ever what that release's own bundle stated.

BuildDateStateThe record behind it
v2.1.30115 Oct 2026·addedverdict: added
v2.1.30216 Oct 2026·removedverdict: removed
v2.1.30318 Oct 2026·absent—
v2.1.30419 Oct 2026·absent—
v2.1.30520 Oct 2026·absent—
v2.1.30621 Oct 2026·absent—
v2.1.30721 Oct 2026·absent—
v2.1.30822 Oct 2026·absent—

Read out of the published npm bundle release by release, and out of Anthropic's own documentation as this site captured it. Nothing on this page is a description anybody here wrote about what the settings key does. All settings keys.

Feedback