Hotdry.

Article

Browser Harness 轻量架构:LLM 无约束控制的实现路径

探索 harness 模式如何突破框架边界,通过自愈机制与直接 CDP 访问实现 LLM 对浏览器的完全自由度。

2026-04-24ai-systems

当大多数浏览器自动化工具仍在为 LLM 设计层层护栏时,browser-harness 选择了一条截然不同的道路。这个仅有约 592 行 Python 代码的轻量项目,直接构建在 Chrome DevTools Protocol(CDP)之上,向 LLM 交付了几乎无任何约束的浏览器控制能力。与 browser-use 主框架的「DOM 解析 + 动作预测 + 安全沙箱」模式相比,harness 模式的核心价值在于:消除中间层,让智能体自行发现路径、自行编写缺失的工具函数、自我修复执行过程中的错误。

架构哲学:无框架、无配方、无轨道

传统浏览器自动化框架倾向于为 LLM 预定义一套完整的动作空间。例如在 browser-use 主框架中,系统会解析页面 DOM 结构、预测下一步最可能的高权重动作、在沙箱环境中验证操作安全性。这种设计固然降低了模型「失控」的概率,但也意味着当遇到训练数据未曾覆盖的新页面或新交互模式时,模型的能力将受到预设动作空间的严格限制。工程师必须不断更新动作库、扩展 DOM 解析规则,才能维持系统的可用性。

browser-harness 的设计哲学恰恰相反。它的官方 README 用一句话概括了核心思路:「The agent writes what's missing, mid-task. No framework, no recipes, no rails. One websocket to Chrome, nothing between.」这意味着 harness 仅充当一个极简的 CDP 桥接层,将 LLM 的 Python 代码执行请求直接转发给 Chrome 实例。整个系统没有预设的动作集合、没有强制的行为规范、没有需要人工维护的交互模板。LLM 获得的是一张白纸 —— 它可以直接读取 DOM、注入 JavaScript、模拟任意用户操作,只要这些操作在 Chrome 中可执行。

自愈机制:任务执行中的动态工具扩展

harness 模式最引人注目的特性是其「自愈」(self-healing)能力。在传统框架中,如果某个工具函数缺失,任务通常会失败或需要人工介入补充代码。而在 browser-harness 中,当 LLM 在执行过程中发现某项能力缺失 —— 比如上传文件、填写特定表单、处理弹窗 —— 它可以直接修改 helpers.py 文件,动态编写新的工具函数,然后立即在当前任务中调用该函数完成操作。

这种设计背后的逻辑与「Bitter Lesson」理念一脉相承:让模型自行发现和学习的成本,远低于人工预设所有可能场景的成本。harness 的代码结构刻意保持了极简:约 36 行的 run.py 负责启动环境,约 195 行的 helpers.py 存放基础工具函数,约 361 行的 admin.pydaemon.py 处理 CDP WebSocket 桥接。这种极简架构使得 LLM 可以快速理解整个系统的运作方式,并有信心地对代码进行修改。

自由度与风险的天平

无约束控制并非没有代价。当 LLM 获得完全的浏览器访问权限时,它也可能执行预期外的操作 —— 访问敏感页面、泄露数据、进入无限循环或产生不可逆的浏览器状态变更。因此,harness 模式对使用者提出了更高的要求:需要为 LLM 设定明确的任务边界、配置适当的超时与重试策略、并在必要时启用远程浏览器隔离。

值得注意的是,browser-harness 仍然保留了一定程度的安全基础设施。它通过 CDP 与 Chrome 通信,这意味着每个操作都在浏览器进程内执行,不存在传统 Selenium 那样的外部驱动程序注入风险。同时,由于 LLM 修改的是本地 helpers.py 文件而非系统核心代码,因操作失误导致的后果通常可以被限制在单个浏览器会话范围内。

实践选择:何时拥抱 harness 模式

在 browser-use 的产品矩阵中,harness 与主框架并非互相替代的关系,而是面向不同场景的工具选择。当你需要快速构建一个面向特定网站域名的自动化流程,且希望系统具备较高的容错性和可预测性时,主框架的预定义动作库与安全验证机制能够显著降低开发成本。但当你面对的是开放域任务、需要模型在未知环境中自主探索、或者希望智能体能够「学会」新的交互模式并将其沉淀为可复用技能时,harness 模式的灵活性优势则更为突出。

对于 AI 工程团队而言,理解这两种模式的核心差异是做出正确架构决策的前提。harness 模式本质上是一种「信任委托」策略 —— 它相信模型在获得足够信息后能够做出合理决策,并通过自愈机制在实践中不断优化自身能力。这种信任的代价是放弃部分可观测性与即时可控性,但其潜在回报在于:模型不再受限于人类预设的知识边界,而能够真正在任务执行中学习和进化。


资料来源:本文核心事实基于 browser-harness 官方 GitHub 仓库(https://github.com/browser-use/browser-harness)的 README 文档与代码结构说明。

ai-systems