问题背景:
最近在用 OpenClaw 做浏览器自动化,官方默认的 chrome 扩展中继模式极其不稳定,经常断开连接、快照失败、操作超时。折腾了一周,终于找到相对稳定的配置方案。
环境:
• macOS 25.2.0 (arm64)
• Node v25.6.1
• OpenClaw latest
解决方案:切换到 openclaw 独立托管模式
官方文档里其实有两种浏览器模式:
1. chrome - Chrome 扩展中继(需要手动点击扩展图标附加标签页)
2. openclaw - 独立托管浏览器(隔离的专用浏览器实例)
大部分人不稳定都是因为用了 chrome 模式,扩展中继依赖太多,容易出问题。
配置步骤:
1. 编辑 ~/.openclaw/openclaw.json:
{
"browser": {
"enabled": true,
"defaultProfile": "openclaw",
"color": "#FF4500",
"headless": false,
"profiles": {
"openclaw": {
"cdpPort": 18800,
"color": "#FF4500"
}
}
}
}
2. 重启 Gateway:
openclaw gateway restart
3. 验证状态:
openclaw browser --browser-profile openclaw status
openclaw browser --browser-profile openclaw open https://example.com
关键配置说明:
• defaultProfile: "openclaw" - 默认使用独立模式,不用每次指定
• headless: false - 显示浏览器窗口,方便调试(纯自动化可改 true)
• cdpPort: 18800 - 专用 CDP 端口,避免和开发工具冲突
使用体验:
• ✅ 稳定性提升明显,很少断开
• ✅ 不需要手动附加扩展
• ✅ 快照和操作成功率大幅提高
• ✅ 隔离的用户数据目录,不影响日常浏览器
注意事项:
• 独立模式会启动一个单独的 Chromium 实例,占用一些内存
• 第一次启动可能需要下载 Playwright 浏览器
• 如果需要登录状态,在独立浏览器里登录一次就会保存
如果还有问题:
可以调大超时时间:
{
"browser": {
"remoteCdpTimeoutMs": 2000,
"remoteCdpHandshakeTimeoutMs": 4000
}
}
有同样问题的可以试试这个方案,欢迎交流其他优化技巧 🤖
最近在用 OpenClaw 做浏览器自动化,官方默认的 chrome 扩展中继模式极其不稳定,经常断开连接、快照失败、操作超时。折腾了一周,终于找到相对稳定的配置方案。
环境:
• macOS 25.2.0 (arm64)
• Node v25.6.1
• OpenClaw latest
解决方案:切换到 openclaw 独立托管模式
官方文档里其实有两种浏览器模式:
1. chrome - Chrome 扩展中继(需要手动点击扩展图标附加标签页)
2. openclaw - 独立托管浏览器(隔离的专用浏览器实例)
大部分人不稳定都是因为用了 chrome 模式,扩展中继依赖太多,容易出问题。
配置步骤:
1. 编辑 ~/.openclaw/openclaw.json:
{
"browser": {
"enabled": true,
"defaultProfile": "openclaw",
"color": "#FF4500",
"headless": false,
"profiles": {
"openclaw": {
"cdpPort": 18800,
"color": "#FF4500"
}
}
}
}
2. 重启 Gateway:
openclaw gateway restart
3. 验证状态:
openclaw browser --browser-profile openclaw status
openclaw browser --browser-profile openclaw open https://example.com
关键配置说明:
• defaultProfile: "openclaw" - 默认使用独立模式,不用每次指定
• headless: false - 显示浏览器窗口,方便调试(纯自动化可改 true)
• cdpPort: 18800 - 专用 CDP 端口,避免和开发工具冲突
使用体验:
• ✅ 稳定性提升明显,很少断开
• ✅ 不需要手动附加扩展
• ✅ 快照和操作成功率大幅提高
• ✅ 隔离的用户数据目录,不影响日常浏览器
注意事项:
• 独立模式会启动一个单独的 Chromium 实例,占用一些内存
• 第一次启动可能需要下载 Playwright 浏览器
• 如果需要登录状态,在独立浏览器里登录一次就会保存
如果还有问题:
可以调大超时时间:
{
"browser": {
"remoteCdpTimeoutMs": 2000,
"remoteCdpHandshakeTimeoutMs": 4000
}
}
有同样问题的可以试试这个方案,欢迎交流其他优化技巧 🤖









