[BUG] Co-Work fails to uninstall locally-uploaded plugins

Resolved 💬 3 comments Opened Feb 24, 2026 by vamiller12 Closed Feb 27, 2026

Preflight Checklist

  • [x] I have searched existing issues and this hasn't been reported yet
  • [x] This is a single bug report (please file separate reports for different bugs)
  • [x] I am using the latest version of Claude Code

What's Wrong?

When attempting to uninstall a plugin that was uploaded locally through the
Claude Desktop UI, the desktop app delegates to the CLI command claude plugin
uninstall <name>@local-desktop-app-uploads --cowork
inside the VM. The CLI
does not recognize locally-uploaded plugins as "installed plugins" — it only
tracks plugins installed via the CLI's own marketplace flow. The command exits
with code 1 and the plugin remains installed.

What Should Happen?

Locally-uploaded plugins should be uninstallable from the same UI that was
used to install/enable them. Either:

  • The CLI's plugin uninstall command should be aware of locally-uploaded

plugins in the marketplaces/local-desktop-app-uploads/ directory, or

  • The desktop app should handle uninstallation of local plugins directly

(removing the files from the
cowork_plugins/marketplaces/local-desktop-app-uploads/ directory and
updating settings) without routing through the VM CLI

Error Messages/Logs

**From `main.log` — the CLI command fails with exit code 1:**

 
 2026-02-23 20:12:32 [info] [VMCLIRunner] Ensuring VM is started
 2026-02-23 20:12:32 [info] [MarketplacePluginManagerCLI] Uninstalling plugin:
 brand-voice@local-desktop-app-uploads
 2026-02-23 20:12:32 [info] [VMCLIRunner] Running: claude plugin uninstall
 brand-voice@local-desktop-app-uploads --cowork
 2026-02-23 20:12:34 [info] [VMCLIRunner] Command completed with exit code 1
 

 **The event logged with the raw CLI output:**

 
 2026-02-23 20:12:34 [info] [EventLogging] Queuing event:
 marketplace_plugin_cli_error | metadata: {
   operation: 'uninstall',
   exit_code: 1,
   error_message: 'Failed to uninstall plugin',
   error_category: 'unknown',
   raw_output: '✘ Failed to uninstall plugin
 "brand-voice@local-desktop-app-uploads":
     Plugin "brand-voice@local-desktop-app-uploads" not found in installed
 plugins\n',
   target_id: 'brand-voice@local-desktop-app-uploads'
 }
 

 **Sentry error captured:**

 
 2026-02-23 20:12:34 [error] Sentry caught: {
   eventId: '13cabfb2055d4d448badca259bc1a4f5',
   type: 'Error',
   value: 'Failed to uninstall plugin',
   stack: 'Error: Failed to uninstall plugin\n' +
     '    at /Applications/Claude.app/Contents/Resources/app.asar/.vite/build/i
 ndex.js:687:19245\n' +
     '    at async UMe.withMutex (...)\n' +
     '    at async ...'
 }
 

 **From `coworkd.log` — the VM-side process runs and exits with code 1:**

 
 2026/02/23 21:27:56 [process:cli-147c910c-...] spawn: name=cli-147c910c
   cmd=claude args=[plugin uninstall brand-voice@local-desktop-app-uploads
 --cowork]
 2026/02/23 21:27:57 [process:cli-147c910c-...] direct child exited: code=1
 signal=<nil>
 

 **Note:** This error has reproduced on two separate attempts (Feb 23 at
 14:27:56 and Feb 23 at 20:12:32), both with the same result.

Steps to Reproduce

  1. Upload a local plugin to Co-Work via the Claude Desktop UI (the plugin ends

up in cowork_plugins/marketplaces/local-desktop-app-uploads/)

  1. Enable the plugin
  2. Attempt to uninstall the plugin from the Co-Work plugin management UI
  3. The UI will display "Failed to uninstall plugin"
  4. The plugin remains installed and enabled

Claude Model

None

Is this a regression?

Yes, this worked in a previous version

Last Working Version

_No response_

Claude Code Version

Claude Desktop v1.1.3647 and v1.1.4010 (reproduced on both)

Platform

Anthropic API

Operating System

macOS

Terminal/Shell

Terminal.app (macOS)

Additional Information

_No response_

View original on GitHub ↗

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