Confusing error for stale plugin references in enabledPlugins

Resolved 💬 3 comments Opened Jan 19, 2026 by s-celles Closed Jan 23, 2026

Description

When a plugin reference in enabledPlugins (in ~/.claude/settings.json) points to a marketplace that no longer exists or has been renamed, Claude Code displays a confusing error message that doesn't explain the actual problem.

Steps to Reproduce

  1. Install a plugin from a marketplace (e.g., my-plugin@my-marketplace)
  2. Rename the marketplace (e.g., from my-marketplace to my-marketplace-v2)
  3. Re-enable the plugin from the renamed marketplace
  4. Run /plugin command

Actual Behavior

The error shown is:

1 error:
  Plugin 'my-plugin' not found in marketplace 'my-marketplace'
  → Plugin may not exist in marketplace 'my-marketplace'

This is confusing because:

  • The plugin IS working (skills are loaded and available)
  • The error doesn't explain that this is a stale reference issue
  • The old marketplace doesn't exist anymore, but the error implies it does

The settings.json ends up with duplicate entries:

"enabledPlugins": {
    "my-plugin@my-marketplace": true,      // stale reference
    "my-plugin@my-marketplace-v2": true    // correct reference
}

Expected Behavior

Option A: Auto-cleanup - Remove or ignore entries referencing non-existent marketplaces

Option B: Better error message - Explain the actual problem:

1 warning:
  Stale plugin reference: 'my-plugin@my-marketplace'
  → Marketplace 'my-marketplace' is not registered. Consider removing this entry from settings.

Option C: Both - Warn on first occurrence, then auto-remove the stale entry

Environment

  • OS: Linux
  • Claude Code version: latest

View original on GitHub ↗

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