[Enhancement] Allow changing plugin scope (Project/Local/User) from the TUI
Summary
Currently, once a plugin is installed, its scope (Project / Local / User) cannot be changed from the TUI. The only workaround is to manually edit the settings JSON files.
This is a feature request for scope management, distinct from the install-time scope bugs tracked in #29240 and #29997 (both now closed/stale).
Desired Behavior
Add the ability to change a plugin's scope directly from the Plugins > Installed screen — for example, via a context menu or action when selecting an installed plugin:
Installed Plugins
┌─────────────────────────────────┐
│ plugin-name [Project] │
│ │
│ > Change scope to User │
│ > Change scope to Local │
│ > Uninstall │
└─────────────────────────────────┘
Alternatively, a CLI command like:
claude plugin scope <plugin-name> --scope user
Current Workaround
Manually move the plugin entry between:
~/.claude/settings.json(User)<project>/.claude/settings.local.json(Local)<project>/.claude/settings.json(Project)
This requires knowing the internal file structure, which is not beginner-friendly and error-prone.
Why This Matters
- It's very easy to install a plugin at the wrong scope (especially for new users)
- There is no way to fix this from the TUI — you must manually edit JSON files
- The data model already supports multiple scope entries per plugin (
installed_plugins.jsonuses arrays), so the backend should be able to support this
Related Issues
- #29240 — Project-scoped plugins show as "Installed" in other projects (closed/stale)
- #29997 — Cannot reinstall at different scope (closed as duplicate of #29240)
Those issues focus on the install-time bug. This request is about post-install scope management as a first-class TUI feature.
This issue has 4 comments on GitHub. Read the full discussion on GitHub ↗