Claude in Chrome: native host crashes on startup (Bun internal assertion failure) on Windows

Resolved 💬 5 comments Opened Feb 6, 2026 by teatimedev Closed Mar 13, 2026

Bug Description

The Claude in Chrome MCP server fails to connect because claude.exe --chrome-native-host crashes immediately on startup with a Bun internal assertion failure (exit code 3).

When attempting to use any claude-in-chrome MCP tool, the error returned is:

Browser extension is not connected. Please ensure the Claude browser extension is installed and running...

Environment

  • Claude Code version: 2.1.34
  • OS: Windows 11 (win32)
  • Chrome extension: Claude v1.0.45 (extension ID: fcoeoabgfenejglbffodgkkbkcdhcgfn)
  • Bun version (bundled): 1.3.5

Verified Working Setup

All of the following have been confirmed correct:

  • Chrome extension is installed and enabled in the Default profile
  • Registry key HKCU\Software\Google\Chrome\NativeMessagingHosts\com.anthropic.claude_code_browser_extension exists and points to valid manifest
  • Native messaging manifest at %APPDATA%\Claude Code\ChromeNativeHost\com.anthropic.claude_code_browser_extension.json is valid JSON with correct extension ID in allowed_origins
  • The manifest's path points to %USERPROFILE%\.claude\chrome\chrome-native-host.bat which exists
  • The bat file correctly invokes claude.exe --chrome-native-host
  • claude.exe is found and functional (claude --version works)

Crash Output

Running claude.exe --chrome-native-host directly produces:

[Claude Chrome Native Host] Initializing...
[Claude Chrome Native Host] Creating socket listener: \\.\pipe\claude-mcp-browser-bridge-<USERNAME>
============================================================
Bun v1.3.5 (1e86cebd) Windows x64 (baseline)
Windows v.win11_ge
CPU: sse42 avx avx2
Args: "<path-to>\claude.exe" "--chrome-native-host"
Features: Bun.stdin(2) jsc standalone_executable 
Builtins: "bun:main" "node:buffer" "node:child_process" "node:crypto" "node:fs" "node:fs/promises" "node:net" "node:os" "node:path" "node:process" "node:stream" "node:timers/promises" "node:url" "node:util" 
Elapsed: 275ms | User: 0ms | Sys: 15ms
RSS: 0.32GB | Peak: 0.32GB | Commit: 0.29GB | Faults: 79423 | Machine: 33.95GB

panic(main thread): Internal assertion failure
oh no: Bun has crashed. This indicates a bug in Bun, not your code.

Exit code: 3

Bun crash report link: https://bun.report/1.3.5/e_11e86cebEkgggC++08F+mvBoxhkf0389e__0shkwCA0eNrzzCtJLcpLzFFILC5OLSrJzM9TSEvMzCktSgUAiSkKPg

Additional Notes

  • The chrome-native-host.bat file has LF line endings instead of CRLF (may or may not be relevant — the bat file does execute successfully before the crash occurs)
  • The Claude Desktop native messaging manifest (com.anthropic.claude_browser_extension) also has a stale path pointing to an old app version which no longer has chrome-native-host.exe (newer installed versions do have it), but this is a separate issue from the Claude Code crash
  • Reinstalling the Chrome extension, logging in/out of Claude and Chrome multiple times has not resolved the issue

Steps to Reproduce

  1. Install Claude Code 2.1.34 on Windows 11
  2. Install Claude Chrome extension v1.0.45
  3. Ensure native messaging is set up (registry + manifest)
  4. Run claude.exe --chrome-native-host or attempt to use any claude-in-chrome MCP tool
  5. Observe Bun crash with internal assertion failure

Expected Behavior

The native host should start successfully and maintain a connection to the Chrome extension via the named pipe.

View original on GitHub ↗

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