[Windows] Zombie --chrome-native-host process blocks Chrome extension reconnection

Resolved 💬 2 comments Opened Feb 24, 2026 by xelth-com Closed Mar 24, 2026

[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:

  1. Detect and kill the stale/orphan process gracefully, OR
  2. 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.

View original on GitHub ↗

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