Description
Plugins referenced in a project's .claude/settings.json enabledPlugins that were never actually installed (no entry in ~/.claude/plugins/installed_plugins.json) are displayed under the User scope in the /plugin UI instead of Project. They also cannot be uninstalled via /plugin uninstall since they're not in the installed plugins registry.
Steps to Reproduce
- Have a project
.claude/settings.json with enabledPlugins referencing plugins that were never installed:
{
"enabledPlugins": {
"some-plugin@some-marketplace": true
},
"extraKnownMarketplaces": {
"some-marketplace": {
"source": { "source": "github", "repo": "org/repo" }
}
}
}
- Open Claude Code in that project
- Run
/plugin and go to the Installed tab
Expected Behavior
- These plugins should appear under Project scope (since they come from project settings)
- There should be a way to manage/remove them from the UI (or at minimum a clear indication they need to be installed)
Actual Behavior
- Plugins appear under User scope
- They show as "failed to load · 1 error"
- Running
/plugin uninstall plugin-name or claude plugin uninstall plugin-name fails with Plugin "plugin-name" not found in installed plugins
- The only way to remove them is manually editing
.claude/settings.json
Screenshots
Plugins from project enabledPlugins showing under "User" instead of "Project":
Project
❯ anvil2 Plugin · ServiceTitan · ✔ enabled <-- this one is actually installed
User
code-review Plugin · Anthropic · ✘ failed to load · 1 error <-- from project settings
feature-dev Plugin · Anthropic · ✘ failed to load · 1 error <-- from project settings
ralph-skills Plugin · ralph-marketplace · ✘ failed to load · 1 error <-- from project settings
stdocs Plugin · ST-ToolbeltExtensions · ✘ failed to load · 1 error <-- from project settings
Environment
- Claude Code v2.1.41
- macOS (Darwin 25.2.0)
Description
Plugins referenced in a project's
.claude/settings.jsonenabledPluginsthat were never actually installed (no entry in~/.claude/plugins/installed_plugins.json) are displayed under the User scope in the/pluginUI instead of Project. They also cannot be uninstalled via/plugin uninstallsince they're not in the installed plugins registry.Steps to Reproduce
.claude/settings.jsonwithenabledPluginsreferencing plugins that were never installed:{ "enabledPlugins": { "some-plugin@some-marketplace": true }, "extraKnownMarketplaces": { "some-marketplace": { "source": { "source": "github", "repo": "org/repo" } } } }/pluginand go to the Installed tabExpected Behavior
Actual Behavior
/plugin uninstall plugin-nameorclaude plugin uninstall plugin-namefails withPlugin "plugin-name" not found in installed plugins.claude/settings.jsonScreenshots
Plugins from project
enabledPluginsshowing under "User" instead of "Project":Environment