browser-use/browser-harness

Browser Harness | Self-healing harness that enables LLMs to complete any task.

Browser Harness – 将 LLM 直接连接到您的真实浏览器

什么是它 – Browser Harness 是一个轻量级的 Python 库,它允许基于语言模型的智能体通过 Chrome DevTools Protocol (CDP) 控制本地 Chrome/Edge 浏览器。智能体可以即时编写小的辅助函数,并将其存储在自己的工作区中,因此该 harness 会随着每个任务变得越来越聪明。

工作原理

  • 打开一个单一的可编辑 CDP WebSocket (chrome://inspect/#remote-debugging)。
  • 该库提供了一个 skill (browser-harness skill),用于教导 LLM 基础的浏览器工作流(打开标签页、点击、滚动、下载文件等)。
  • 当智能体遇到缺失的辅助函数时,它会将 Python 代码写入 agent-workspace/agent_helpers.py。这些辅助函数在未来的运行中可以重复使用。
  • 一个可选的 MCP (Multi-Chat-Protocol) 服务器 (browser-harness-mcp) 通过 stdio 暴露相同的控制功能,因此任何 MCP 兼容的客户端(Claude Code, Cursor, Devin, ...)都可以驱动浏览器,而无需重新实现 CDP。

核心能力

  • 文件上传 / 下载 – 例如,如演示 GIF 所示,上传文件到网站或抓取视频。
  • 并行 / 扩展浏览 – 使用免费的本地浏览器进行个人任务,或者切换到 Browser Use Cloud 以使用多个浏览器、代理、CAPTCHA 解决等功能。
  • 智能体生成的辅助函数 – LLM 可以在会话期间扩展自己的工具箱,使系统随时间推移而改进。
  • 用户零配置 – 在一次性的“启用远程调试”点击之后,智能体将处理剩余的所有工作。

典型工作流

  1. 使用 uv (Python 3.12) 安装/升级并注册 skill。
  2. 运行 harness;它会打开远程调试页面。
  3. 用户授权连接。
  4. LLM 接收到一个提示词(例如,“打开我的 X profile,找到我最新的 20 个视频帖子,并下载它们。”)并开始发出 CDP 命令。
  5. 如果缺失所需的辅助函数,LLM 会将其写入 agent_helpers.py 并继续。

入门指南

  • 遵循简短的 Setup prompt(复制并粘贴到 Claude Code 或 Codex)来安装包、注册 skill,并询问关于可选的本地录制功能。
  • 详细的安装步骤见 install.md
  • Skill 定义位于 SKILL.md;核心库代码位于 src/browser_harness/

扩展性 – 对于繁重的工作负载,请从 Browser Use Cloud 获取 API key,并让云服务启动多个浏览器,并具备额外功能(隐身模式、代理、CAPTCHA 解决、实时预览)。

社区 – 欢迎针对 Bug 修复、文档或新的智能体生成的领域 skill 进行贡献。请参阅 CONTRIBUTING.md 获取指南。


底线 – Browser Harness 提供了一个实用的桥梁,让现代 LLM 智能体能够与真实的 Web 浏览器进行交互,即时学习新的动作,并可以选择性地扩展到云端托管的浏览器。它是构建 Web-agent 应用的一项具体的基础设施。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目