写了个代理管住 Chrome 调试管道,MCP 不再偷走 macOS 焦点
ravann4 · reddit · 2026-10-02
问题
在 macOS 上,任何通过 Chrome 调试端口(WebSocket)连接的工具都会激活 Chrome 窗口——chrome-devtools-mcp 和 Playwright MCP 的扩展模式都会中招,打字打到一半 Chrome 就跳到最前面,且没有 bringToFront: false 类设置能解决。
方案
作者发现用 --remote-debugging-pipe 启动 Chrome 不会激活窗口,但 pipe 只能被启动 Chrome 的那个进程使用。于是这个代理充当启动者:以 pipe 方式拉起 Chrome,再对外暴露与 --remote-debugging-port 完全相同的 HTTP/WebSocket 接口(//version、//list 等),chrome-devtools-mcp 通过 --browserUrl 即可无感接入,多个客户端还能共享同一管道(代理负责重映射 request id 并路由响应)。
其他细节
- 重写 Target.createTarget 为 background: true 并丢弃 Page.bringToFront,新标签页在后台打开
- 拒绝带 Origin 头和非 localhost Host 的 WebSocket 升级,防 DNS rebinding 攻击
- 提供 CLI 为每个 Chrome profile(如 chrome-work / chrome-personal)装独立代理并注册 MCP server,还带 Claude Code 插件和 skill
- 限制:仅 macOS、用 profile 副本运行(新登录不同步)、扩展禁用、Playwright MCP 无法接入
基于 mimkorn/chrome-pipe-proxy 二次开发,约 500 行 Node 代码,MIT 协议。
「编程与Agent」频道最新
- 开发者实测:AI 连续 2 小时改进引擎并自建对比工具,用量仅涨 2% — Dimillian · 2026-10-02
- 每次在 Claude Code 里点下「允许」的我,网友梗图引共鸣 — aishashok14 · 2026-10-02
- 微软 Autopilot 并非 Scout 2.0:私有预览,迁入 Foundry 云端 agent 平台 — pswider · 2026-10-02
- 研究者借 AI 生成 PoC 挖出 Ghost CVSS 8.8 内存破坏漏洞 — DanielLockyer · 2026-10-02
- Opus 5.5 把 Minecraft 塞进 Slime Rancher,改写 mod 黄金时代 — Angaisb_ · 2026-10-02
- tekbog 长文拆解 AI 编码的 harness 工程 — tekbog · 2026-10-02