/plugin install <name>@<marketplace> ignores marketplace suffix when name exists in another marketplace

Resolved 💬 3 comments Opened Apr 23, 2026 by djoneverett Closed Apr 26, 2026

Summary

/plugin install <name>@<marketplace> installs from the wrong marketplace when the plugin name also exists in another registered marketplace. The @<marketplace> suffix appears to be decorative — resolution is purely by plugin name, and the default/first marketplace wins.

Repro

  1. Register two marketplaces that both catalog a plugin with the same name. Example:
  • claude-plugins-official (auto-registered) catalogs remember.
  • /plugin marketplace add Digital-Process-Tools/claude-marketplace (also catalogs remember).
  1. Run /plugin install remember@dpt-plugins.
  2. Inspect ~/.claude/plugins/installed_plugins.json.

Expected

Registry key: remember@dpt-plugins
Install path: ~/.claude/plugins/cache/dpt-plugins/remember/<version>/

Actual

Registry key: remember@claude-plugins-official
Install path: ~/.claude/plugins/cache/claude-plugins-official/remember/<version>/

Content is fetched from the correct upstream repo (same commit SHA either way), but the marketplace attribution is wrong, so /plugin marketplace update subsequently routes through the unintended marketplace.

Related: speculative re-clone on reload

After manually renaming the registry key to remember@dpt-plugins and moving the files, /reload-plugins re-creates the cache/claude-plugins-official/remember/<version>/ dir, presumably because the Anthropic marketplace's catalog still lists the plugin. The orphan dir then accumulates on every reload.

Repro attempted with fully scrubbed state

  • Uninstalled the plugin via /plugin UI.
  • Removed the DPT marketplace via /plugin marketplace remove dpt-plugins.
  • Manually deleted cache/<marketplace>/remember/ directories and marketplaces/dpt-plugins/.
  • Verified installed_plugins.json had no remember entry and known_marketplaces.json had no dpt-plugins entry.
  • Re-added DPT marketplace and ran /plugin install remember@dpt-plugins.

Result: same incorrect namespace attribution.

Environment

View original on GitHub ↗

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