安装完OpenClaw后,一个最基本的任务就是能够浏览网页、进行网络搜索或获取网页内容。虽然可以通过内置的 web-search 工具进行网页搜索,但由于通常需要 api key,且适配的搜索引擎如 Brave → Gemini → Grok → Kimi → Perplexity 多为国外网站,获取相应的 api key 往往涉及费用或需要海外支付方式。
因此,更直接的方式是利用 OpenClaw 内置的 browser 工具,它基于与 Playwright 相似的逻辑,来完成网页内容的检索与获取工作,实现真正意义上的“所见即所得”。对于希望在一个专业的 开发者社区 交流此类自动化心得的同行来说,掌握这些底层操作方式尤为重要。
一、在openclaw机器上安装浏览器
在命令行中运行以下命令(直接全部复制,多行运行即可)
# 1. 更新本地软件包索引,确保获取最新的依赖信息
sudo apt update
# 2. 下载适用于 Debian/Ubuntu 的 64位安装包 (.deb 格式)
wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
# 3. 安装 Google Chrome
# apt install 会自动处理并安装缺失的依赖库(如 libgbm1, xdg-utils 等)
sudo apt install -y ./google-chrome-stable_current_amd64.deb
# 4. 安装中文字体,防止中文网页显示为方框(Tofu)
sudo apt install -y fonts-noto-cjk
# 5. 验证安装版本
google-chrome --version
二、浏览器控制方式
OpenClaw 当前支持的浏览器控制方式,本质可以分为 「种架构路径」 :
- 「Managed Browser(托管浏览器)」
- 「Remote CDP(直接协议控制)」
- 「Existing-session via Chrome DevTools MCP(会话接管)」
「什么是CDP?」
**Chrome DevTools Protocol (CDP)** 是一套基于 JSON 和 WebSocket 的底层协议,它开放了调试和控制 Chromium 内核浏览器(如 Chrome 、 Edge )的能力。简单来说,它就像一个能让外部程序与浏览器内核进行 「双向通信」 的“遥控器”。
「什么是Chrome DevTools MCP?」
**Chrome DevTools MCP** 是一种强大的工具,旨在通过 「Model Context Protocol (MCP)」 将 Chrome 开发者工具的功能扩展到 AI 编码助理(如 Gemini、Copilot 等)。它允许这些助理实时调试网页、分析性能并自动化浏览器操作,从而提高代码生成和问题修复的效率。
2.1 「Managed Browser(托管浏览器)」
由 OpenClaw 自动启动并管理一个浏览器实例。
「控制方式」
OpenClaw → 启动 Chromium → CDP → 控制浏览器
「特点如下:」
- 自动启动浏览器
- 自动管理 userDataDir
- 自动建立 CDP 连接
- 完全不依赖用户已有浏览器
「配置如下:」
# openclaw.json
"browser": {
"defaultProfile": "openclaw",
"headless": true,
"noSandbox": true,
"executablePath": "/usr/bin/google-chrome"
}
可通过下面命令行直接修改配置,并启动
# 1. 使用独立浏览器需要此配置
openclaw config set browser.defaultProfile “openclaw”
# 2. 服务器没有显示器,必须开启 无头模式 才能在后台静默运行
openclaw config set browser.headless true
# 3. 在 Linux 服务器(尤其是以 root 身份运行时)必须开启 禁用沙盒模式 ,否则 Chrome 会因权限安全机制无法启动
openclaw config set browser.noSandbox true
# 4. 使用 $(which google-chrome) 自动获取二进制文件的实际安装路径(通常是 /usr/bin/google-chrome),动态设置 Chrome 可执行文件路径
openclaw config set browser.executablePath “$(which google-chrome)”
# 5. 重启 openclaw 网关
openclaw gateway restart
# 6. 为 openclaw 打开浏览器
openclaw browser start
「检验如下:」
openclaw browser --browser-profile openclaw start
openclaw browser --browser-profile openclaw open https://www.baidu.com
# 帮助信息
openclaw browser --browser-profile openclaw --help
通过浏览器状态查看
openclaw browser status
# 输出内容
profile: openclaw
enabled: true
running: true
transport: cdp
cdpPort: 18800
cdpUrl: http://127.0.0.1:18800
browser: custom
detectedBrowser: custom
detectedPath: /usr/bin/google-chrome
profileColor: #FF4500
「openclaw界面」
在 openclaw 的聊天窗口中输入“通过browser获取百度网页首页内容”,输出结果如下:

2.2 「Remote CDP(直接协议控制)」
通过 Chrome DevTools Protocol(CDP) 直接连接浏览器实例进行控制。
「控制方式」
OpenClaw → CDP WebSocket → Chrome
「特点」
- 直接连接浏览器调试端口
- 可控制
tab 、 DOM 、网络、 JS 执行等底层能力
- 支持
attach 已有 tab 或创建新 tab
- 不依赖 MCP 或扩展
「配置如下:」
「cpdUrl中的ip地址和端口可修改成远程ip和端口地址。」
"browser": {
"defaultProfile": "remote",
"profiles": {
"remote": {
"cdpUrl": "http://127.0.01:9222",
"attachOnly": true,
"color": "#00AA00"
}
}
}
可通过如下命令配置
# 1. 使用独立浏览器需要此配置
openclaw config set browser.defaultProfile “remote”
# 2. 远程cdp协议浏览器远程地址,设置 attachOnly(远程必须为 true,禁止启动新浏览器,仅连接到现有实例(远程连接必须为 true))
openclaw config set --json browser.profiles ‘{“remote”:{“cdpUrl”:“http://127.0.0.1:9222”,“attachOnly”:true,“color”:"#00AA00"}}’
# 3. 启动网关
openclaw gateway restart
「注意」 :本种方式要先启动浏览器,并设置 cpd 的远程调试端口为 9222
# 1. 启动局域网内容chrome浏览器,设置远程调试端口
/usr/bin/google-chrome --remote-debugging-port=9222 --user-data-dir=“/tmp/ChromeProfile”
# 2. 输出部分
DevTools listening on ws://127.0.0.1:9222/devtools/browser/9a756c13-fbae-483c-90b9-dbfebd4c2fbb
测试远程端口是否可用
curl http://127.0.0.1:9222/json/version
# 输出内容
{
“Browser”: “Chrome/146.0.7680.177”,
“Protocol-Version”: “1.3”,
“User-Agent”: “Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36”,
“V8-Version”: “14.6.202.31”,
“WebKit-Version”: “537.36 (@ae03f7fb2cf1215853896d6a4c15fdceee2badb7)”,
“webSocketDebuggerUrl”: “ws://127.0.0.1:9222/devtools/browser/9a756c13-fbae-483c-90b9-dbfebd4c2fbb”
}
「检验如下:」
openclaw browser --browser-profile remote start
openclaw browser --browser-profile remote open https://www.baidu.com
# 帮助信息
openclaw browser --browser-profile remote --help
「聊天窗口」
1、在开启 --remote-debugging-port=9222 的浏览器中打开抖音,并登录。
2、在openclaw的聊天窗口输入“获取当前登录抖音用户的作品列表”

通过 Chrome DevTools MCP server 接管一个 「已经打开的浏览器实例」 。属于 CDP 的一层工具化封装( Model Context Protocol )。
同时也是直接控制本地浏览器(共享用户个人profile)
「控制方式」
OpenClaw → MCP Server → CDP → Existing Chrome Session
「特点如下:」
- 不启动新浏览器
- 复用已有
tabs
- 保留登录态
- 需要用户确认
attach
- 通过
MCP 将 CDP 转换为 tool 接口
「配置如下:」
“browser”: {
“defaultProfile”: “user”,
“profiles”: {
“remote”: {
“driver”: “existing-session”,
“attachOnly”: true,
“color”: “#00AA00”
}
}
}
可用如下命令配置
# 1. 使用独立浏览器需要此配置
openclaw config set browser.defaultProfile “user”
# 2. existing-session连接到已经运行的浏览器会话址,设置 attachOnly 禁止启动新浏览器
openclaw config set --json browser.profiles ‘{“user”:{“driver”:“existing-session”,“attachOnly”:true,“color”:"#00AA00"}}’
# 3. 启动网关
openclaw gateway restart
「注意:该方式和前面的remote一样,都需要先启动浏览器」
# 启动本地浏览器
/usr/bin/google-chrome
本地浏览器启动后,要开机远程调试,在打开的浏览器地址栏中输入如下内容
chrome://inspect/#remote-debugging

示例检查命令
openclaw browser --browser-profile user status

「检验如下:」
openclaw browser --browser-profile user start
openclaw browser --browser-profile user open https://www.baidu.com
# 帮助信息
openclaw browser --browser-profile user --help
「聊天窗口」
1、本地浏览器已打开,也完成了前面的设置
2、在openclaw的聊天窗口输入:“打开百度网址,并生成网址快照”

三、快速对比表
| 特性 |
Managed Browser |
Remote CDP |
Existing-session MCP |
| 自动化程度 |
完全自动 |
半自动(需手动启浏览器) |
手动(需用户打开浏览器并授权) |
| 登录态复用 |
❌ |
✅(指定 user-data-dir) |
✅(直接复用当前会话) |
| 无头运行 |
✅ |
可(启动时带 --headless ) |
❌ |
| 远程控制 |
❌(仅本地) |
✅(支持远程 IP) |
❌(通常本地,需网络配置) |
| 安全性 |
中(沙箱可禁用) |
低(端口无认证) |
高(用户确认+同会话) |
| 是否新建浏览器 |
否 |
✅ 是 |
|
| 是否复用已有浏览器 |
⚠️ 可 attach |
❌ |
✅ |
选择建议:
- 「需要无人值守的自动化任务」 → 「Managed Browser」
- 「需要保留登录态且可接受手动启动浏览器」 → 「Remote CDP」
- 「希望 AI 辅助自己日常浏览、调试」 → 「Existing-session MCP」
理解这三种模式的差异,能帮助你根据不同的自动化场景选择最合适的方案,这也是成为一名高效的技术实践者的关键。更多关于配置细节和 技术文档 的探讨,欢迎深入交流。