第25章 内置浏览器 —— 网页抓取和交互

当前 OpenClaw 的浏览器能力由 Browser (openclaw-managed)、chrome extension relay,以及 agent 侧 browser 工具 / openclaw browser CLI 组成,核心配置块在:

browser

不是插件配置块。

当前浏览器能力是什么

按当前官方文档,可以概括为:

OpenClaw 可以运行一个由 agent 控制的独立 Chrome/Brave/Edge/Chromium profile。openclaw profile 是隔离的托管浏览器;默认 chrome profile 则通过 extension relay 控制用户手动 attach 的现有浏览器标签页。

这个能力有两种主要模式:

  • openclaw profile:受 OpenClaw 管理的隔离浏览器
  • chrome profile:通过 Chrome extension relay 接管你现有浏览器标签页

当前配置写法

配置文件位置仍然是:

~/.openclaw/openclaw.json

浏览器配置示例:

{
  browser: {
    enabled: true,
    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" },
    },
    ssrfPolicy: {
      dangerouslyAllowPrivateNetwork: true,
    },
  },
}

当前 CLI 命令

官方 CLI 文档给出的常用命令是:

openclaw browser status
openclaw browser start
openclaw browser stop
openclaw browser reset-profile
openclaw browser profiles
openclaw browser create-profile --name work --color "#FF5A36"
openclaw browser delete-profile --name work
openclaw browser open https://example.com
openclaw browser tabs
openclaw browser focus <targetId>
openclaw browser close <targetId>
openclaw browser snapshot
openclaw browser screenshot
openclaw browser navigate https://example.com
openclaw browser resize 1280 720
openclaw browser click <ref>
openclaw browser type <ref> "hello"
openclaw browser press Enter
openclaw browser hover <ref>
openclaw browser drag <startRef> <endRef>
openclaw browser select <ref> <values...>
openclaw browser upload <paths...> --ref <ref>
openclaw browser download <ref> report.pdf
openclaw browser waitfordownload report.pdf
openclaw browser fill --fields '{"email":"me@example.com"}'
openclaw browser dialog --accept
openclaw browser wait --text "Done"
openclaw browser evaluate --fn "() => document.title"
openclaw browser console
openclaw browser pdf
openclaw browser highlight <ref>

openclaw 和 chrome 两个 profile

openclaw

这是 OpenClaw 自己管理的隔离浏览器:

  • 独立 user data dir
  • 独立 CDP 端口
  • 不碰你的日常浏览器配置

chrome

这是通过 Chrome extension relay 接到你现有 Chromium 浏览器标签页:

  • 需要安装扩展
  • 需要手动 attach 标签页
  • 更像“借用你当前浏览器”

当前功能边界

浏览器能力现在主要覆盖:

  • 标签页管理
  • 页面 snapshot / 页面结构检查
  • 截图
  • PDF 导出
  • 导航
  • 点击
  • 输入
  • hover / drag / select / upload / download / press
  • wait / evaluate / console / highlight
  • cookies / storage / network / download / state 设置等调试能力

但官方文档并没有把这些能力对外命名成那组旧式动作接口:

  • browser_navigate
  • browser_snapshot
  • browser_click
  • browser_type
  • browser_select
  • browser_back
  • browser_forward

所以博客里不应该继续把这些当成当前官方工具名。

远程浏览器与 node host

当前工程支持:

  • 本地浏览器控制
  • 远程 CDP
  • node host 代理浏览器操作

这意味着 Gateway 不一定要和浏览器跑在同一台机器上。

如果浏览器在另一台机器上,OpenClaw 推荐的方向是:

  • node host 浏览器代理
  • 或远程 CDP profile

SSRF 策略是当前安全重点

浏览器安全在当前工程里不是“allowDomains / blockedDomains 这种旧插件配置”为主,而是:

browser.ssrfPolicy

例如:

{
  browser: {
    ssrfPolicy: {
      dangerouslyAllowPrivateNetwork: false,
    },
  },
}

官方文档还特别说明:

  • 当前默认是 trusted-network model
  • 可以改成严格 public-only 浏览

所以博客里最应该强调的是 SSRF guard,而不是旧式插件白名单。

安装扩展和接管现有 Chrome

如果你要走 chrome relay 模式,官方 CLI 提供:

openclaw browser extension install
openclaw browser extension path

然后再到 chrome://extensions 里启用开发者模式并加载该扩展目录。

这是当前正式文档里的浏览器接管方式。

本章小结

  • 当前浏览器配置在 browser 块,不在 plugins.entries.browser
  • 真实命令面是 openclaw browser ...,覆盖 profile、标签页、snapshot、screenshot、navigate、click、type、press、hover、drag、select、upload、download、wait、evaluate、console、pdf、highlight 等
  • 核心 profile 是 openclaw 和 chrome
  • 当前安全重点是 browser.ssrfPolicy

相关内容

如果这篇文章对你有帮助,欢迎请我喝杯咖啡 ☕
Cygnus Yang 支付宝支付宝
Cygnus Yang 微信微信