Sweep 19 Sep 2026 · 02:36Z Build v2.1.278 500 read Stable v2.1.267 Latest v2.1.278 Next v2.1.278 Feeds RSS JSON llms.txt Unofficial
Claude Code v2.1.259 ·

Plugin hooks as JS modules — gated off by default

Plugins can load hooks from real JS modules with per-action permission checks, but the rollout gate defaults off.

TierNothing to try yethow much it should matter to you
Useful5my rating, 1 to 5
Signal5worth watching, 1 to 5
AreaPlugin Hookswhat it touches
KindIn Developmentin v2.1.259,
Nothing to try yet Notable

Plugins can load hooks from real JS modules with per-action permission checks, but the rollout gate defaults off.

New machinery loads a plugin's hooks from actual JS modules (function hooks) rather than only declarative config, with permission checks for call_handler, run_script, and get_handlers actions. A loader logs hooks module of plugin "X" not loaded: ... with reasons such as --bare mode, disableAllHooks, or the rollout flag being off. The rollout is controlled by a growthbook gate, tengu_plugin_hooks_modules, that defaults to off, and can be forced on or off via the CLAUDE_CODE_ENABLE_FUNCTION_HOOKS env var, which takes priority over the gate.

Read from
Names in the bundleCLAUDE_CODE_ENABLE_FUNCTION_HOOKStengu_plugin_hooks_modules--baredisableAllHooks
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.

Confirmed since Anthropic's documentation has since written up disableAllHooks, on MCP, plugins, skills, and hooks. Claude Code [managed settings](/docs/third-party/claude-desktop/code#interaction-with-claude-code%E2%80%99s-own-managed-settings) deployed on the device govern these hooks as they do in the Claude Code CLI: `disableAllHooks` turns them off… third-party/claude-desktop/extensions see the edit
Added since A small documentation edit on CLI reference touched a line naming --bare after this was published. If you start Claude Code in [bare mode](/docs/en/headless#start-faster-with-bare-mode), by passing `--bare` or setting `CLAUDE_CODE_SIMPLE=1`, recording stays off unless you pass `--system-prompt-snapshot on`. Before v2.1.268, sessions tha… cli-reference see the edit
Confirmed since Anthropic's documentation has since written up --bare, on Modifying system prompts. If you start Claude Code in [bare mode](/docs/en/headless#start-faster-with-bare-mode) by passing `--bare` through `extraArgs` or setting `CLAUDE_CODE_SIMPLE=1`, recording stays off unless you set `snapshot: true` on the object form of `sy… agent-sdk/modifying-system-prompts see the edit
How sure we are
Two sources agreeTwo things we can check say the same as this entry.
Anthropic's documentation agreesAnthropic's documentation has since written up --bare, on Modifying system prompts.
The name it cites is new in this buildNew in this build: CLAUDE_CODE_ENABLE_FUNCTION_HOOKS

See this entry in the whole of v2.1.259 →