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
- Install a plugin:
/plugin install code-convention@wedatalab-plugins(installs v0.3.0) - Release a new version to the marketplace (v0.3.1)
- Run
/plugin update - Check
~/.claude/plugins/installed_plugins.json→ still points to v0.3.0 - Check
~/.claude/plugins/cache/wedatalab-plugins/code-convention/→ v0.3.1 directory exists but has.orphaned_atmarker
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_atfile present) installed_plugins.jsonretains the old version and oldinstallPath/plugin installafter 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
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗