Chrome extension connection fails: Native messaging host crashes with Bun assertion failure on Windows

Resolved 💬 3 comments Opened Jan 30, 2026 by sytelus Closed Feb 2, 2026

Chrome extension connection fails: Native messaging host crashes with Bun assertion failure on Windows

Bug Description

The Chrome extension ("Claude in Chrome") cannot connect to Claude Code on Windows because the native messaging host crashes immediately with a Bun internal assertion failure.

Environment

  • Claude Code version: 2.1.25
  • Platform: Windows 11 (win32 x64)
  • Bun version: 1.3.5 (bundled)
  • Chrome extension version: 1.0.41
  • Chrome profile: Default

Steps to Reproduce

  1. Install Claude Code on Windows
  2. Install the Claude Chrome extension from https://claude.ai/chrome
  3. Click the Chrome extension icon (side panel opens, tab group is created)
  4. In Claude Code CLI, attempt to use browser automation tools (e.g., tabs_context_mcp)
  5. Connection fails with "Browser extension is not connected"

Expected Behavior

Claude Code should successfully connect to the Chrome extension via native messaging.

Actual Behavior

The native messaging host crashes with a Bun panic before it can complete initialization.

Diagnostic Details

Native Messaging Configuration

The native messaging host is correctly registered:

  • Registry key: HKCU\Software\Google\Chrome\NativeMessagingHosts\com.anthropic.claude_code_browser_extension
  • Manifest: C:\Users\<user>\AppData\Roaming\Claude Code\ChromeNativeHost\com.anthropic.claude_code_browser_extension.json
  • Host script: C:\Users\<user>\.claude\chrome\chrome-native-host.bat

The manifest correctly points to the Claude CLI:

{
  "name": "com.anthropic.claude_code_browser_extension",
  "description": "Claude Code Browser Extension Native Host",
  "path": "C:\\Users\\<user>\\.claude\\chrome\\chrome-native-host.bat",
  "type": "stdio",
  "allowed_origins": [
    "chrome-extension://fcoeoabgfenejglbffodgkkbkcdhcgfn/"
  ]
}

MCP Server Status

The MCP server "claude-in-chrome" connects successfully from Claude Code's perspective:

MCP server "claude-in-chrome": Successfully connected to stdio server in 1123ms
MCP server "claude-in-chrome": Connection established with capabilities: {"hasTools":true,"hasPrompts":false,"hasResources":false,"serverVersion":{"name":"Claude in Chrome","version":"1.0.0"}}

However, tool calls return "Browser extension is not connected" because the extension cannot establish native messaging.

Crash Log

When testing the native host directly:

$ echo '{"type":"ping"}' | claude.exe --chrome-native-host

[Claude Chrome Native Host] Initializing...
[Claude Chrome Native Host] Creating socket listener: \\.\pipe\claude-mcp-browser-bridge-<user>
============================================================
Bun v1.3.5 (1e86cebd) Windows x64 (baseline)
Windows v.win11_dt
CPU: sse42 avx avx2 avx512
Args: "claude.exe" "--chrome-native-host"
Features: Bun.stderr(2) Bun.stdin(2) Bun.stdout(2) jsc standalone_executable
...

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

Bun Crash Report URL

https://bun.report/1.3.5/e_11e86cebEugggC++08F+mvBoxhkf0389e__0shkwCA0eNrzzCtJLcpLzFFILC5OLSrJzM9TSEvMzCktSgUAiSkKPg

Workaround

None known. The native messaging host crashes before any connection can be established.

Additional Context

  • The Chrome extension UI works (side panel opens, tab groups are created)
  • The issue is specifically with the native messaging communication between the extension and Claude Code
  • This appears to be a Bun runtime issue on Windows, possibly related to named pipe handling or stdin/stdout in native messaging mode

View original on GitHub ↗

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