浏览器控制
OpenClaw 可以运行一个由 AI 代理控制的专用 Chrome/Brave/Edge/Chromium 配置文件,实现安全的网页自动化
你将学到
- OpenClaw 浏览器控制的核心概念和隔离机制
- 如何配置 openclaw 和 chrome 两种浏览器配置文件
- 使用 CLI 命令进行浏览器自动化操作
- 本地控制 vs 远程控制的工作原理
- Chrome 扩展中继模式的设置和使用
- 快照(Snapshot)和引用(Refs)系统
- 安全最佳实践和隐私保护
目录导航
什么是浏览器控制
OpenClaw 可以运行一个由 AI 代理控制的专用 Chrome/Brave/Edge/Chromium 配置文件。它与你的个人浏览器隔离,通过 Gateway 内部的小型本地控制服务进行管理(仅限本地回环)。
初学者视角
- •把它想象成一个单独的、仅供 AI 使用的浏览器
- •openclaw 配置文件不会影响你的个人浏览器配置
- •代理可以在安全的环境中打开标签页、阅读页面、点击和输入
- •默认的 chrome 配置文件通过扩展中继使用系统默认的 Chromium 浏览器;切换到 openclaw 可使用隔离的托管浏览器
你能得到什么
- 一个名为 openclaw 的独立浏览器配置文件(默认为橙色强调)
- 确定性标签页控制(列表/打开/聚焦/关闭)
- 代理操作(点击/输入/拖动/选择)、快照、截图、PDF
- 可选的多配置文件支持(openclaw、work、remote 等)
- 这不是你的日常浏览器——它是用于代理自动化和验证的安全、隔离的界面
快速开始
使用以下命令快速开始使用浏览器控制:
检查浏览器状态
openclaw browser --browser-profile openclaw status启动浏览器
openclaw browser --browser-profile openclaw start打开网页
openclaw browser --browser-profile openclaw open https://example.com获取页面快照
openclaw browser --browser-profile openclaw snapshot如果出现"浏览器已禁用"提示,请在配置中启用并重启 Gateway
浏览器配置文件
OpenClaw 支持两种主要的浏览器配置文件模式:
openclaw - 托管隔离浏览器
由 OpenClaw 管理的独立 Chromium 实例,拥有自己的用户数据目录和 CDP 端口,无需扩展即可工作。这是最安全和隔离的方式。
chrome - 扩展中继
通过本地中继 + Chrome 扩展驱动你现有的 Chrome 标签页,需要安装 OpenClaw 扩展并将其附加到标签页。
提示: 如果默认想使用托管模式,设置 browser.defaultProfile: "openclaw"
配置详解
浏览器设置位于 ~/.openclaw/openclaw.json 配置文件中:
~/.openclaw/openclaw.json
browser:
enabled: true
remoteCdpTimeoutMs: 1500
remoteCdpHandshakeTimeoutMs: 3000
defaultProfile: "chrome"
color: "#FF4500"
headless: false
noSandbox: false
attachOnly: false
executablePath: "/Applications/Brave Browser.app/Contents/MacOS/Brave Browser"
profiles:
openclaw:
cdpPort: 18800
color: "#FF4500"
work:
cdpPort: 18801
color: "#0066CC"
remote:
cdpUrl: "http://10.0.0.42:9222"
color: "#00AA00"浏览器控制服务绑定到从 gateway.port 派生的端口上的回环地址(默认: 18791,即 gateway + 2)
中继使用下一个端口(18792)
如果覆盖 Gateway 端口,派生的浏览器端口也会相应移动
cdpUrl 在未设置时默认为中继端口
attachOnly: true 表示"永不启动本地浏览器;仅在已运行时附加"
color 和每个配置文件的 color 会对浏览器 UI 进行着色,以便你看到哪个配置文件处于活动状态
默认配置文件是 chrome(扩展中继),使用 defaultProfile: "openclaw" 切换到托管浏览器
浏览器选择
在本地启动时,OpenClaw 按顺序自动检测并选择第一个可用的浏览器。你也可以通过 browser.executablePath 覆盖自动检测。
自动检测顺序
如果系统默认浏览器是基于 Chromium 的(Chrome/Brave/Edge 等),OpenClaw 会自动使用它。自动检测顺序:
- •系统默认浏览器(如果是基于 Chromium 的)
- •Chrome
- •Brave
- •Edge
- •Chromium
- •Chrome Canary
macOS
/Applications/Brave Browser.app/Contents/MacOS/Brave BrowserWindows
C:\\Program Files\\BraveSoftware\\Brave-Browser\\Application\\brave.exeLinux
/usr/bin/brave-browser本地与远程控制
OpenClaw 支持两种控制模式:
本地控制(默认)
Gateway 启动本地回环控制服务并可以启动本地浏览器
远程控制(节点主机)
在拥有浏览器的机器上运行节点主机,Gateway 将浏览器操作代理到它
节点浏览器代理(零配置默认)
如果你在拥有浏览器的机器上运行节点主机,OpenClaw 可以自动将浏览器工具调用路由到该节点,无需任何额外的浏览器配置。这是远程 Gateway 的默认路径。
- •节点主机通过代理命令公开其本地浏览器控制服务器
- •配置文件来自节点自己的 browser.profiles 配置(与本地相同)
- •禁用方法:在节点上设置 nodeHost.browserProxy.enabled=false,在 Gateway 上设置 gateway.nodes.browser.mode="off"
Chrome 扩展中继
OpenClaw 还可以通过本地 CDP 中继 + Chrome 扩展驱动你现有的 Chrome 标签页(无需单独的"openclaw" Chrome 实例)。
工作流程
- 1.Gateway 在本地运行(同一机器)或在浏览器机器上运行节点主机
- 2.本地中继服务器在回环 cdpUrl 上监听(默认: http://127.0.0.1:18792)
- 3.点击 OpenClaw Browser Relay 扩展图标附加到标签页(它不会自动附加)
- 4.代理通过正常的浏览器工具控制该标签页,通过选择正确的配置文件
- 5.如果 Gateway 在其他地方运行,请在浏览器机器上运行节点主机,以便 Gateway 可以代理浏览器操作
openclaw browser extension install安装扩展(开发/未打包)
Chrome → chrome://extensions → 启用"开发者模式"启用 Chrome 开发者模式
"加载未打包" → 选择 openclaw browser extension path 打印的目录加载扩展
固定扩展,然后在你想要控制的标签页上点击它(徽章显示 ON)附加扩展到标签页
CLI 命令参考
所有命令都接受 --browser-profile 配置文件名称 来定位特定配置文件,以及 --json 用于机器可读输出(稳定负载)。
基础命令
openclaw browser statusopenclaw browser startopenclaw browser stopopenclaw browser tabsopenclaw browser tabopenclaw browser tab newopenclaw browser tab select 2openclaw browser tab close 2操作命令
openclaw browser open https://example.comopenclaw browser focus abcd1234openclaw browser close abcd1234openclaw browser screenshotopenclaw browser screenshot --full-pageopenclaw browser snapshotopenclaw browser navigate https://example.comopenclaw browser click 12 --double快照命令
openclaw browser snapshot --format aria --limit 200openclaw browser snapshot --interactive --compact --depth 6openclaw browser snapshot --efficientopenclaw browser snapshot --labelsopenclaw browser snapshot --selector "#main" --interactiveopenclaw browser snapshot --frame "iframe#main" --interactiveNote: AI 快照返回带有数字引用的文本快照;角色快照返回带有 [ref=e12] 的基于角色的列表/树
状态管理
openclaw browser cookiesopenclaw browser cookies set session abc123 --url "https://example.com"openclaw browser cookies clearopenclaw browser storage local getopenclaw browser storage local set theme darkopenclaw browser set offline onopenclaw browser set geo 37.7749 -122.4194openclaw browser set timezone America/New_York快照和引用
OpenClaw 支持两种"快照"样式,用于页面元素识别和交互:
AI 快照(数字引用)
使用 openclaw browser snapshot(默认;--format ai)获取带有数字引用的快照
openclaw browser click 12角色快照(角色引用如 e12)
使用 openclaw browser snapshot --interactive(或 --compact、--depth、--selector、--frame)获取带有 [ref=e12] 的基于角色的列表
openclaw browser click e12引用行为说明
- •引用在导航之间不稳定;如果操作失败,请重新运行快照并使用新的引用
- •如果角色快照是使用 --frame 拍摄的,角色引用将限定在该 iframe,直到下一个角色快照
- •click/type 等需要来自快照的引用(数字 12 或角色引用 e12),CSS 选择器故意不支持操作
安全与隐私
核心安全原则
- •浏览器控制仅限本地回环;访问通过 Gateway 的身份验证或节点配对流动
- •将 Gateway 和任何节点主机保持在私有网络(如 Tailscale)上;避免公开暴露
- •将远程 CDP URL/令牌视为秘密;优先使用环境变量或秘密管理器
- •优先使用 HTTPS 端点和短寿命令牌
- •避免将长寿命令牌直接嵌入配置文件
隐私警告
- !openclaw 浏览器配置文件可能包含已登录的会话;将其视为敏感数据
- !browser act kind=evaluate / openclaw browser evaluate 和 wait --fn 在页面上下文中执行任意 JavaScript
- !提示注入可以控制 JavaScript 执行;如果不需要,使用 browser.evaluateEnabled=false 禁用它
- !保持 Gateway/节点主机私有(仅限本地回环或 tailnet)
- !远程 CDP 端点功能强大;请通过隧道保护它们
代理工具
AI 代理获得一个用于浏览器自动化的工具,支持状态/启动/停止/标签页/打开/聚焦/关闭/快照/截图/导航/操作。
browser 工具
所有控制端点接受 ?profile=配置文件名称 参数来选择特定的浏览器配置文件
browser — status/start/stop/tabs/open/focus/close/snapshot/screenshot/navigate/actprofile选择命名浏览器配置文件(openclaw、chrome 或远程 CDP)
target选择浏览器所在位置(sandbox | host | node)。在沙盒会话中,target: host 需要 agents.defaults.sandbox.browser.allowHostControl=true
继续学习
浏览器控制只是 OpenClaw 强大功能的一部分。探索更多教程和文档: