okaa

OpenClaw浏览器自动化方案Chrome DevTools MCP Attach Mode

Chrome DevTools MCP Attach Mode是什么

OpenClaw 现在支持用内置的 profile="user" 连接你本机已经登录中的真实 Chrome 会话,而不是只使用默认的隔离浏览器。这个模式适合 已有登录态、Cookie、现有标签页很重要 的场景。省略 profile 时,OpenClaw 会使用 browser.defaultProfile;默认通常是 openclaw,也就是隔离浏览器。

这个功能解决什么问题

适合解决这两类痛点:

  1. 旧的隔离浏览器模式里,很多网站需要重新登录。
  2. 某些网站在新浏览器环境里更容易再次触发验证码或风控;而真实 Chrome 模式可以直接复用你当前浏览器的登录态和已有会话。这个能力的官方定位就是“当现有登录和 Cookie 很重要时使用 profile="user"”。

使用前提

要使用 profile="user",需要满足这些条件:

配置文件位置

OpenClaw 的配置文件默认路径是:

Copy code~/.openclaw/openclaw.json

如果这个文件不存在,OpenClaw 会使用默认配置。


最简配置方案

如果你只是想让 OpenClaw 默认优先使用真实 Chrome,可以把配置文件写成这样:

Copy code{
  "browser": {
    "enabled": true,
    "defaultProfile": "user"
  }
}

省略 profile 时会走 browser.defaultProfile,而官方说明它默认通常是 openclaw;改成 "user" 后,就会默认走真实 Chrome 模式。


完整一点的配置方案

如果你想明确写出 user profile,可以用这一版:

Copy code{
  "browser": {
    "enabled": true,
    "defaultProfile": "user",
    "profiles": {
      "user": {
        "driver": "existing-session",
        "attachOnly": true,
        "color": "#00AA00"
      }
    }
  }
}

Doctor 文档明确说明,旧的扩展路径迁移后,browser.profiles.*.driver: "extension" 会被规范成 "existing-session";这正是 host-local Chrome MCP attach 模式使用的驱动类型。


改完配置后怎么生效

改完 ~/.openclaw/openclaw.json 后,重启 OpenClaw Gateway,再进行测试。配置文件本身是 Gateway 读取的。


Chrome 侧需要做什么

  1. 打开本机 Google Chrome。
  2. 至少打开一个标签页。
  3. 到下面这个地址启用 remote debugging:
Copy codechrome://inspect/#remote-debugging

官方 Doctor 页面明确把这一步列为真实 Chrome 模式的前置要求。


推荐的检查顺序

1)先跑 Doctor

Copy codeopenclaw doctor

Doctor 会检查:

2)查看浏览器 profiles

Copy codeopenclaw browser profiles

browser CLI 文档明确说明,profile 是命名的浏览器路由配置;内置 profile 包括 openclaw 和 user

3)测试真实 Chrome 是否能列出标签页

Copy codeopenclaw browser --browser-profile user tabs

如果能看到当前本机 Chrome 的标签页,说明基本打通。这个命令是官方 CLI 文档的标准用法。

4)再测试状态

Copy codeopenclaw browser --browser-profile user status

这是验证 profile 是否可达的常用方法,CLI 文档中 --browser-profile <name> 就是用来显式指定 profile 的。


在聊天里怎么调用

如果你是在 Telegram、MacBot 或其他 OpenClaw 聊天入口里调用,建议写得明确一点:

Copy code请调用 browser tool,使用 profile="user",打开 https://www.google.com

原因很简单:官方说明当 profile 被省略时,会使用 browser.defaultProfile;如果你没有改默认值,它大概率还是走隔离浏览器 openclaw,而不是真实 Chrome。


什么时候该用 profile="user"

适合这些场景:


什么时候不该用 profile="user"

不适合这些情况:


常见报错与处理

报错 1:No Chrome tabs found for profile="user"

含义:OpenClaw 看到了本机 Chrome attach 模式,但没有可附着的标签页。

处理方式:

Copy codeopenclaw browser --browser-profile user tabs

官方 Linux 浏览器排障页就是这么写的。

报错 2:attach-only profile 不可达

Gateway Troubleshooting 中提到,如果 attach-only profile 没有可用目标,会出现类似 “Browser attachOnly is enabled … not reachable” 的错误。通常说明 Chrome 侧 remote debugging 还没准备好,或者没有可附着的 live target。

报错 3:版本太低或 Doctor 警告 Chrome 144 以下

Doctor 会在版本低于 Chrome 144 时给提醒。升级 Chrome 后再试。


和 Chrome 扩展模式的区别

如果你看到旧文档或中文文档里仍然提到 chrome profile 和扩展 relay,要注意:


一套可以直接复制给别人的最简步骤

第一步:编辑配置

Copy codenano ~/.openclaw/openclaw.json

填入:

Copy code{
  "browser": {
    "enabled": true,
    "defaultProfile": "user"
  }
}

配置文件路径是官方固定默认路径。

第二步:Chrome 侧准备

Copy codechrome://inspect/#remote-debugging

并启用 remote debugging。

第三步:重启 Gateway

重启 OpenClaw Gateway,让新配置生效。配置由 Gateway 读取。

第四步:运行检查

Copy codeopenclaw doctor
openclaw browser profiles
openclaw browser --browser-profile user tabs
openclaw browser --browser-profile user status

这些都是官方文档中的标准检查路径。

第五步:聊天中调用

Copy code请调用 browser tool,使用 profile="user",打开 https://www.google.com

这样可以避免 OpenClaw 因为默认 profile 仍是 openclaw 而没有使用真实 Chrome。

退出移动版