Plugin update via /plugin shows 'Local plugins cannot be updated remotely' for marketplace plugins
Bug
The /plugin menu shows "Local plugins cannot be updated remotely" for plugins installed from a marketplace (not local plugins). This makes it impossible to update marketplace plugins through the normal UI flow.
Steps to Reproduce
- Install a plugin from a marketplace (e.g.
compound-engineeringfromevery-marketplace, ormedusa-devfrommedusa) - Wait for upstream to publish new versions
- Open
/plugin→ select the plugin → select "Update now" - See message: "Local plugins cannot be updated remotely. To update, modify the source at: ./plugins/compound-engineering"
Expected Behavior
Marketplace-installed plugins should fetch the latest version from the marketplace repo and update the cache, since the marketplace git remote is known and configured in ~/.claude/plugins/known_marketplaces.json.
Actual Behavior
All marketplace plugins are treated as local plugins and the update option is non-functional. The only workaround is manually:
git fetchin the marketplace repo under~/.claude/plugins/marketplaces/<marketplace>/- Copy the updated plugin into
~/.claude/plugins/cache/<marketplace>/<plugin>/<new-version>/ - Edit
~/.claude/plugins/installed_plugins.jsonto point to the new version and SHA
Environment
- Claude Code (CLI)
- macOS Darwin 25.2.0
- Affected plugins:
compound-engineering@every-marketplace(v2.30.0),medusa-dev@medusa(v1.0.1) - Both had newer versions available upstream
Additional Context
In the case of compound-engineering, the active cached version also had an .orphaned_at marker file, which may contribute to the misidentification as "local." However the medusa-dev plugin had no such marker and exhibited the same behavior, suggesting the root cause is in how /plugin determines update eligibility for marketplace plugins.
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗