Plugin install refuses project-scope install if same plugin is installed in a different project
Resolved 💬 3 comments Opened Feb 20, 2026 by nathanbeckmann Closed Feb 20, 2026
Bug Description
Installing a plugin at project scope in one repository prevents installing the same plugin at project scope in any other repository. The install command checks the global ~/.claude/plugins/installed_plugins.json and reports "already installed" without considering whether the current project has the plugin enabled.
Steps to Reproduce
- In repo A, install a plugin at project scope:
```
/plugin install commit-commands
# Select "project" scope → works fine
repo-A/.claude/settings.json
This creates with enabledPlugins and adds an entry to ~/.claude/plugins/installed_plugins.json`.
cdto repo B (a different repository).
- Try to install the same plugin at project scope:
````
/plugin install commit-commands
- Result:
Plugin 'commit-commands@claude-plugins-official' is already installed. Use '/plugin' to manage existing plugins.
- Expected: The install should proceed and create
repo-B/.claude/settings.jsonwith theenabledPluginsentry.
Additional Details
- The plugin also does not appear in the Discover tab for the second repo (it's filtered out as "installed").
- It appears in the Installed tab even though it's not functional in the current project.
- The global
installed_plugins.jsonstores theprojectPathof the original install, but the install command doesn't compare it to the current working directory. - Workaround: Manually create
.claude/settings.jsonin the second repo:
``json``
{
"enabledPlugins": {
"commit-commands@claude-plugins-official": true
}
}
Environment
- Claude Code CLI
- Linux
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗