Plugin interactive uninstall does not clean up settings.json entry
Resolved 💬 2 comments Opened Jun 3, 2026 by MASTERGROOT Closed Jun 6, 2026
Bug
Uninstalling a plugin via the interactive plugin menu (browsing to the plugin and choosing uninstall) leaves stale entries in two places:
.claude/settings.json— plugin entry remains with its previous value (true)~/.claude/plugins/installed_plugins.json— plugin entry for the project remains in the registry
The /plugin uninstall <name> CLI command cleans up both correctly.
Expected behavior
After uninstalling a plugin by any path, its entry should be removed from both .claude/settings.json and installed_plugins.json.
Actual behavior
- Uninstall via
/plugin uninstall <name>CLI command: ✅ cleans up both files fully - Uninstall via interactive plugin menu: ❌ both
settings.jsonandinstalled_plugins.jsonentries remain
Repro steps
- Install a plugin for a project:
/plugin install <name> - Confirm entry appears in
.claude/settings.jsonastrueand in~/.claude/plugins/installed_plugins.json - Open the plugin menu interactively and choose uninstall for that plugin
- Inspect
.claude/settings.json— entry still present and stilltrue - Inspect
~/.claude/plugins/installed_plugins.json— project-scoped entry for the plugin still present
Environment
- Claude Code CLI
- macOS
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗