claude plugin update doesn't refresh marketplace clone
Summary
claude plugin update reports a plugin is at "the latest version" when it isn't, because it doesn't git pull the local marketplace clone before comparing versions.
Steps to Reproduce
- Install a marketplace plugin:
````
claude plugin marketplace add EveryInc/compound-engineering-plugin
- Wait for the plugin repo to release newer versions
- Run:
````
claude plugin update compound-engineering@compound-engineering-plugin
- Output:
````
Checking for updates for plugin "compound-engineering@compound-engineering-plugin" at user scope…
✔ compound-engineering is already at the latest version (2.38.1).
Expected Behavior
Should detect v2.45.0 (the current version on main) and offer to update.
Root Cause
The marketplace clone at ~/.claude/plugins/marketplaces/compound-engineering-plugin/ is stale — its git HEAD is at an old commit (v2.34.4) and plugin.json shows 2.38.1. The upstream repo's main branch has plugin.json with version 2.45.0.
# Local marketplace clone HEAD:
$ cd ~/.claude/plugins/marketplaces/compound-engineering-plugin && git log --oneline -1
ca57c67 chore(release): 2.34.4 [skip ci]
# Remote main has moved far ahead:
$ git fetch origin main --dry-run
ca57c67..0407c13 main -> origin/main
claude plugin update appears to compare the installed version against the stale local clone rather than fetching the latest from origin first.
Workaround
Manually pull the marketplace clone:
cd ~/.claude/plugins/marketplaces/compound-engineering-plugin
git pull origin main
Then claude plugin update should detect the newer version.
Environment
- Claude Code CLI (latest)
- macOS
- Plugin:
compound-engineering@compound-engineering-plugin(EveryInc/compound-engineering-plugin)
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗