AIHawk – AI 浏览器代理
开源 AI 浏览器代理:用自然语言操作真实浏览器,自主完成网页浏览、点击、输入与阅读任务。
证据显示:密钥处理谨慎(从环境变量中移除,测试验证),默认绑定回环地址,代理和种子选项明确。但缺少用户确认机制(如高风险操作前确认),外部影响(如自动提交表单)未明确限制,回滚能力未提及。依赖安全仅声明版本下限,无漏洞扫描证据。
测试覆盖了循环、工具调用顺序、错误处理,但未覆盖真实浏览器运行。依赖版本有下限,但未验证可用性。失败消息在测试中有部分覆盖,但真实场景未验证。
明确支持Windows和Linux,不支持macOS,有清晰的受众和场景描述。能力边界通过工具列表和文档说明,但未明确限制自动操作范围。触发精度通过自然语言指令,但未验证。环境适配良好,有代理和种子选项。
信息架构清晰,README和wiki组织良好。安装说明详细,但未提供快速开始示例。命名稳定,但版本变更日志缺失。已知限制部分提及,但未全面。许可证明确为MIT,但历史版本为AGPL-3.0。维护责任明确,但未验证。
输出可用性高,提供UI和CLI。边际价值明显,自动化浏览器任务。成本效益合理,但依赖外部模型和浏览器下载。
声明与代码和测试部分对应,但外部报道未验证。事实与推断分离良好,但跨来源验证不足。
- 未验证发布者身份,需谨慎对待。
- 自动浏览器操作可能违反网站条款,需用户自行负责。
- 依赖外部模型和浏览器下载,可能引入供应链风险。
这个 Agent 能做什么,适合哪些场景?
AIHawk 是一个开源的 AI 浏览器代理,提供一个经过专门改装的 Firefox 浏览器,能够根据用户的自然语言指令自主浏览网页、点击按钮、输入文本并阅读页面内容。它通过 MCP(模型上下文协议)服务器与 AI 助手集成,支持 Claude Code、Codex 和 Gemini CLI 等工具,也可作为独立 UI 使用。该项目由 AIHawk(用户界面)、invisible-playwright-mcp(MCP 服务器)和 invisible_playwright(Playwright API 引擎)等组件组成。它需要 Python 3.11 或更高版本,且仅支持 Windows 和 Linux,不支持 macOS。浏览器本身约 250 MB,需单独下载。AIHawk 可通过命令行使用 uvx 命令启动,并支持多种配置选项,如模型选择、代理设置和用户配置文件目录。
AIHawk 接收用户用自然语言描述的任务,例如“访问 news.ycombinator.com 并给出前五个标题”,然后驱动一个经过特殊改装的 Firefox 版本来执行任务。它模拟人类操作:移动指针、按下按键、点击日历控件等,而不用 JavaScript 直接设置表单字段,以避免被网站检测。用户可以选择两种使用方式:一是通过 MCP 将浏览器添加到已支持的 AI 助手(如 Claude Code、Codex、Gemini CLI)中,使用命令如 claude mcp add --scope user stealth -- uvx invisible-playwright-mcp;二是使用独立的 UI 界面,执行 uvx aihawk ui --openrouter-key sk-or-...,在浏览器中打开 http://127.0.0.1:8765 进行操作。该工具支持 OpenRouter 的模型,默认使用 z-ai/glm-4.6,也可通过 --model 参数指定其他模型。它支持代理设置、浏览器二进制文件指定、随机种子以保持身份一致、用户配置目录以保留登录状态等选项。
- 开发者希望在其 Claude Code 或 Codex 环境中集成一个浏览器 MCP 服务器,以便让 AI 助手直接访问和操作网页,先从安装
uvx invisible-playwright fetch下载浏览器开始。 - 求职者使用 AIHawk 自动在招聘网站上搜索职位、填写申请表并提交,但需注意网站的服务条款和人工审核结果的必要性。
- 从事线索生成的市场人员利用 AIHawk 浏览潜在客户网站,提取联系信息并整理成报告,节省手动浏览的时间。
- 研究人员需要从特定网页收集数据,例如新闻标题、价格信息或评论,使用 AIHawk 的自然语言指令进行批量抓取。
- 个人助理场景中,用户让 AIHawk 在日历上预约行程、在线订购商品等,通过浏览器完成操作,且可观察整个过程。
- 任何需要使用真实浏览器操作但不想编写代码而偏好自然语言指令的用户,可以通过独立 UI 界面直观地观看浏览器执行任务。
这个 Agent 有哪些优点和局限?
- 支持多种 AI 助手客户端,通过 MCP 协议可无缝集成到 Claude Code、Codex、Gemini CLI 等工具,而不仅限于单一平台。
- 独立 UI 提供实时可视化,用户能看到浏览器在做什么,便于监控和调试。
- 使用经过改装的 Firefox,采用模拟人类行为的方式操作页面,能降低被网站检测为机器人的风险。
- 通过种子(seed)和浏览器指纹技术,支持保持一致的浏览器身份,并可利用代理来更改地理位置。
- 不支持 macOS,只限于 Windows 和 Linux 平台,限制了跨平台部署。
- 依赖 OpenRouter API 提供模型,如果没有 OpenRouter 密钥就无法使用独立 UI 模式。
- 浏览器引擎下载体积大(约 250 MB),首次请求时可能超时且错误信息不明确。
- 自动化操作网站可能违反网站服务条款,且提交内容需要人工审核,存在合规风险。
如何安装或部署这个 Agent?
需要 Python 3.11+,且操作系统为 Windows (x86_64) 或 Linux (x86_64/arm64),不支持 macOS。首先安装 uv:Linux 使用 curl -LsSf https://astral.sh/uv/install.sh | sh,Windows 使用 powershell -c "irm https://astral.sh/uv/install.ps1 | iex"。然后可以按需获取浏览器引擎:uvx invisible-playwright fetch。安装后,若要将浏览器作为 MCP 服务器添加,使用如 claude mcp add --scope user stealth -- uvx invisible-playwright-mcp(根据客户端不同,配置可能不同)。
如何使用这个 Agent?
若使用独立 UI,运行 uvx aihawk ui --openrouter-key sk-or-...,然后打开 http://127.0.0.1:8765,在左侧输入任务描述,右侧可实时观看浏览器操作。若使用现有的 AI 助手,先添加 MCP 服务器如前所述,然后在助手窗口中输入自然语言指令,如“去 news.ycombinator.com 给我前五个标题”。首次请求时浏览器会自动下载(约占 250 MB),可能较慢。可指定模型,使用 --model openrouter-model-id 或设置环境变量 AIHAWK_MODEL,默认是 z-ai/glm-4.6。也可通过命令行 --proxy 参数或环境变量配置代理。还可通过 --profile-dir 保存登录状态,使用 --seed 固定浏览器身份。
这个 Agent 与同类方案有什么区别?
该仓库的 wiki 中提到了 AI 浏览器代理的格局和对比,以及 OpenAI Operator 的情况,但未在给定文本中明确对比具体替代品。
常见问题
AIHawk 是否支持 macOS?
使用 AIHawk 需要编程知识吗?
AIHawk 如何避免使用 API 而改用浏览器?
第一次使用时浏览器下载失败怎么办?
uvx invisible-playwright fetch 提前下载,以避免首次请求超时。