claude plugin update doesn't fast-forward local marketplace clone

Resolved 💬 9 comments Opened Feb 26, 2026 by BishopCrypto Closed Apr 12, 2026

Bug Report

Command: claude plugin update <plugin>

Behavior: The command reports "already at the latest version" but the plugin is NOT updated. The local marketplace repo stays on the old commit.

Root cause (diagnosed by user):
The update logic appears to run git fetch on the marketplace repo clone at ~/.claude/plugins/marketplaces/<marketplace>/ but never runs git merge origin/master (or git pull) to advance the local branch. So the working tree stays on the old commit and the version check reads the stale local files.

Evidence:

  • known_marketplaces.json had lastUpdated: 2026-02-18 (the install date) — never refreshed by subsequent update runs
  • Local branch was on commit 3030c86 (v0.7.4), 21 commits behind origin/master
  • git fetch manually pulled everything up to v0.9.1 successfully (remote is accessible)
  • After manually running git pull in the marketplace dir + updating cache + manifests, the plugin updated correctly

Repro:

  1. Install a marketplace plugin: claude plugin install Owner/repo
  2. Publisher releases new versions (e.g. v0.7.4 → v0.9.1)
  3. Run claude plugin update plugin@Owner-repo
  4. Command says "already at the latest version (0.7.4)" — incorrect

Workaround:

cd ~/.claude/plugins/marketplaces/<Owner>-<repo>/
git pull
claude plugin update plugin@Owner-repo

Expected behavior: claude plugin update should fast-forward the local marketplace clone before reading available versions.

Worth checking whether known_marketplaces.json's lastUpdated timestamp is also supposed to be refreshed on each update run — it appears not to be.

View original on GitHub ↗

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