claude-code - 💡(How to fix) Fix /reload-plugins does not reload hook scripts — stale hooks persist until session restart [3 comments, 3 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
anthropics/claude-code#55008Fetched 2026-05-01 05:48:38
View on GitHub
Comments
3
Participants
3
Timeline
7
Reactions
0
Timeline (top)
labeled ×4commented ×3

Error Message

  • Running session still blocks uv with the 1.4.11 error message

Fix Action

Fix / Workaround

The only workaround is to kill and restart the Claude Code session.

RAW_BUFFERClick to expand / collapse

Bug

/reload-plugins does not reload plugin hook scripts into the running session. After updating a plugin that changes a hook, the old hook code continues to execute until the Claude Code process is killed and restarted.

Steps to reproduce

  1. Install a plugin with a PreToolUse hook (e.g., one that denies certain shell commands).
  2. Publish a new plugin version that changes the hook logic (e.g., removes an entry from a deny list).
  3. Run /plugin marketplace update <name> — succeeds, new version appears on disk.
  4. Run /reload-plugins — reports success with a count of loaded items.
  5. Trigger the hook — old behavior persists. The denied command is still denied despite the fix being on disk.

Evidence

Plugin version 1.4.11 had uv in a HOST_TOOLS deny list. Version 1.4.12 removed it. After update + reload:

  • /Users/.../.claude/plugins/cache/.../1.4.12/hooks/scripts/lib/host-container-tools.sh — correct (no uv)
  • Running session still blocks uv with the 1.4.11 error message

The only workaround is to kill and restart the Claude Code session.

Impact

Hooks are the primary mechanism for enforcing agent behavior constraints (blocking dangerous commands, enforcing workflow rules, etc.). When a hook has a bug that incorrectly blocks valid commands, the inability to hot-reload the fix means:

  • Every running session must be killed and restarted
  • There is no way to verify which hook version is loaded without filesystem inspection
  • /reload-plugins gives false confidence — it reports success but hooks remain stale

Expected behavior

/reload-plugins should reload ALL plugin components: skills, hooks, settings, and any other plugin-provided artifacts. If it cannot reload certain components, it should clearly state what was and was not reloaded.

Environment

  • Claude Code CLI (macOS, Darwin 25.3.0)
  • Claude Opus 4.6

extent analysis

TL;DR

The issue can be temporarily worked around by killing and restarting the Claude Code session after updating a plugin, as the /reload-plugins command does not currently reload plugin hook scripts.

Guidance

  • Verify that the plugin update is successful by checking the plugin version on disk after running /plugin marketplace update <name>.
  • Check the plugin's hook scripts on disk to ensure they match the expected updated version.
  • Consider adding logging or debugging statements to the hook scripts to determine which version is being executed.
  • Test the hook behavior after a restart to confirm that the updated hook logic is applied.

Example

No code snippet is provided as the issue does not require a code change, but rather a workaround for the current behavior of the /reload-plugins command.

Notes

The current implementation of /reload-plugins does not reload plugin hook scripts, leading to stale behavior. This workaround may not be suitable for production environments where sessions cannot be easily restarted.

Recommendation

Apply the workaround of killing and restarting the Claude Code session after updating a plugin, as there is no clear indication of a fixed version that addresses this issue. This ensures that the updated hook logic is applied, albeit with the inconvenience of restarting the session.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

FAQ

Expected behavior

/reload-plugins should reload ALL plugin components: skills, hooks, settings, and any other plugin-provided artifacts. If it cannot reload certain components, it should clearly state what was and was not reloaded.

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING