OpenClaw 浏览器自动化工具深度解析

哈喽,小伙伴们!我是小学子,今天带大家一起深入探索 OpenClaw 的 browser 工具🔍

在日常的自动化任务中,浏览器操作绝对是最常见的需求之一。无论是网页数据抓取、自动化测试,还是 UI 交互验证,浏览器都是我们的得力助手。今天要介绍的 browser 工具,就是 OpenClaw 为我们提供的强大浏览器自动化能力。

什么是 browser 工具?

browser 工具是 OpenClaw 的一级公民工具(first-class agent tool),专门用于控制 OpenClaw 管理的专用浏览器。它取代了过去的 openclaw-* 技能,提供了类型安全、无需shell调用的全新体验。

简单来说,通过 browser 工具,AI Agent 可以像人类一样操作浏览器——点击按钮、输入文字、截图、填表单,甚至处理文件上传和对话框交互。

核心功能一览

browser 工具的功能非常丰富,小学子帮大家整理成几个大类:

1. 浏览器生命周期管理

2. 快照与截图

3. UI 交互操作(核心!)

act 是 browser 工具中最强大的功能,支持丰富的 UI 操作:

4. 其他实用功能

配置文件管理

browser 工具支持多实例配置,通过配置文件(profile)实现:

配置命名规则:

实战配置示例

1. 基础配置

{
  "browser": {
    "enabled": true,
    "defaultProfile": "chrome"
  }
}

2. 多配置实例

{
  "browser": {
    "enabled": true,
    "defaultProfile": "work-browser",
    "profiles": {
      "work-browser": {
        "port": 18800
      },
      "test-browser": {
        "port": 18801
      }
    }
  }
}

3. 禁用浏览器工具

{
  "tools": {
    "deny": ["browser"]
  }
}

使用小技巧

1. 如何获取可交互元素?

使用 snapshot 命令获取页面快照,然后从返回的结果中提取元素引用(ref)。AI 快照会返回数字引用(如 12),角色快照返回带前缀的引用(如 e12)。

{
  "action": "snapshot",
  "profile": "chrome"
}

2. 执行 UI 操作

{
  "action": "act",
  "profile": "chrome",
  "acts": [
    {
      "kind": "click",
      "ref": 12
    },
    {
      "kind": "type",
      "ref": 15,
      "text": "Hello World"
    }
  ]
}

3. 处理文件上传

{
  "action": "upload",
  "profile": "chrome",
  "path": "/path/to/file.pdf",
  "ref": 20
}

也可以使用 inputRef(ARIA 引用)或 element(CSS 选择器)直接定位文件输入框。

4. 避免过度使用 wait

官方建议:默认情况下避免使用 actwait 组合。只有在确实没有可靠的 UI 状态可以等待时,才考虑使用 wait。

远程节点支持

browser 工具支持远程节点:

底层原理

browser 工具基于 Playwright 构建。当系统安装了 Playwright 时,snapshot 命令默认使用 AI 模式,能够生成对 AI 更加友好的页面描述。

对于 JavaScript 渲染的动态页面,官方建议优先使用 browser 工具,而不是 web_fetch(后者更适合静态页面)。

总结

browser 工具是 OpenClaw 自动化能力的重要拼图,它让 AI Agent 能够像人一样操作浏览器。无论是自动化测试、数据采集,还是复杂的 Web 交互流程,browser 工具都能提供稳定、高效的支持。

好了,今天的分享就到这里!小伙伴们如果有关于 browser 工具的问题,欢迎在评论区留言哦~

我是小学子,带你一起探索 AI 技术的无限可能!


参考来源