Marketplace auto-update fetches but doesn't pull, so plugin updates never apply

Resolved 💬 2 comments Opened Apr 16, 2026 by ch-davidriott Closed Apr 16, 2026

Summary

Enabling "auto-update" on a marketplace doesn't actually apply updates. The marketplace repo is fetched (git fetch) but never merged/pulled, so the local checkout stays stale. Version bumps in marketplace.json are never seen locally, and plugin updates never propagate.

Steps to reproduce

  1. Create a plugin marketplace repo on GitHub with a plugin at version 1.0.0
  2. Install: /plugin marketplace add org/repo/plugin install plugin-name@marketplace-name
  3. Confirm plugin works
  4. Push a change to the plugin repo: add a new skill, bump version to 1.1.0 in both plugin.json and marketplace.json
  5. Enable auto-update: /plugin → Marketplaces → select marketplace → Enable auto-update
  6. Start a new session

Expected: Plugin updates to 1.1.0, new skill is available
Actual: Plugin stays at 1.0.0, new skill is not available

Diagnosis

The marketplace clone at ~/.claude/plugins/marketplaces/<name>/ shows:

local HEAD:       <old commit>   (version 1.0.0)
origin/main:      <new commit>   (version 1.1.0)

git fetch runs, but the working tree is never updated. Since Claude Code reads marketplace.json from the working tree (not from origin/main), it never sees the version bump.

Workaround

Users must manually run:

/plugin marketplace update <name>
/reload-plugins

This does a proper pull and applies the update. But it defeats the purpose of "Enable auto-update."

Environment

  • Claude Code CLI (latest as of 2026-04-16)
  • macOS
  • Tested with a GitHub-hosted private marketplace repo
  • Also confirmed that superpowers-marketplace has the same local/remote divergence (local HEAD behind origin/main), suggesting this affects all third-party marketplaces

View original on GitHub ↗

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