Plugin update doesn't refresh git-sourced marketplace cache
Resolved 💬 3 comments Opened Mar 21, 2026 by Mugunthan93 Closed Apr 17, 2026
Problem
When using extraKnownMarketplaces with a git source in settings.json:
{
"extraKnownMarketplaces": {
"my-marketplace": {
"source": {
"source": "git",
"url": "https://gitlab.com/org/plugin.git"
}
}
}
}
Running claude plugin update plugin@marketplace checks the locally cached marketplace.json at ~/.claude/plugins/marketplaces/<name>/ — it does NOT git pull from the remote first.
This means:
- Publisher pushes new version (e.g., v2.0.0 → v2.3.0) to the git repo
- User runs
claude plugin update plugin@marketplace - Claude Code checks the stale local cache → reports "already at latest version"
- User is stuck on the old version with no indication that an update exists
Expected Behavior
claude plugin update (and claude plugin install) should git pull the marketplace source before checking versions when the source is git type.
Current Workaround
Users must manually refresh the cache:
cd ~/.claude/plugins/marketplaces/<marketplace-name>
git pull origin main
rm -rf ~/.claude/plugins/cache/<marketplace>/<plugin>/*
claude plugin install plugin@marketplace
Environment
- Claude Code version: 2.1.80
- OS: macOS (Darwin 25.3.0)
- Plugin source: GitLab (git source type)
- Marketplace config:
extraKnownMarketplacesin~/.claude/settings.json
Impact
Every release of a git-sourced plugin requires users to know the manual workaround. claude plugin update is effectively broken for non-official marketplace sources.
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗