{"version":"2.1.311","anchor":"hook-module-loading-refuses-unproved-or-sealed-plugin-module","canonical_anchor":"hook-module-loading-refuses-unproved-or-sealed-plugin-module","heading":"Claude Code refuses to load plugin hook code it cannot verify","tier":"notice","area":"Plugins","scope":"individual","heads_up":true,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.311\/e\/hook-module-loading-refuses-unproved-or-sealed-plugin-module","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.311","markdown":"### Claude Code refuses to load plugin hook code it cannot verify\n\nLoading a plugin's hook code now fails when it cannot be proved genuine or when a verified module would be reloaded from disk\n\n**What**\n\nPlugins are add-ons for Claude Code, and some supply hook code that runs at set moments. Loading that code now fails in two cases:\n\n- none of the copies Claude Code holds can be proved genuine\n\n- a module already proved genuine would be loaded again from disk\n\nUnloading a sealed plugin now also removes it from Claude Code's list of known plugins.\n\n**Why**\n\nThis tightens the checks that plugin code is what it should be. A plugin that fails them will not load its hooks.\n\n- Area: Plugins\n- Tier: You'll notice\n- Useful: 2\/5\n- Signal: 3\/5\n- Scope: individual\n- Heads-up: yes"}