Chrome Integration Fails on Windows: Bun Canary Crash in Native Host
Chrome Integration Fails on Windows: Bun Canary Crash in Native Host
Description
Chrome extension integration is completely non-functional on Windows due to a crash in the Bun runtime when initializing the chrome native host. The claude.exe --chrome-native-host process crashes with panic(main thread): Internal assertion failure during initialization, preventing any communication between the Chrome extension and Claude Code.
Environment
- OS: Windows 11 (Build 10.0.26200.7623)
- Claude Code Version: 2.1.37 (also tested 2.1.34, 2.1.25 - same issue)
- Bun Version: Canary v1.3.9-canary.51 (d5628db2)
- Chrome Version: 144.0.7559.133
- Node.js: v24.13.0
- Chrome Extension: Installed and authenticated (ID: fcoeoabgfenejglbffodgkkbkcdhcgfn)
Steps to Reproduce
- Install Claude Code on Windows:
npm install -g @anthropic-ai/claude-code - Install Claude in Chrome extension from https://claude.ai/chrome
- Authenticate the extension with the same account as Claude Code
- Run
/chromecommand in Claude Code, or manually test the native host:
``bash``
echo '{"jsonrpc":"2.0","method":"initialize","params":{},"id":1}' | claude.exe --chrome-native-host
Expected Behavior
- Native host should initialize successfully
- Chrome extension should connect to Claude Code
- Browser automation tools should be available
Actual Behavior
The native host process crashes immediately during initialization:
[Claude Chrome Native Host] Initializing...
[Claude Chrome Native Host] Creating socket listener: \\.\pipe\claude-mcp-browser-bridge-admin
============================================================
Bun Canary v1.3.9-canary.51 (d5628db2) Windows x64 (baseline)
Windows v.win11_dt
CPU: sse42 avx avx2 avx512
Args: "C:\Users\admin\.local\bin\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: 69ms | User: 46ms | Sys: 15ms
RSS: 0.30GB | Peak: 0.30GB | Commit: 0.42GB | Faults: 72391 | Machine: 33.35GB
panic(main thread): Internal assertion failure
oh no: Bun has crashed. This indicates a bug in Bun, not your code.
To send a redacted crash report to Bun's team,
please file a GitHub issue using the link below:
https://bun.report/1.3.9/e_2d5628dbEkgggC+s1oU+vvkOu8t/uBysi5uB__qt24tCA0eNrzzCtJLcpLzFFILC5OLSrJzM9TSEvMzCktSgUAiSkKPg
Result:
- Chrome extension shows "Browser extension is not connected"
tabs_context_mcptool fails with connection error- All browser automation functionality is unavailable
Configuration Verification
All Windows configuration is correct:
✅ Registry: HKCU\Software\Google\Chrome\NativeMessagingHosts\com.anthropic.claude_code_browser_extension points to correct JSON
✅ Native Host JSON: C:\Users\admin\AppData\Roaming\Claude Code\ChromeNativeHost\com.anthropic.claude_code_browser_extension.json exists and valid
✅ Batch Script: C:\Users\admin\.claude\chrome\chrome-native-host.bat exists and correctly calls claude.exe --chrome-native-host
✅ Extension ID: Matches in both JSON config and installed extension (fcoeoabgfenejglbffodgkkbkcdhcgfn)
✅ Chrome Extension: Installed, enabled, and authenticated
The issue is purely a Bun runtime crash, not a configuration problem.
Root Cause
The crash occurs when creating the named pipe socket listener on Windows:
Creating socket listener: \\.\pipe\claude-mcp-browser-bridge-admin
This appears to be a bug in Bun Canary v1.3.9-canary.51 specific to Windows named pipe handling.
Attempted Fixes
- ✅ Tested multiple Claude Code versions (2.1.25, 2.1.34, 2.1.37) - all use same Bun build
- ✅ Verified all Windows native messaging configuration
- ✅ Restarted Chrome and Claude Code multiple times
- ✅ Extension reinstalled and re-authenticated
- ❌ No workaround found
Suggested Solutions
- Upgrade Bun: Build Claude Code with a stable Bun release or newer canary version with Windows named pipe fixes
- Alternative IPC: Consider using TCP sockets or other IPC mechanism as fallback on Windows
- Temporary Workaround: Document that users should use WSL2 for Chrome integration until fixed
Impact
Chrome integration feature is completely unusable on Windows, affecting all browser automation capabilities advertised for Claude Code.
Additional Context
- Bun crash report URL: https://bun.report/1.3.9/e_2d5628dbEkgggC+s1oU+vvkOu8t/uBysi5uB__qt24tCA0eNrzzCtJLcpLzFFILC5OLSrJzM9TSEvMzCktSgUAiSkKPg
- This affects all Windows users attempting to use Chrome integration
- Issue is reproducible 100% of the time on Windows
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗