Desktop app Plugins UI shows plugin as Disabled while enabledPlugins is true and the plugin loads and works
Summary
Desktop app Settings -> Plugins shows a plugin as Disabled while it is enabled and fully working - its commands appear under / and run fine. The badge stays Disabled across full app restarts.
Environment
- Windows 11 Pro, Claude Desktop app (current as of 2026-08-25)
- Plugin installed via settings.json (the /plugin dialog is not available in the desktop app): extraKnownMarketplaces entry pointing at a private GitHub repo marketplace + enabledPlugins {"mighty-tools@mighty-coconut": true} in ~/.claude/settings.json (user scope)
What we verified before filing
- enabledPlugins is true at user scope; no project/local settings override it
- ~/.claude/plugins/installed_plugins.json is internally consistent: installPath exists on disk, version matches the marketplace manifest, gitCommitSha matches the clone HEAD
- The plugin functions: commands listed & runnable, bundled hooks fire
- Badge still reads Disabled after multiple full app restarts
Data point that may help locate it
The card is NOT reading stale files wholesale - when we pushed a displayName + version change to the marketplace repo and synced the clone, the card updated its name & version live, without an app restart. Only the Enabled/Disabled badge disagrees w/ reality. i.e. the badge appears to track some other state than the merged settings + registry.
Likely related
We also hit the updater family of bugs on the same install (#52218, #45834, #29512 - marketplace clone updates but the versioned cache copy / installed_plugins.json are not advanced). The badge stayed Disabled even after we manually repaired cache + registry to a fully consistent state, so it may be a separate UI-side issue rather than the same root cause (unverified).
Repro
- In the desktop app, install a plugin from a private GitHub marketplace purely via settings.json (extraKnownMarketplaces + enabledPlugins at user scope)
- Restart the app - commands load & work
- Open Settings -> Plugins: the card shows Disabled
This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗