Plugin update via /plugin shows 'Local plugins cannot be updated remotely' for marketplace plugins

Resolved 💬 3 comments Opened Feb 11, 2026 by FoodGoods Closed Feb 14, 2026

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

  1. Install a plugin from a marketplace (e.g. compound-engineering from every-marketplace, or medusa-dev from medusa)
  2. Wait for upstream to publish new versions
  3. Open /plugin → select the plugin → select "Update now"
  4. 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:

  1. git fetch in the marketplace repo under ~/.claude/plugins/marketplaces/<marketplace>/
  2. Copy the updated plugin into ~/.claude/plugins/cache/<marketplace>/<plugin>/<new-version>/
  3. Edit ~/.claude/plugins/installed_plugins.json to 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.

View original on GitHub ↗

This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗