feat(fix-chrome-connection): extension service-worker probe (Chrome 149)#28
Conversation
Adds Step 2a — before the 0.sock symlink surgery, on Chrome stable >=149 use chrome-devtools-mcp's list_extensions/reload_extension to reload the MCP browser-bridge extension's idle service worker (re-wakes the bridge without touching 0.sock). Fully additive with graceful fallback to Step 2b when the extension tools aren't available. Bumps skill 1.1.3 -> 1.1.4. Gate cleared: local Chrome reached stable 149 (was blocked on <149). Card: https://trello.com/c/0nfcts9J Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
There was a problem hiding this comment.
Code Review
This pull request updates the SKILL.md documentation to version 1.1.4, adding a new "Step 2a: Extension service-worker probe" for Chrome ≥ 149. This step details how to diagnose and restart an idle extension service worker using chrome-devtools-mcp before performing socket surgery. The review feedback correctly identifies that the macOS defaults read command provided in the documentation should omit the .plist extension from the file path to prevent a "domain does not exist" error.
Important
The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.
| **Prereq:** Chrome stable **≥ 149** and `chrome-devtools-mcp` ≥ 1.1.1 started with `--categoryExtensions` (extension tools are pipe-connection only; attach-mode `--categoryExtensions` is unsupported before Chrome 149). Verify Chrome: | ||
|
|
||
| ```bash | ||
| defaults read "/Applications/Google Chrome.app/Contents/Info.plist" CFBundleShortVersionString |
There was a problem hiding this comment.
On macOS, the defaults read command expects the path to the plist file without the .plist extension. Passing Info.plist will cause the command to fail with a "domain does not exist" error because it appends .plist automatically. Removing .plist or using plutil fixes this.
| defaults read "/Applications/Google Chrome.app/Contents/Info.plist" CFBundleShortVersionString | |
| defaults read "/Applications/Google Chrome.app/Contents/Info" CFBundleShortVersionString |
Card 0nfcts9J. Gate cleared — local Chrome reached stable 149.0.7827.54 (was blocked on <149;
chrome-devtools-mcpextension tools are attach-mode-supported only from Chrome 149).Change
Adds Step 2a to
fix-chrome-connectionSKILL.md — before the0.socksymlink surgery (Step 2b), on Chrome ≥149 usechrome-devtools-mcp'slist_extensions/reload_extensionto reload the MCP browser-bridge extension's idle service worker, which re-wakes the bridge without socket surgery. Bumps skill 1.1.3 → 1.1.4.Fully additive + graceful fallback: if Chrome <149 or the extension tools aren't available, the step explicitly routes to Step 2b (the existing baseline repair). It never replaces socket surgery — only tries the cheaper service-worker reload first. Branched from fresh
main.Note on the second AC
attach-mode --categoryExtensions confirmedis a runtime confirmation best done during review/QA on a live Chrome 149 — out of scope for the pipeline (stops at Code Review). The probe is safe to land regardless because of the fallback.🤖 Generated with Claude Code