claude-in-chrome: extension connects in Claude Desktop but not terminal CLI — same Chrome, same extension

Resolved 💬 3 comments Opened Apr 12, 2026 by lukaemon Closed Apr 15, 2026

Bug description

The claude-in-chrome browser extension works correctly when invoked from the Claude macOS desktop app (both Cowork mode and Claude Code mode), but consistently fails with "Browser extension is not connected" when invoked from Claude Code in terminal — same Chrome instance, same extension, same account.

Environment

  • macOS (Darwin 25.4.0)
  • Claude Code CLI (terminal)
  • Claude Desktop app (macOS) — works fine
  • Chrome with claude-in-chrome extension installed and showing connected

Steps to reproduce

  1. Have both Claude Desktop app and Claude Code CLI installed
  2. Install claude-in-chrome extension, log into claude.ai
  3. From Claude Desktop app (Cowork or Claude Code): use any mcp__claude-in-chrome__* tool → works
  4. From terminal Claude Code: use any mcp__claude-in-chrome__* tool → fails with "Browser extension is not connected"

Expected behavior

Terminal Claude Code should be able to connect to the chrome extension the same way the desktop app does.

Actual behavior

Every MCP tool call from terminal CC returns:

Browser extension is not connected. Please ensure the Claude browser extension is installed and running (https://claude.ai/chrome), and that you are logged into claude.ai with the same account as Claude Code.

Analysis

This appears to be the native messaging host conflict documented across multiple issues (#20298, #24593, #21371, #31971, #36471, #41013, #31897). Both Claude Desktop and terminal CC register native messaging host configs claiming the same extension ID. Desktop's registration wins, so Chrome routes the extension connection to Desktop's socket — terminal CC never sees it.

The fact that it works perfectly in Desktop (both Cowork and Claude Code modes) but never in terminal CC, with zero config changes in between, confirms the host registration conflict is the root cause.

Impact

Users who primarily work in terminal Claude Code have no access to browser automation via claude-in-chrome. The workaround of disabling Desktop's native host breaks Desktop's browser tools. There's no way to use both simultaneously or even switch cleanly between them.

View original on GitHub ↗

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