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 许可。
来源: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 文章一条 websocket 直通你本机的 Chrome(经 chrome://inspect 远程调试授权),LLM 直接驱动真实浏览器,而非托管的隔离实例——为需要『完全自由』的浏览器任务而设计。
来源:README 顶部/Setup prompt;pyproject deps cdp-use/websocketsharness 只给最小能力,缺什么 agent 在执行中现写:发现没有上传文件的 helper,就把它写进 agent-workspace/agent_helpers.py 然后继续完成任务,能力随使用增长。
来源:README 顶部示意图/Architecture(agent_helpers.py)站点专用的选择器、流程和边界情况由 harness 自己写成 domain-skill(github/linkedin/amazon/BOSS直聘 等已内置数十个),下次按域名自动浮现复用;设 BH_DOMAIN_SKILLS=1 启用,社区通过 PR 贡献 agent 生成的技能(强调不要手写)。
来源:README Domain skills/Contributing;agent-workspace/domain-skills/*把一段 setup prompt 贴进 Claude Code 或 Codex,让 agent 读 install.md 自行安装并连上你的浏览器,过程包括打开 chrome://inspect、勾选远程调试、Chrome 144+ 的逐次授权弹窗点 Allow。
来源:README Setup prompt需要 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中心为项目本体,内环 = 核心功能模块,外环 = 关键技术依赖;按 deep.json 中的 core_features 与 tech_stack.key_deps 自动生成
cdp-use (Chrome DevTools Protocol)websocketsfetch-usepillow (截图)适合:①想让 agent 直接操作自己日常登录的真实浏览器、完成预置工具覆盖不到的『任意』网页任务(投递、下单、报销、抓数等)的人;②认同『薄 harness + 自愈学习』理念、想要可读可改的最小底座而非黑盒框架的开发者;③想攒/复用站点专用 playbook(domain skill)的人。不适合:需要严格隔离、合规审计、不允许 agent 自由改本机浏览器与执行任意代码的场景;以及把它用于违反目标网站 ToS 的自动化(投票/刷量/绕验证码等)——这类用法有账号与法律风险,需自担。
来源:README 定位/Contributing/Cloud,结合自动化通用风险推断仓库尚无正式 GitHub Release,以主分支与不断增长的 domain-skills 维护,更新活跃(最近 push 2026-05-20)。核心包刻意保持小体量(约 1k 行/4 文件),迭代主要发生在 agent 工作区与社区贡献的站点技能上。
来源:GitHub 无 releases;pushed_at 2026-05-20;README ArchitectureBrowser Harness 是 browser-use 团队对『agent harness 该多重』这个问题给出的反向答案:与其预写一堆工具,不如给 agent 一个约 1000 行的极薄底座 + 一个它能自由读写的工作区,让它在执行中现写 helper、把站点经验沉淀成 skill,越用越强。这种『薄 + 自愈』的取向很有想法,直连真实浏览器也带来托管方案给不了的自由度。代价同样直接:权限边界大、首次成功率依赖模型当场写对、且操作真实站点的合规与封号风险得自己扛。对认同这套理念、想要可读可改底座的开发者,它很值得研究和试用;对需要隔离、审计和稳定性的严肃自动化,则要谨慎评估安全与合规。
来源:综合 README 理念/架构、tree 工程结构、风险与发布状态的事实判断Browser Harness 是 browser-use 团队做的一个「极薄、可编辑」的浏览器自动化 harness:用一条 websocket 经 CDP(Chrome DevTools Protocol)把 LLM 直接连到你真实的浏览器,中间几乎不加抽象。
browser-harness 的核心功能包括:CDP 直连真实浏览器、自愈式 helper 生成、agent 自动沉淀的 domain skills、一句话安装、交给 agent 自己装、可选 Browser Use Cloud(隐身/无头/子代理)。
约一个月即超过 1.3 万星、1240 fork,热度有两层:一是 browser-use 团队本身在浏览器 agent 领域的强号召力;二是它代表了一种和「堆满预置工具的重 harness」相反的主张——作者用《The Bitter Lesson of Agent Harnesses》立论,认为应该给 agent 极简底座 + 让它自己学,而不是人肉预写一堆工具。
适合:①想让 agent 直接操作自己日常登录的真实浏览器、完成预置工具覆盖不到的『任意』网页任务(投递、下单、报销、抓数等)的人;②认同『薄 harness + 自愈学习』理念、想要可读可改的最小底座而非黑盒框架的开发者;③想攒/复用站点专用 playbook(domain skill)的人。