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
One change · claude-code

Troubleshoot a mod changedplugins/mods/troubleshoot

Upstream edited this page at 10 Oct 2026 18:15 UTC, give or take a minute or two: the time comes from Anthropic’s own sitemap rather than from a commit. This site recorded the change at 10 Oct 2026 18:37 UTC.

Upstream edited
Recorded here
Lines+4added
Lines−4removed
From line 60 where the diff opens
First seen 1 Oct 2026 this site's first read of the page
Recorded edits20to this page, all time

The whole hunk

from line 60, old and new numbered
/
lines
from line 60
6060| `disableAllHooks in managed settings` | Your organization turned off hooks from installed plugins |
6161| `only managed plugins and built-in plugins run` | `allowManagedHooksOnly` is set, or `disableAllHooks` is set in a settings file other than managed settings |
6262| `installed plugins that are not managed load no hooks module in this mode (--bare)` | You started Claude Code with `--bare` |
63| `another plugin of that name loads first` | Two plugins share a name, and [one plugin per name loads a hooks module](/docs/en/plugins/loading#hooks-when-two-enabled-plugins-share-a-name): the copy that managed settings turn on, or else the copy Claude Code loads first. |
63| `another plugin of that name loads first` | Another enabled plugin has the same name as your mod and [holds the name](/docs/en/plugins/loading#hooks-when-two-enabled-plugins-share-a-name), so your hooks module doesn't load |
6464 
6565### Messages from the built-in guard
6666 
from line 149
149149 
150150### `$.agent.register refused: the hooks module that made the call is no longer loaded`
151151 
152A `$.agent.register` call rejects with your mod's name followed by `$.agent.register refused: the hooks module that made the call is no longer loaded (it was reloaded or removed)`. The agent isn't registered. The call came from a copy of your hooks module that is no longer loaded: Claude Code replaced it with a fresh copy in a reload, or unloaded the mod. Code of the old copy that runs after that gets this rejection, such as a hook that hadn't returned yet or a call waiting on another mod's `agent.register` hook.
152The line starts with your mod's name, as in `first-mod: $.agent.register refused: the hooks module that made the call is no longer loaded (it was reloaded or removed)`, and the agent isn't registered. Your mod was reloaded or unloaded before the call. A reload loads a fresh copy of the hooks module, and this call came from code still running in the old copy, such as a hook that hadn't returned yet.
153153 
154A hook that doesn't catch the rejection fails, and Claude Code [skips it](#hook-skipped). To have the copy that stays loaded register the agent, make the call in your [`session.start`](/docs/en/plugins/mods/reference#session) hook. After a reload, the fresh copy's `session.start` runs again, so that copy registers the agent.
154If that hook doesn't catch the rejection, it fails and Claude Code [skips it](#hook-skipped). To register the agent from the copy that stays loaded, make the call in your [`session.start`](/docs/en/plugins/mods/reference#session) hook, which runs again in each fresh copy after a reload.
155155 
156156### `mods that run in the hooks worker are off for this session`
157157 
Feedback