[BUG] Cowork plugins marketplace fails to load on Windows with WSL2/Docker installed - 172.16.0.0/24 NAT conflict
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?
Description:
The Cowork plugins marketplace fails to load with "Failed to load marketplace" error on Windows when WSL2 or Docker Desktop is installed. The root cause is a network conflict — Cowork's VM is hardcoded to use the 172.16.0.0/24 range, which WSL2/Docker also claims, preventing the NAT rule from being created.
Environment:
- OS: Windows
- Claude Plan: Pro
- WSL2 installed with
docker-desktopas default distribution - Hyper-V: Initially disabled, enabled as part of troubleshooting
Steps to Reproduce:
- Have WSL2 or Docker Desktop installed on Windows
- Open Claude Desktop → Cowork tab
- Click Browse Plugins
- Plugins panel shows skeleton/loading state indefinitely and never loads
Error Message:
Failed to load marketplace. Custom plugins are only available in the desktop app. Restarting Claude or your computer sometimes resolves this.
Debugging Done:
- Confirmed
CoworkVMServiceis running Get-NetNatreturns empty — no NAT rule exists despitevEthernet (cowork-vm-nat)adapter being presentNew-NetNat -Name "cowork-vm-nat" -InternalIPInterfaceAddressPrefix "172.16.0.0/24"fails with error 52 (duplicate name) even though no NAT rules exist- A NAT with a different IP range (
172.16.1.0/24) succeeds, confirming the172.16.0.0/24range is claimed by WSL2 - Cleared HNS policy store, deleted VM bundle, shut down WSL2 (
wsl --shutdown), restarted CoworkVMService — issue persists - Windows Time service was not running (fixed),
validation_failedon Google login also observed
Expected Behavior:
Cowork should either use a different default IP range that doesn't conflict with WSL2/Docker, or detect the conflict and automatically reassign its network range.
Actual Behavior:
Cowork VM cannot create its NAT rule due to IP range conflict with WSL2, leaving the VM without internet access and causing the plugin marketplace to fail to load permanently.
What Should Happen?
The plug-ins are not loading and they should load properly when I am using the Claude Cowork
Error Messages/Logs
Steps to Reproduce
go to Claude Cowork and open plugins and the screen opens but plug-ins won't load at all
Claude Model
None
Is this a regression?
Yes, this worked in a previous version
Last Working Version
_No response_
Claude Code Version
2.1.17 (Claude Code)
Platform
Other
Operating System
Windows
Terminal/Shell
PowerShell
Additional Information
_No response_
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗