[BUG] Desktop: personal git-marketplace plugins never auto-update despite autoUpdate:true; Update button is a silent no-op; stale gitCommitSha after CLI update
[BUG] Desktop: personal git-marketplace plugins never auto-update despite autoUpdate: true; Update button produces no logged action; stale gitCommitSha after CLI update
Environment
- Claude Desktop (macOS, Darwin 25.x): app 1.5354.0
- Claude Code CLI: 2.1.121
- Plugin: personal private GitHub marketplace (
TheMikeFactoryMustGrow/drive-manager-plugin, nestedplugins/<name>/layout, marketplace.json at repo root)
Summary
A personal git-marketplace plugin sat at v2.2.0 in Desktop for ~3 weeks while its repo advanced 2.2.1 → 2.6.0, despite "autoUpdate": true on the marketplace entry (set 2026-06-09). The Desktop plugin panel's Update button produced no plugin-manager log activity and no visible result or error. The terminal CLI updated the same plugin immediately.
Evidence (from ~/.claude/plugins/* and ~/Library/Logs/Claude/main.log)
- autoUpdate never fired.
known_marketplaces.jsonfor this marketplace shows"autoUpdate": truebutlastUpdatedjumped directly from the last manual operation to2026-07-02T13:22:43Z— the moment a human ranclaude plugin marketplace updatein a terminal. No unattended refresh in between, across ~3 weeks and multiple app restarts. - Update button: no logged action. During the session where the panel showed v2.2.0 and Update was clicked,
main.logcontains zeroCCDMarketplacePluginManagerCLIupdate entries. The only "Checking for updates" lines are the Electron app[updater](app self-update), not plugins. - Historical Desktop-side failure on the same plugin class (2026-05-04, install path, logged):
````
[CCDMarketplacePluginManagerCLI] Failed to install plugin: Installing plugin "<plugin>@other"...
✘ Failed to install plugin "<plugin>@other": This plugin uses a source type your
Claude Code version does not support. Update Claude Code and try again.
The same operation via terminal CLI 2.1.x succeeded — the Desktop-embedded manager and the terminal CLI behave differently on git-source marketplaces.
- Metadata bug after CLI update:
installed_plugins.jsonnow shows"version": "2.6.0"with"gitCommitSha": "63515eb..."— a commit from 2026-05-04 (many releases earlier). The update flow doesn't refreshgitCommitSha. - CLI output oddity:
claude plugin updateprinted "updated from 2.2.0 to 2.4.1" while the resulting install record says 2.6.0 — suggests the version string in the success message is computed from a pre-refresh snapshot.
Expected
- With
autoUpdate: true, the marketplace clone refreshes and the plugin updates unattended (or on app start). - The Update button triggers the same code path as
claude plugin marketplace update+claude plugin update, and surfaces failures to the user. gitCommitShareflects the installed version's commit.
Actual
- No unattended updates ever occur for personal git marketplaces.
- Update button is a silent no-op (no log entry, no error toast, version unchanged).
- Metadata desyncs after successful CLI updates.
Workaround
Terminal CLI: claude plugin marketplace update <marketplace> then claude plugin update <plugin>@<marketplace>, then restart the app.
Prior reports (all closed, symptom persists in adjacent form)
#38185 (Personal tab fails to load / can't update), #38429 (sync removes 3rd-party marketplace plugins), #39274 (marketplace installs removed as NOT_AVAILABLE), #40600 (personal marketplace install lost on restart). Today's evidence is specifically about the update path + autoUpdate flag, which those didn't cover.