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

Claude Code v2.1.283 ·

Hooks modules only receive the commands and tool calls they match

Plugin hooks modules for command.run now receive only the commands in their runCommands list, and tool.call modules can be skipped on the host

Group of 3 You'll notice Internal Changes
JSON All of v2.1.283
You'll noticeTier: how much it should matter to you
2Useful: my rating, 1 to 5
2Signal: worth watching, 1 to 5
ModsArea: what it touches
Internal ChangesKind: in v2.1.283,
ImprovementsSection of the release

Unclear Which module this is and what it does when one of those commands runs is not confirmed.

What

Plugins can ship hooks modules: code that runs when certain events happen in Claude Code. command.run is the event for running a slash command, and tool.call is the event for Claude using a tool. Claude Code now checks before handing an event to a module whether that module wants it.

  • command.run: a module's registration now records a runCommands list. A command goes to the module only if the module has a command.run hook and either lists no commands or lists that one. Before, every slash command went to it. runCommands also now appears in module analysis output.
  • A built-in module, the one that reads CLAUDE_CODE_DISABLE_FILE_CHECKPOINTING, now declares runCommands: ["clear", "diff", "resume"]. Its hook now fires only for /clear, /diff and /resume.
  • tool.call: the event now declares pinnedKeys. When a module's matcher rejects an event on a pinned key, Claude Code skips that module in the main process instead of sending the event to it. If the matcher fails with an error there, Claude Code logs "matcher threw on the host ...; the hop decides" and lets the module decide.

Why

Modules no longer receive every slash command or every tool call when they only care about some. This avoids an extra round trip to the module for events it would ignore anyway. Plugin authors can rely on a command.run hook seeing only the commands it lists.

Read from
Names in the bundle/clear/diff/resume
Since it was published

The entry above is what we published on the day. These lines were added later, as Anthropic's own pages caught up, and they sit beside the original rather than replacing it.

Added since A small documentation edit on Create custom subagents touched a line naming /clear after this was published. `SendMessage` checks that a name still refers to the same agent it reached earlier in the conversation. If a newer agent has taken the name, such as a re-spawned background agent that reused it, Claude Code refuses the send rather than del… sub-agents see the edit
Added since A small documentation edit on Fullscreen rendering touched a line naming /diff after this was published. In fullscreen rendering, [`/diff`](/docs/en/interactive-mode#review-changes-with-%2Fdiff) opens a panel beside the conversation, so you can watch the changes accumulate while Claude works. [Diff panel](/docs/en/interactive-mode#diff-panel)… fullscreen see the edit
Added since A small documentation edit on Manage sessions touched a line naming /resume after this was published. Once you name a session through a CLI route or from claude.ai, return to it with `claude --resume <name>` or `/resume <name>`; a desktop-app session resumes in the [desktop app](/docs/en/desktop#work-in-parallel-with-sessions). See [Resume… sessions see the edit
Confirmed since Anthropic's documentation has since written up /diff, on Customize keyboard shortcuts. | `app:toggleReplTab` | (unbound) | Open or close the diff panel, the same as running `/diff` | keybindings see the edit
Confirmed since Anthropic's documentation has since written up /resume, on Desktop application. | `--resume`, `--continue` | Click a session in the sidebar, or type `/resume` in the prompt box to pick up a session you started from the CLI | desktop see the edit
Confirmed since Anthropic's documentation has since written up /clear, on Hooks reference. `SessionStart` at launch, including with `--continue` or `--resume`, and every `Setup` event fire before the session's MCP servers are available to hooks. Claude Code skips their `mcp_tool` hooks without calling the tool, and the [debug lo… hooks see the edit
How sure we are
Something disagreesSomething we can check disagrees with this entry, or the writer said they could not settle it.
The writer flagged doubtWhich module this is and what it does when one of those commands runs is not confirmed.
Anthropic's documentation agreesAnthropic's documentation has since written up /clear, on Hooks reference.
Anthropic's release notes agreeImproved lists in /help, /hooks, /copy, /chrome, /memory, /ide, /release-notes, /rewind, /diff, /remote-env, /plugin and other pickers with…

See this entry in the whole of v2.1.283 →

Feedback