[Windows] Zombie --chrome-native-host process blocks Chrome extension reconnection
[Windows] Zombie --chrome-native-host process blocks Chrome extension reconnection
Environment
- OS: Windows 11 Pro
- Claude Code: latest
- Chrome extension: 1.0.54
- Shell: Git Bash on Windows
Problem
On Windows, if a claude.exe --chrome-native-host process remains running as a zombie, all subsequent Connect attempts in the Chrome extension fail silently with "Browser extension is not connected". No error is surfaced to the user.
How the zombie is created
The bash timeout command on Windows (Git Bash) does not kill child processes when the timer expires:
echo "{}" | timeout 3 claude.exe --chrome-native-host
# bash exits after 3s, but claude.exe --chrome-native-host keeps running as an orphan
The named pipe \.\pipe\claude-mcp-browser-bridge-{username} stays held by the zombie process.
Root cause
When Chrome tries to connect by launching a new native host instance, that new instance cannot bind to the already-occupied pipe and exits immediately. The extension reports a generic "not connected" with no indication of the real cause.
Workaround
Kill all zombie instances (PowerShell):
Get-WmiObject Win32_Process |
Where-Object CommandLine -like '*chrome-native-host*' |
ForEach-Object { Stop-Process -Id $_.ProcessId -Force }
Then click Connect in the extension — works immediately.
Suggested fix
When the native host starts and detects the pipe is already occupied:
- Detect and kill the stale/orphan process gracefully, OR
- Surface a clear actionable error: "Another browser bridge is already running. Restart Claude Code or run
Stop-Process -Name claude -Force"
Currently the failure is completely silent from the user's perspective.
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗