Cowork remote plugins: no path to force-update stale marketplace cache (Windows)

Status Open
Maintainer reply None cached
Activity 12 comments · opened Mar 20, 2026

Summary

Cowork's remote plugin system serves stale marketplace content with no user-accessible workaround. Unlike the CLI plugin system (where users can git pull the local marketplace clone per #29071), Cowork mounts remote plugins read-only from server-side infrastructure. When the server cache is stale, the user is stuck.

Environment

  • Platform: Windows 11 Pro 10.0.26100
  • Cowork: Latest as of 2026-03-20
  • Marketplace: Private org marketplace (CEG-Solutions/ceg-cowork-plugins)

Steps to reproduce

  1. Install a plugin from an org marketplace in Cowork (e.g., refinery v2.0.0)
  2. Push fixes to the marketplace repo's main branch (confirmed via gh api)
  3. Bump version in marketplace.json from 2.0.0 to 2.0.1
  4. In Cowork, click "Check for updates" → reports "all skills up to date"
  5. Close and reopen Cowork (twice) → still reports up to date
  6. Uninstall and reinstall the plugin → reinstalls the old 2.0.0 content

What I tried (exhaustive)

| Attempt | Result |
|---------|--------|
| Close/reopen Cowork (X button, twice) | No change |
| Uninstall + reinstall plugin | Reinstalled stale v2.0.0 |
| Version bump in marketplace.json (2.0.0 → 2.0.1) | Cowork doesn't use this field |
| Ask Cowork Claude to git pull inside VM | No git clone exists — remote plugins aren't git repos in the VM |
| Ask Cowork Claude to overwrite plugin files | .remote-plugins/ is mounted read-only |
| Search ~/.claude/plugins/marketplaces/ on host | CEG marketplace not listed in known_marketplaces.json — only Anthropic official marketplaces are there |
| Search C:\Users\<user>\AppData\ on host | No CEG/cowork/marketplace references found anywhere |
| Search C:\ProgramData\Claude\ on host | Only contains cowork-service.log and coworkd.log |
| Mount local clone in Cowork, ask Claude to copy files | .remote-plugins/ is read-only, copy fails |

Key findings

  1. Cowork tracks remote plugins by ID and timestamp, not by marketplace.json version field. Bumping the version does nothing.
  2. Remote plugins are delivered as a read-only mount, not as a git checkout. There is no .git/ directory inside the VM's plugin path.
  3. The marketplace cache does not live on the user's local filesystem. Unlike CLI marketplaces (stored at ~/.claude/plugins/marketplaces/), Cowork's org marketplace cache is entirely server-side. The user has no access to it.
  4. known_marketplaces.json on the host only lists Anthropic official marketplaces, not org-managed ones. This confirms org marketplaces are managed through a different code path.
  5. The "last updated" timestamp in Cowork shows today's date, but the actual file content is from before the fixes were pushed. The timestamp may reflect when Cowork last checked, not when content was actually refreshed.

Why this is worse than the CLI version of this bug

The CLI bug (#29071) has a manual workaround: cd ~/.claude/plugins/marketplaces/<name> && git pull. Cowork users have zero workaround:

  • Can't access the server-side cache
  • Can't write to the read-only mount
  • Can't git pull because there's no git repo in the VM
  • Can't install a local override (no ~/.claude/plugins/ override mechanism in Cowork)
  • Uninstall/reinstall pulls from the same stale cache

For org-managed marketplaces, this means a team lead pushes a critical fix and no team member can receive it until Anthropic's server-side cache refreshes on its own (unknown cadence).

Related issues

  • #29071 — plugin update runs git fetch but never git merge/pull (root cause for CLI)
  • #28998 — "Check for Updates" falsely reports latest version on Windows
  • #29074 — Plugin cache not cleared on uninstall/reinstall
  • #14061 — /plugin update does not invalidate plugin cache
  • #35752, #36317, #36380 — Recent duplicates confirming this is widespread

Suggested fixes

Agreeing with @sagarbaver's priority ordering from #29071, with an additional Cowork-specific item:

  1. Must have: git pull before version/commit comparison (fixes CLI)
  2. Must have (Cowork-specific): Server-side marketplace cache must refresh when checking for updates, not just compare against a stale local copy
  3. Should have: Cache invalidation on uninstall/reinstall — a fresh install should always pull fresh content
  4. Nice to have: TTL-based auto-refresh (e.g., daily) for org marketplaces

View original on GitHub ↗

12 Comments

github-actions[bot] · 5 months ago

Found 3 possible duplicate issues:

  1. https://github.com/anthropics/claude-code/issues/29071
  2. https://github.com/anthropics/claude-code/issues/35752
  3. https://github.com/anthropics/claude-code/issues/36380

This issue will be automatically closed as a duplicate in 3 days.

  • If your issue is a duplicate, please close it and 👍 the existing issue instead
  • To prevent auto-closure, add a comment or 👎 this comment

🤖 Generated with Claude Code

mbcoalson · 5 months ago

Not a duplicate. #29071, #35752, and #36380 are all about the CLI plugin system where the local marketplace clone at ~/.claude/plugins/marketplaces/ isn't pulled. The workaround in all three is git pull in the local clone.

This issue is about Cowork's remote plugin system, which is architecturally different:

  • No local clone exists. Org marketplaces for Cowork don't appear in ~/.claude/plugins/marketplaces/ or known_marketplaces.json — they're managed server-side.
  • No user-accessible cache. The plugin files are mounted read-only into the VM at .remote-plugins/. There's no git repo, no cache directory, nothing the user can touch.
  • The CLI workaround doesn't apply. There's nowhere to cd and git pull.

The root cause is related (stale cache, no fetch before comparison), but the affected system, code path, and required fix are all different. The CLI fix (adding git pull to the update command) won't help Cowork users at all — Cowork needs a server-side cache refresh mechanism.

pgrydbeck · 4 months ago

Second data point — macOS, personal (non-org) marketplace

Confirming on Darwin 25.4.0. Personal GitHub marketplace, unpinned {source: github, repo: ...}. Cowork's updatedAt is frozen ~26h ago at v4.7.0; main is at v5.3.0 with 5 version bumps in between — all ignored. Uninstall/reinstall and "refresh marketplace" both no-ops. Matches all 5 points of the original report, including point 4 (personal marketplaces also absent from local known_marketplaces.json) and point 5 (file mtimes show Cowork rewrote the local mirror today with the same stale content).

Pivotal detail worth isolating: the frozen snapshot captured a transient schema. The source field was a local path (./path/to/plugin) at snapshot time; I refactored to the github form 3m 39s later and started version-bumping there. If the server had re-read the marketplace even once in the following 26h, it would have seen a completely different source object and 5 version bumps. It hasn't.

Happy to share marketplace / plugin IDs and session UUIDs privately for triage.

admin431 · 4 months ago

👍 Same exact issue here on Cowork desktop Windows 11. Confirmed today 2026-04-29 with private marketplace admin431/PoWi-Mobile — bumped plugin v1.1.0 → v1.5.0 across multiple commits to develop, Cowork keeps showing v1.1.0 even after remove + re-add marketplace. Workaround: zip flow (uninstall + manual zip upload) which loses marketplace tracking. +1 to your priority ordering — server-side cache refresh on 'Check for updates' is the must-have.

illumitry-mf · 4 months ago

+1
Hitting this same issue with a private Github org and repo + Team's rolled out Organisation private marketplace.

Can we get a workaround besides manual zip deployment please which is not scalable.

mdhor · 3 months ago

+1

fontesgerards · 2 months ago

+1 Same issue on MacOS, personal marketplace. No way to get Cowork to recognize the updated versions of the plugin (5 days worth of changes, 6 versions)

gjenkins-ltfinc · 1 month ago

We are facing this issue also; it makes operating our private marketplace far more difficult for non-technical team members.

s-sayler · 1 month ago

+1

CoffeeNoir · 1 month ago

+1

rijo-ppi · 1 month ago

+1