
Headlong
Headlong 是一个开源代理微 harness,一个核心代码不足 10,000 行 Bash 的完整代理 harness。Headlong 的定义性特征是持久代理性。你的代理在外部交互之间持续思考,其自引导循环受到人类内心独白的启发。
Browser Harness 是一个基于 CDP (Chrome DevTools Protocol) 构建的超轻量级、可自我修复的浏览器自动化框架。它摒弃了传统自动化工具中繁琐的框架、预设配方和严格护栏,通过一条直接的 WebSocket 连接,让 LLM Agent 拥有操作浏览器的完全自由。
Browser Harness 是一个基于 CDP (Chrome DevTools Protocol) 构建的超轻量级、可自我修复的浏览器自动化框架。它摒弃了传统自动化工具中繁琐的框架、预设配方和严格护栏,通过一条直接的 WebSocket 连接,让 LLM Agent 拥有操作浏览器的完全自由。
其核心理念是:Agent 不仅是执行者,更是代码的维护者。 当遇到缺失的功能时,Agent 可以直接编辑 helpers.py 编写新函数,实现真正的“自我修复”和能力扩展。
helpers.py,编写并注入新的辅助函数(如 upload_file()),然后立即调用执行。run.py (~36 行): 启动入口。helpers.py (~195 行): 初始工具集,Agent 的主要编辑对象。admin.py + daemon.py (~361 行): CDP WebSocket 桥接与守护进程。cloud.browser-use.com 获取 API Key。首先,克隆仓库并按照 install.md 指引安装依赖,并将 Harness 连接到你的本地 Chrome 浏览器(需开启远程调试端口)。
git clone https://github.com/browser-use/browser-harness.git
cd browser-harness
pip install -r requirements.txt
# 按照 install.md 启动 Chrome 远程调试模式
将以下提示词粘贴到 Claude Code、Codex 或其他支持代码执行的 AI Agent 中,即可完成初始化设置:
Prompt:
“为我设置 https://github.com/browser-use/browser-harness。
- 先阅读
install.md来安装并将此仓库连接到我的真实浏览器。- 然后阅读
SKILL.md了解日常用法。- 始终阅读
helpers.py,因为那里是函数所在的位置。- 当你打开设置或验证标签页时,激活它,以便我可以看到活动的浏览器标签页。
- 安装完成后,在我的浏览器中打开此仓库。如果我已登录 GitHub,问我是否应该为你 star 它,作为交互工作的快速演示——只有我说“是”时才点击 star。如果我没有登录,就直接访问 browser-use.com。
- 当此页面出现时,勾选复选框,以便代理可以连接到你的浏览器。
- 查看
domain-skills/了解示例任务。”
SKILL.md:了解如何下达指令。helpers.py:这是 Agent 的“工具箱”,你会看到它随着任务复杂度的增加而不断生长出新的功能函数。假设任务是“登录并上传头像”,但初始 helpers.py 中没有上传功能:
helpers.py 第 192-199 行。upload_file(selector, file_path) 函数,利用 CDP 的 DOM.setFileInputFiles 命令。helpers.py,重新加载模块。upload_file(),成功上传。# helpers.py (Agent 自动添加)
def upload_file(selector: str, file_path: str):
"""Uploads a file to the specified input element."""
backend_node_id = get_backend_node_id(selector)
client.send('DOM.setFileInputFiles', {
'files': [file_path],
'backendNodeId': backend_node_id
})
print(f"✓ File uploaded to {selector}")







