[BUG] CoWork Windows: cowork-svc.exe not listening, VM API UNREACHABLE (duplicate of #24945)

Resolved 💬 3 comments Opened Feb 18, 2026 by w8wait Closed Feb 22, 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?

aClaude CoWork on Windows: VM boots and reaches CONNECTED status, but API is always UNREACHABLE. cowork-svc.exe (the MITM proxy) runs but binds to zero network ports.

Environment:

  • Windows 11 Pro Build 26100
  • - Claude Desktop v1.1.3363.0 (Microsoft Store)
  • - - Hyper-V enabled, VM boots successfully
  • - - - Host can reach api.anthropic.com on port 443 (verified via Test-NetConnection)

Problem:
The cowork-vm-nat HNS network is created at 172.16.0.1/24 and the VM reaches CONNECTED status. However, cowork-svc.exe (the host-side MITM proxy) has zero listening sockets — confirmed via netstat -ano filtering by its PID. The VM has no proxy to route API calls through, so every reachability check fails.

Get-NetNat returns empty — no WinNAT rule is created to back the HNS NAT network. This matches issue #25155 and #24945.

Extensive troubleshooting attempted with no effect:

  • Manual WinNAT creation (blocked by HNS internal NAT conflict)
  • - IP forwarding enabled (per-interface and system-level IPEnableRouter)
  • - - ICS sharing (breaks HNS subnet expectations)
  • - - - HNS network removal and recreation
  • - - - - Windows Firewall verified (Claude rules allow all profiles)
  • - - - - - RemoteAccess service enabled
  • - - - - - - Multiple full reboots

What Should Happen?

aCoWork should start successfully. cowork-svc.exe should bind to a listening port so the VM can route API calls through the host proxy. A WinNAT rule should be created to back the HNS NAT network, giving the VM internet access.

Error Messages/Logs

aFrom cowork_vm_node.log (%APPDATA%\Claude\logs\cowork_vm_node.log):

[VM] Network status: CONNECTED
[VM] API reachability: PROBABLY_UNREACHABLE
[VM] API reachability: UNREACHABLE
[VM:network] API is unreachable

Additionally, netstat -ano confirms cowork-svc.exe (PID verified in Task Manager) has zero listening sockets. The MITM proxy is running but not serving.

Get-NetNat returns empty — no WinNAT rule exists to back the HNS NAT network.
Get-HnsNetwork shows cowork-vm-nat exists (Type: NAT, AddressPrefix: 172.16.0.1/24) but the corresponding WinNAT is missing.

VM network diagnostics in the log also attempt macOS-specific commands (/sbin/ifconfig, /usr/sbin/scutil) suggesting incomplete Windows port.

Steps to Reproduce

a1. Install Claude Desktop v1.1.3363.0 (Microsoft Store) on Windows 11 Pro with Hyper-V enabled

  1. Open Claude Desktop and navigate to CoWork
  2. 3. Attempt any task in CoWork
  3. 4. VM boots, reaches CONNECTED status, then API reachability fails: PROBABLY_UNREACHABLE -> UNREACHABLE
  4. 5. Error displayed: "Failed to start Claude's workspace — Can't reach the Claude API from Claude's workspace"
  5. 6. Verify with Get-NetNat — returns empty (no WinNAT rule created)
  6. 7. Verify with netstat -ano filtering by cowork-svc.exe PID — zero listening sockets

This is 100% reproducible on every CoWork launch attempt. Has never worked on this machine (fresh Windows 11 Pro install).

Claude Model

None

Is this a regression?

No, this never worked

Last Working Version

_No response_

Claude Code Version

2.1.41 (Claude Code) / Claude Desktop v1.1.3363.0 (Microsoft Store)

Platform

Anthropic API

Operating System

Windows

Terminal/Shell

PowerShell

Additional Information

aThis appears to be a duplicate of #24945 and #25155. Multiple Windows users report the same root cause: HNS NAT network is created but no WinNAT rule backs it, and cowork-svc.exe does not bind to any listening port.

Hardware: KAMRUI AM21 Mini PC, AMD Ryzen 7 8745HS, 32GB DDR5, Windows 11 Pro Build 26100
Node.js: v24.13.1, npm 11.8.0, Git 2.53.0
Log file: %APPDATA%\Claude\logs\cowork_vm_node.log

View original on GitHub ↗

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