Agent-E 网页自动化助手

用自然语言完成网页检索、表单填写和跨步骤浏览器操作。

Star 数
★ 1.3k
最近更新
4 个月前
License
MIT
主语言
Python

30 秒速览

可在哪里用
通用 · 跨平台OpenAI API
开始前需要
Python 3.10+uvAG2Google Chrome or PlaywrightShell / 命令行网络访问本地文件系统
典型场景
需要重复录入网页表单的运营人员,可让 Agent-E 从已有资料中取值、填写字段,并在提交前等待人工检查。
主要局限
当前重点是浏览器而非完整桌面自动化,表单支持不含 PDF;Google Docs、Sheets、Slides 和 Gmail 等画布式应用仍列在待办事项中。

这个 Agent 能做什么,适合哪些场景?

Agent-E 是基于 AG2 的自托管计算机操作系统,目前将能力集中在浏览器自动化。其开源架构包含负责执行技能的 User proxy 和掌握浏览器技能的 Browser navigation agent,并以感知技能和动作技能组合任务。系统从浏览器无障碍树提取并蒸馏 DOM,为模型提供文本、输入控件或全部字段的紧凑视图,再执行点击、输入和打开网址等操作。用户既可通过浏览器中的聊天界面提交自然语言命令,也可运行 FastAPI 服务,通过 `/execute_task` 接收命令并返回流式结果。它适合可由网页交互完成的检索和操作流程,但不是通用桌面自动化成品,对动态网页、单标签页、Shadow DOM、PDF 和画布式应用仍有明确限制。

Agent-E 接收自然语言任务,由 AG2 驱动的代理选择并执行技能。geturlget_dom_with_content_type 和可选的 get_user_input 用于读取当前网址、网页内容与用户反馈;clickenter_textbulk_enter_textenter_text_and_clickopenurl 用于操作网页。get_dom_with_content_type 可返回 text_onlyinput_fieldsall_fields,底层优先使用 DOM Accessibility Tree,并给元素注入 mmid,以便生成稳定的 DOM 查询选择器。每项技能以自然语言描述执行结果,使代理能够判断上下文并调整后续步骤。任务可以从浏览器聊天界面启动,也可以发送到 FastAPI 的 POST /execute_task;API 请求还可分别覆盖 planner_agentbrowser_nav_agentllm_config。运行过程会改变浏览器页面和表单状态,并可按配置将聊天日志写入文件或标准输出。

  1. 需要重复录入网页表单的运营人员,可让 Agent-E 从已有资料中取值、填写字段,并在提交前等待人工检查。
  2. 电商研究或采购人员可要求它搜索商品、按畅销度或价格排序、进入商品页并执行加入购物车等浏览器步骤。
  3. 研究人员可让它访问新闻、体育、大学或本地商家网站,定位指定内容并汇总网页中可见的信息。
  4. 项目管理团队可用自然语言导航 JIRA 等网页平台并筛选问题,减少重复的页面操作。
  5. 开发团队可通过自托管 FastAPI 端点把网页任务嵌入内部流程,并为 planner 和 browser navigation agent 分别传入模型配置。
  6. 需要验证浏览器代理行为的贡献者可使用 test/tasks 中的 JSON 任务,通过 python -m test.run_tests 在真实网站上运行测试。

如何安装或部署这个 Agent?

运行环境需要 Python 3.10+,文档推荐 Python 3.11。macOS/Linux 可在项目根目录运行 ./install.sh,若希望直接安装 Playwright 支持则运行 ./install.sh -p;Windows PowerShell 对应运行 .\win_install.ps1.\win_install.ps1 -p。手动安装时,先安装 uv,然后执行 uv venv --python 3.11source .venv/bin/activateuv pip compile pyproject.toml -o requirements.txtuv pip install -r requirements.txt;Windows 使用 .venv\Scripts\activate。没有本地 Google Chrome 时,可再运行 playwright install。复制配置文件:cp .env-example .env,然后至少设置 AUTOGEN_MODEL_NAMEAUTOGEN_MODEL_API_KEY;非 OpenAI 服务还应配置 AUTOGEN_MODEL_BASE_URL,并按提供方需要设置 AUTOGEN_MODEL_API_TYPEAUTOGEN_MODEL_API_VERSION。若使用本地 Chrome,还需从 chrome://version/ 获取配置文件路径并设置 BROWSER_STORAGE_DIR

如何使用这个 Agent?

完成配置后,在项目根目录运行 python -m ae.main;macOS 遇到输出阻塞问题时可运行 python -u -m ae.main。浏览器出现 Agent-E 图标后,打开聊天界面并输入命令,例如 open youtube and search for funny cat videos。若需程序化调用,在 Linux/macOS 运行 uvicorn ae.server.api_routes:app --reload --loop asyncio;Windows 使用 uvicorn ae.server.api_routes:app --loop asyncio。首个 API 请求可执行:curl --location 'http://127.0.0.1:8000/execute_task' --header 'Content-Type: application/json' --data '{"command":"go to espn, look for soccer news, report the names of the most recent soccer champs"}'。也可以在请求中加入 llm_config,分别配置 planner_agentbrowser_nav_agent。完整测试运行命令为 python -m test.run_tests

这个 Agent 有哪些优点和局限?

优点
  • DOM Distillation 可按文本、输入控件或全部字段压缩无障碍树,减少直接把完整 HTML 交给模型造成的噪声。
  • 浏览器能力被限制在明确的感知和动作技能中,而不是让模型任意生成并执行代码,执行边界更容易审查。
  • 同时提供交互式浏览器入口和可自托管的 FastAPI /execute_task 接口,既可人工使用,也可嵌入程序化流程。
  • 模型配置支持 OpenAI,也支持自定义兼容端点;文档还给出了通过 LiteLLM 和 Ollama连接本地开源模型的路径。
  • 仓库包含基于真实网站的 JSON 测试任务、分段执行参数和逐操作截图选项,便于复现与评估网页流程。
局限
  • 当前重点是浏览器而非完整桌面自动化,表单支持不含 PDF;Google Docs、Sheets、Slides 和 Gmail 等画布式应用仍列在待办事项中。
  • 文档明确称目前只能可靠处理一个标签页;打开其他标签页会丢失状态并可能要求重新开始。
  • 真实网站持续变化会导致测试结果不稳定,复杂下拉菜单、Shadow DOM 和 DOM 蒸馏遗漏也属于已记录的改进方向。
  • 运行需要 Python 环境、模型服务配置以及 Chrome 或 Playwright,采用远程模型时还会产生网络与提供方依赖。
  • LiteLLM/Ollama 本地模型路径虽有文档,但尚未经过充分测试,迁移到较弱或非 OpenAI 模型可能需要调整提示或重构技能。

这个 Agent 与同类方案有什么区别?

与相关度最高的同类 agent 并排比较关键指标。

Agent 源码审查 Star 最近更新 主语言 完整支持的平台
Agent-E 网页自动化助手 当前 48 · 缺口较多 ★ 1.3k 4 个月前 Python OpenAI API
Camoufox CLI 60 · 存在缺口 ★ 349 1 个月前 Python Codex · Claude Code
Auto Browser 62 · 存在缺口 ★ 793 1 个月前 Python OpenAI API · Claude API
Heym 46 · 缺口较多 ★ 1.3k 今天 Python Codex · Claude.ai

FollowAgents 如何评估这个 Agent?

FollowAgents 源码审查 · FARS-2.1
缺口较多
48/ 100 五分制 2.4 / 5
信任安全 8/29
可靠稳定 9/14
适用触发 12/18
规范维护 9/18
有效结果 7/13
证据核验 3/8
查看各维度的扣分理由
信任安全8 / 29 · 1.4/5

证据显示:README 描述了用户确认机制(如等待用户审查后提交表单),以及技能库设计旨在避免执行恶意代码。但未提供权限最小化的具体实现细节,也未说明数据流透明性。扣分原因:缺乏对敏感数据处理的具体说明,依赖安全性未提及漏洞扫描,外部影响(如浏览器自动化)未明确风险控制,回滚机制完全缺失。

可靠稳定9 / 14 · 3.2/5

证据显示:README 和测试文件提供了测试运行方法,但未提供测试结果或一致性保证。依赖列表完整,但未说明依赖的可用性保障。失败消息方面,README 提供了常见问题的解决方案,但未系统化。扣分原因:自一致性缺乏测试证据,依赖可用性未验证,失败消息覆盖不全。

适用触发12 / 18 · 3.3/5

证据显示:README 描述了多种使用场景(如表单填写、搜索、购物等),并提供了环境变量配置和自定义技能目录。但未明确能力边界(如不支持 PDF 表单),触发精度依赖 LLM 理解,环境适配仅提及 macOS 和 Windows 的特定问题。扣分原因:能力边界描述不完整,触发精度未验证,环境适配未覆盖所有平台。

规范维护9 / 18 · 2.5/5

证据显示:README 结构清晰,包含安装、配置、运行、测试等章节,提供了示例命令和常见问题。但未提供版本变更日志,命名稳定性未说明,已知限制仅提及 DOM 蒸馏可能丢失信息。扣分原因:版本变更日志缺失,命名稳定性未说明,已知限制不全面。

有效结果7 / 13 · 2.7/5

证据显示:README 提供了多种使用示例和演示视频,展示了实际应用价值。但未提供性能基准或成本分析,成本效益未量化。扣分原因:成本效益缺乏数据支持,输出可用性未验证。

证据核验3 / 8 · 1.9/5

证据显示:README 引用了论文和博客,但未提供具体测试结果或第三方验证。扣分原因:声明缺乏可追溯性,跨来源验证不足,事实与推断未明确区分。

风险与缓解建议
  • 源码中未见:回滚或恢复路径运行前先备份,或在 git 分支、快照上操作,确保改动可以撤销。
  • 未提供版本变更日志,维护责任不明确。
  • 依赖安全性未提及,需检查依赖漏洞。
  • 回滚机制缺失,操作失败后无法恢复。
  • 能力边界描述不完整,可能误导用户。
证据充分度: 评估于 2026年8月9日 审查版本 f218c3cb4b2b
查看完整评分方法 →

常见问题

使用 Agent-E 是否必须购买托管服务?
不是。仓库以 MIT 许可证提供自托管代码,并记录了本地运行方式。README 另行提供带企业增强功能的托管 Web Agent 与 orchestrator 免费试用入口,但没有给出后续价格。
必须使用 OpenAI 模型吗?
不必须。默认配置支持 OpenAI 模型,也可通过 AUTOGEN_MODEL_BASE_URL 等变量连接其他兼容服务;文档还展示了 LiteLLM 加 Ollama 的本地模型方案,但明确说明该方案尚未充分测试。
它会接触哪些敏感资源?
它会读取网页内容并执行点击、输入和导航。如果设置 BROWSER_STORAGE_DIR 使用本地 Chrome 配置文件,自动化将在该浏览器配置环境中运行;部署者应据此控制所用配置文件、站点会话、模型 API 密钥和日志文件。
网页任务失败时有哪些常见原因?
已记录的原因包括真实网站结构变化、动态下拉菜单、单标签页状态限制、Shadow DOM、DOM 蒸馏遗漏和 Playwright 驱动问题。测试在真实网页环境中运行,因此并非每次都能稳定通过。
能否在提交表单前要求人工确认?
可以设计为先填写再等待检查;README 的表单演示明确展示了在提交前等待用户审阅。是否允许 planner 主动获取用户输入还可通过 PLANNER_USER_INPUT_SKILL_ENABLED 配置。
在 GitHub 查看 ↗ 安装 ↓

相关 Agents