智猩猩AI整理
编辑:没方
过去一年,大模型 Agent 的能力边界正在从会聊天、会写代码,快速扩展到会使用真实软件。其中最典型的场景,就是让大模型直接操作 Chrome 浏览器:打开网页、阅读内容、点击按钮、填写表单、上传文件、下载资料,甚至完成跨网页、多步骤的复杂任务。
但真正做过浏览器 Agent 的人都知道,这件事远没有看起来那么简单。网页不是静态文档,而是充满弹窗、iframe、Shadow DOM、异步加载、登录态、动态按钮和反爬机制的复杂环境。传统方案往往需要提前写好大量选择器、流程脚本和异常处理逻辑;而一旦网页结构变化,Agent 就容易找不到按钮、点错位置、卡在登录页,最后变成一个看似智能、实则很脆弱的自动化脚本。
今天要给大家介绍的开源项目 Browser Harness 正是为了解决这个痛点而生。它基于 Chrome DevTools Protocol (CDP) 直连浏览器,几乎没有中间抽象层;同时具备强大的自愈(self-healing)机制,当大模型在任务执行中发现缺少某个功能,它就实时编辑 helpers.py 文件,补全代码并继续执行。
Browser Harness 的出现,将浏览器自动化从“预先写死流程”推向“边执行、边补能力”的模式,让 Agent 不只调用现成工具,还能在任务中扩展自己的工具箱。目前,该项目在 github 上已收获 7.2k stars。

项目地址:https://github.com/browser-use/browser-harness
01 项目介绍
Browser Harness的理念可以用一句话概括:去框架化,给LLM最大自由。
传统浏览器自动化工具往往构建了厚重的抽象层、预设recipe和严格的rails,这虽然方便入门,却极大限制了大模型的推理能力。一旦网页动态变化或遇到边缘场景,Agent就容易“卡死”。
而 Browser Harness 只做最薄的桥梁,通过 WebSocket 直连 Chrome 的 CDP 协议, Daemon 进程负责管理会话和通信,run.py 加载预置的 helpers工具。
其中,Agent 可以调用 helpers.py 中的浏览器操作函数,也可以在需要时通过 JavaScript 或 raw CDP 获取更底层的页面信息。相比厚重框架,Browser Harness 保留了更接近浏览器原生状态的操作入口。
Browser Harness最核心的创新是自愈机制。举个例子:Agent需要上传文件,却发现helpers.py里没有upload_file()函数。它不会报错退出,而是读取当前helpers代码,理解现有函数的模式,然后实时在文件中添加新函数(比如定位文件输入框、附加文件、提交),并继续执行任务。
这种mid-task编辑能力,让Browser Harness本身成为一个可进化的基础设施。
● agent: 想要上传一个文件 │ ● helpers.py → 文件里缺少了 upload_file() 函数 │ ● agent 修改了浏览器辅助函数文件,并补写该函数。 helpers.py 192 → 199 lines │ + upload_file() ✓ 文件上传成功此外,项目还支持domain-skills自动生成。Agent在处理GitHub、LinkedIn、Amazon等特定网站时,会沉淀出针对性的交互模式,保存在domain-skills/目录中。开发者鼓励由 Agent 在真实任务中总结生成这些技能,而非人工手写,这样更容易记录实际网页中可复用的选择器、交互流程和异常处理经验。
02 使用方法
(1)在 Claude Code 或 Codex 中安装
把下边的 Prompt 复制到 Claude Code 或 Codex 中,让 Agent 先阅读 install.md 完成安装,再读取 SKILL.md 和 helpers.py 进入正常使用流程。
Set up https://github.com/browser-use/browser-harness for me.
Read `install.md` first to install and connect this repo to my real browser. Then read`SKILL.md`for normal usage. Always read`helpers.py` because that is where the functions are. When you open a setup or verification tab, activate it so I can see the active browser tab. After it is installed, open this repository in my browser and, if I am logged in to GitHub, ask me whether you should star it for me as a quick demo that the interaction works — only click the star if I say yes. If I am not logged in, just go to browser-use.com.(2)手动安装
git clone https://github.com/browser-use/browser-harnesscd browser-harnessuv tool install -e .command -v browser-harness安装完成后,第一次连接浏览器可以直接运行:
browser-harness --setup当出现这个页面时,请勾选复选框,以便Agent能够连接到你的浏览器:

连接成功后,可以用一个小脚本验证 browser-harness 是否已经接管浏览器:
uv run browser-harness <<'PY'goto_url("https://github.com/browser-use/browser-harness")wait_for_load()print(page_info())PY实际使用时还要注意安全边界。browser-harness 连接的是用户真实 Chrome,因此不要让 Agent 直接处理密码、验证码、私密页面和高风险操作。SKILL.md 也明确提到,遇到登录墙应停止并询问用户,不要从截图中输入凭据。更合适的方式是由用户自己完成登录授权,Agent 只在授权后的页面里执行明确、可验证的任务。
完整安装教程请参考:
https://github.com/browser-use/browser-harness/blob/main/install.md
03 总结
browser-harness 的开源,正在降低大模型自动化应用的技术门槛。在此之前,大模型操控浏览器需要专业的自动化开发能力,普通开发者难以快速落地。而 browser-harness通过自适应适配、轻量接入的设计,让更多开发者能够快速实现大模型与浏览器的联动,这为浏览器 Agent 的工程落地提供了一种可扩展的基础设施思路。







