browser-harness 是什么?

Browser Harness 是 browser-use 团队做的一个「极薄、可编辑」的浏览器自动化 harness:用一条 websocket 经 CDP(Chrome DevTools Protocol)把 LLM 直接连到你真实的浏览器,中间几乎不加抽象。它的核心理念是自愈——当 agent 执行任务发现缺少某个能力(比如上传文件)时,就当场把缺的 helper 代码写进 agent-workspace/agent_helpers.py,并把站点专用的做法沉淀成 domain-skill,每跑一次 harness 就自我改进一点。整套核心只有约 1000 行、4 个文件。Python,MIT 许可。

⭐ 15,530 Stars 🍴 1,444 Forks Python MIT 作者: browser-use 商业引流:中
来源:README 顶部/Architecture;GitHub browser-use/browser-harness,desc,license MIT 查看 GitHub 仓库 →

为什么值得关注

约一个月即超过 1.3 万星、1240 fork,热度有两层:一是 browser-use 团队本身在浏览器 agent 领域的强号召力;二是它代表了一种和「堆满预置工具的重 harness」相反的主张——作者用《The Bitter Lesson of Agent Harnesses》立论,认为应该给 agent 极简底座 + 让它自己学,而不是人肉预写一堆工具。这种「薄 + 自愈 + 直连真实浏览器」的取向,加上一句很有传播力的『你再也不用自己开浏览器了』,很容易引发讨论。

来源:GitHub 13,467 stars / 1,240 forks,created 2026-04-17;README/链接 Bitter Lesson 文章

核心功能

CDP 直连真实浏览器

一条 websocket 直通你本机的 Chrome(经 chrome://inspect 远程调试授权),LLM 直接驱动真实浏览器,而非托管的隔离实例——为需要『完全自由』的浏览器任务而设计。

来源:README 顶部/Setup prompt;pyproject deps cdp-use/websockets
自愈式 helper 生成

harness 只给最小能力,缺什么 agent 在执行中现写:发现没有上传文件的 helper,就把它写进 agent-workspace/agent_helpers.py 然后继续完成任务,能力随使用增长。

来源:README 顶部示意图/Architecture(agent_helpers.py)
agent 自动沉淀的 domain skills

站点专用的选择器、流程和边界情况由 harness 自己写成 domain-skill(github/linkedin/amazon/BOSS直聘 等已内置数十个),下次按域名自动浮现复用;设 BH_DOMAIN_SKILLS=1 启用,社区通过 PR 贡献 agent 生成的技能(强调不要手写)。

来源:README Domain skills/Contributing;agent-workspace/domain-skills/*
一句话安装、交给 agent 自己装

把一段 setup prompt 贴进 Claude Code 或 Codex,让 agent 读 install.md 自行安装并连上你的浏览器,过程包括打开 chrome://inspect、勾选远程调试、Chrome 144+ 的逐次授权弹窗点 Allow。

来源:README Setup prompt
可选 Browser Use Cloud(隐身/无头/子代理)

需要 stealth、子代理或无头部署时可接 Browser Use Cloud:免费档 3 个并发浏览器、代理、验证码求解等,无需信用卡;可自取 key 或让 agent 按 llms.txt 自助注册。

来源:README Free Browser Use Cloud browsers

技术架构

刻意做小:核心约 1000 行、4 个文件。src/browser_harness/ 是受保护的核心包——run.py(执行入口)、daemon.py(常驻进程/连接管理)、_ipc.py(进程间通信)、helpers.py、admin.py,对外几乎只是『把 LLM 的指令经 CDP 发给 Chrome、把结果回传』这层薄壳;依赖极少(cdp-use 做 CDP、websockets 连 Chrome、fetch-use 取数、pillow 处理截图)。可变的部分都放在 agent-workspace/:agent_helpers.py 是 agent 可自由编辑、增长的 helper 代码,domain-skills/ 是按域名组织、由 agent 自动写就的站点 playbook。文档 install.md(安装)/SKILL.md(日常用法)/AGENTS.md 既给人也给 agent 读。这种『受保护的薄核心 + agent 可写的工作区』分层,正是它『harness 每次运行自我改进』的工程基础。

来源:tree(src/browser_harness/*、agent-workspace/);README Architecture;pyproject deps

项目知识图谱

知识图谱:项目核心节点(中心)+ 核心功能(内环六边形)+ 关键技术依赖(外环 chip) cdp-use (Chrome DevTools Protocol)cdp-use websockets fetch-use pillow (截图)pillow CDP 直连真实浏览器 自愈式 helper 生成 agent 自动沉淀的 domain skillsagent 自动沉淀的 dom… 一句话安装、交给 agent 自己装一句话安装、交给 agen… 可选 Browser Use Cloud(隐身/无头/子代理)可选 Browser Use Cl… browser-harness 项目本体 核心功能 关键依赖

中心为项目本体,内环 = 核心功能模块,外环 = 关键技术依赖;按 deep.json 中的 core_features 与 tech_stack.key_deps 自动生成

技术栈

语言Python (>=3.11)框架极薄 CDP harness(约 1k 行)
cdp-use (Chrome DevTools Protocol)websocketsfetch-usepillow (截图)
本机 Chrome 经远程调试直连(Chrome 144+ 需逐次授权);可选 Browser Use Cloud(隐身/无头/子代理/代理/验证码);通过 Claude Code/Codex 等 agent 驱动
来源:pyproject.toml dependencies;README Setup/Cloud

快速上手

最省事:把 README 给的 setup prompt 贴进 Claude Code 或 Codex——「Set up https://github.com/browser-use/browser-harness for me. Read install.md and follow the steps...」,让 agent 自行安装并连上浏览器。过程中它会打开 chrome://inspect/#remote-debugging,你勾选复选框允许连接,Chrome 144+ 还会弹逐次授权框点 Allow。日常用法见 SKILL.md。想用站点 playbook 设 BH_DOMAIN_SKILLS=1。需要隐身/无头/子代理时去 cloud.browser-use.com 取免费 key 接 Browser Use Cloud。
来源:README Setup prompt/Domain skills/Cloud

使用场景

适合:①想让 agent 直接操作自己日常登录的真实浏览器、完成预置工具覆盖不到的『任意』网页任务(投递、下单、报销、抓数等)的人;②认同『薄 harness + 自愈学习』理念、想要可读可改的最小底座而非黑盒框架的开发者;③想攒/复用站点专用 playbook(domain skill)的人。不适合:需要严格隔离、合规审计、不允许 agent 自由改本机浏览器与执行任意代码的场景;以及把它用于违反目标网站 ToS 的自动化(投票/刷量/绕验证码等)——这类用法有账号与法律风险,需自担。

来源:README 定位/Contributing/Cloud,结合自动化通用风险推断

优势与局限

优势

  • 理念清晰且自洽:极薄核心 + agent 自愈写 helper/skill,契合『让 agent 自己学』的 bitter lesson 主张
  • 核心仅约 1k 行、4 文件、依赖极少,可读可改、没有黑盒,迁移与审查成本低
  • 直连真实浏览器(带登录态),能做托管隔离实例难做的任意任务,自由度高
  • domain-skill 由 agent 自动沉淀并按域名复用,越用越省事,已内置数十个站点
  • browser-use 团队背书 + 可选 Cloud(隐身/无头/子代理)补齐部署与反爬能力

局限

  • 直连本机真实浏览器 + agent 可写任意 helper 代码,权限边界大,存在让 agent 误操作账号/数据的安全风险
  • 自愈式『缺啥写啥』意味着可靠性依赖模型当场写对代码,复杂/陌生站点首次成功率与稳定性波动
  • 用于真实站点的自动化普遍涉及目标网站 ToS、反爬与验证码,合规与封号风险需使用者自负
  • 薄 harness 把复杂度下放给 agent 和 skill,遇到难任务时调试成本可能转移而非消失
  • 尚无正式 Release、仍早期;隐身/无头等进阶能力依赖 Browser Use Cloud(含付费层)
来源:README 架构/Cloud/理念;自动化与浏览器直连的风险推断;releases 查询为空

最新版本

仓库尚无正式 GitHub Release,以主分支与不断增长的 domain-skills 维护,更新活跃(最近 push 2026-05-20)。核心包刻意保持小体量(约 1k 行/4 文件),迭代主要发生在 agent 工作区与社区贡献的站点技能上。

来源:GitHub 无 releases;pushed_at 2026-05-20;README Architecture

总结评价

Browser Harness 是 browser-use 团队对『agent harness 该多重』这个问题给出的反向答案:与其预写一堆工具,不如给 agent 一个约 1000 行的极薄底座 + 一个它能自由读写的工作区,让它在执行中现写 helper、把站点经验沉淀成 skill,越用越强。这种『薄 + 自愈』的取向很有想法,直连真实浏览器也带来托管方案给不了的自由度。代价同样直接:权限边界大、首次成功率依赖模型当场写对、且操作真实站点的合规与封号风险得自己扛。对认同这套理念、想要可读可改底座的开发者,它很值得研究和试用;对需要隔离、审计和稳定性的严肃自动化,则要谨慎评估安全与合规。

来源:综合 README 理念/架构、tree 工程结构、风险与发布状态的事实判断

常见问题

browser-harness 是什么?

Browser Harness 是 browser-use 团队做的一个「极薄、可编辑」的浏览器自动化 harness:用一条 websocket 经 CDP(Chrome DevTools Protocol)把 LLM 直接连到你真实的浏览器,中间几乎不加抽象。

browser-harness 有哪些核心功能?

browser-harness 的核心功能包括:CDP 直连真实浏览器、自愈式 helper 生成、agent 自动沉淀的 domain skills、一句话安装、交给 agent 自己装、可选 Browser Use Cloud(隐身/无头/子代理)。

browser-harness 为什么最近很受关注?

约一个月即超过 1.3 万星、1240 fork,热度有两层:一是 browser-use 团队本身在浏览器 agent 领域的强号召力;二是它代表了一种和「堆满预置工具的重 harness」相反的主张——作者用《The Bitter Lesson of Agent Harnesses》立论,认为应该给 agent 极简底座 + 让它自己学,而不是人肉预写一堆工具。

browser-harness 适合哪些使用场景?

适合:①想让 agent 直接操作自己日常登录的真实浏览器、完成预置工具覆盖不到的『任意』网页任务(投递、下单、报销、抓数等)的人;②认同『薄 harness + 自愈学习』理念、想要可读可改的最小底座而非黑盒框架的开发者;③想攒/复用站点专用 playbook(domain skill)的人。

透明度声明
本页内容由 AI(大语言模型)基于以下公开材料自动生成:GitHub README、代码目录结构、依赖文件、Release 信息。 分析时间: 2026-05-22 18:14. 质量评分: 100/100.

数据来源:README、GitHub API、依赖文件