Plugin cache not updated when marketplace plugin version changes

Resolved 💬 2 comments Opened Mar 27, 2026 by disneyLadySango Closed Mar 27, 2026

Description

When a plugin in a marketplace repository is updated (version bumped from 0.1.0 to 0.1.1), claude plugin uninstall + claude plugin install does not update the cached plugin files. Even deleting the cache directory (~/.claude/plugins/cache/<marketplace>/<plugin>/) and reinstalling still restores the old version's files.

Steps to Reproduce

  1. Install a plugin from a marketplace: claude plugin install usage-collector@spacemarket-marketplace
  2. Plugin installs as version 0.1.0 with a hooks field in plugin.json
  3. Fix the plugin source on GitHub (remove hooks field, bump version to 0.1.1)
  4. Update marketplace.json to reflect version 0.1.1
  5. Run claude plugin uninstall usage-collector@spacemarket-marketplace
  6. Run claude plugin install usage-collector@spacemarket-marketplace

Expected Behavior

The plugin should be installed with version 0.1.1 and the updated plugin.json (without hooks field).

Actual Behavior

  • The cache directory is still named 0.1.0
  • The cached plugin.json still contains the old hooks field
  • Even after manually deleting the cache directory and reinstalling, the old version is restored
  • The plugin fails to load with: Hook load failed: Duplicate hooks file detected

Workaround

Manually editing the cached plugin.json to remove the hooks field.

Environment

  • Claude Code version: 2.1.81+
  • OS: Linux (Ubuntu)
  • Marketplace config in settings.json:
"extraKnownMarketplaces": {
  "spacemarket-marketplace": {
    "source": {
      "source": "github",
      "repo": "spacemarket/claude-code-plugins"
    }
  }
}

GitHub repo's marketplace.json and plugin.json are correctly updated to 0.1.1 without the hooks field.

View original on GitHub ↗

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