bug: /plugin update doesn't activate new plugin versions (new version cached as orphaned)

Resolved 💬 2 comments Opened Feb 28, 2026 by ysys143 Closed Feb 28, 2026

Summary

/plugin update pulls the latest marketplace but does not update installed_plugins.json to the new version. The new version is downloaded into cache but immediately marked as orphaned, leaving the old version active.

Steps to Reproduce

  1. Install a plugin: /plugin install code-convention@wedatalab-plugins (installs v0.3.0)
  2. Release a new version to the marketplace (v0.3.1)
  3. Run /plugin update
  4. Check ~/.claude/plugins/installed_plugins.json → still points to v0.3.0
  5. Check ~/.claude/plugins/cache/wedatalab-plugins/code-convention/ → v0.3.1 directory exists but has .orphaned_at marker

Expected Behavior

After /plugin update, installed_plugins.json should point to the latest version (v0.3.1), and the new cache should be active.

Actual Behavior

  • New version cache is created but marked orphaned (.orphaned_at file present)
  • installed_plugins.json retains the old version and old installPath
  • /plugin install after update says "already installed" — no upgrade path

Workaround

Manually edit installed_plugins.json and remove .orphaned_at from the new version cache:

# Remove orphaned marker
rm ~/.claude/plugins/cache/<marketplace>/<plugin>/<new-version>/.orphaned_at

# Update registry
python3 - << 'PYEOF'
import json
path = "~/.claude/plugins/installed_plugins.json"
# ... update version and installPath manually
PYEOF

Environment

  • Plugin: code-convention@wedatalab-plugins
  • Old version: 0.3.0
  • New version: 0.3.1
  • Marketplace source: github:WeDataLab-AI-Lab/claude-plugins

View original on GitHub ↗

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