跳转到内容

第12章 浏览器控制与网页工具

一句话:Agent 可以打开浏览器、搜索网页、读取网页内容、甚至操控页面元素——这是它连接互联网信息的关键能力。


OpenClaw 支持三种浏览器运行模式:

模式说明适用场景
"openclaw"OpenClaw 内置的无头浏览器默认,推荐
"user"使用用户本机已安装的浏览器需要登录态的场景
"chrome-relay"通过 Chrome 扩展中继连接系统浏览器需要扩展、toolbar attach 场景

12.2 Snapshot → Ref → Act 核心机制

Section titled “12.2 Snapshot → Ref → Act 核心机制”

Agent 操控浏览器的核心流程:

  1. Snapshot:对当前页面做快照(DOM 结构、文本内容、可交互元素)
  2. Ref:为页面上的每个可交互元素分配一个引用编号
  3. Act:通过引用编号对元素执行操作(点击、输入、滚动等)

这个机制让 Agent 不需要”看到”网页的视觉效果,只需要理解页面结构就能操控。


执行搜索引擎查询:

Agent: 我来帮你搜索一下最新的 Next.js 15 变化。
[调用 web_search: "Next.js 15 new features 2026"]

获取指定 URL 的网页内容:

Agent: 让我读取这篇文章的内容。
[调用 web_fetch: "https://example.com/article"]

Agent 可以在 Canvas 画布上绘制图表、流程图等可视化内容,然后将图片发送给用户。


在无头服务器上,可以连接远程 Chrome 实例。通过 profiles 配置远程 CDP URL:

{
browser: {
enabled: true,
profiles: {
remote: {
cdpUrl: "http://remote-chrome:9222",
},
},
},
}

集成 Browserless 服务,提供可扩展的浏览器实例池:

{
browser: {
enabled: true,
profiles: {
cloud: {
cdpUrl: "https://production-sfo.browserless.io?token=your-token",
},
},
},
}

Agent 的浏览器操作需要注意 SSRF(Server-Side Request Forgery)风险。OpenClaw 内置了 SSRF 防护策略:

  • 默认为信任网络模式dangerouslyAllowPrivateNetwork: true),允许访问内网地址
  • 可设置 dangerouslyAllowPrivateNetwork: false 切换为严格模式,阻止内网访问
  • 严格模式下可通过 hostnameAllowlist 配置例外域名
  • 浏览器导航时会做 SSRF 检查,导航完成后对最终 URL 做二次检查

概念说明
三种模式openclaw(内置)、user(本机浏览器)、chrome-relay(扩展中继)
核心机制Snapshot → Ref → Act
web_search搜索引擎查询
web_fetch获取网页内容
Canvas可视化绘图
安全SSRF 防护,默认信任内网(dangerouslyAllowPrivateNetwork: true

下一章进入 Nodes——让 Agent 操控你的手机和电脑。