[BUG] Co-Work fails to uninstall locally-uploaded plugins
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 inside the VM. The CLI
uninstall <name>@local-desktop-app-uploads --cowork
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 uninstallcommand 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
- Upload a local plugin to Co-Work via the Claude Desktop UI (the plugin ends
up in cowork_plugins/marketplaces/local-desktop-app-uploads/)
- Enable the plugin
- Attempt to uninstall the plugin from the Co-Work plugin management UI
- The UI will display "Failed to uninstall plugin"
- 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_
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗