browser-agent:基于视觉AI的浏览器自动化与测试工具项目

Open-source, vision-first browser agent

分支30Tags39
文件最后提交记录最后更新时间
6 个月前
1 年前
1 年前
10 个月前
1 年前
6 个月前
1 年前
1 年前
1 年前
1 年前
1 年前
11 个月前
11 个月前
11 个月前
1 年前
Magnitude 文字标志

文档 许可证 Discord 关注 Tom 关注 Anders

🚀 最新动态:Magnitude 达到业界领先水平,在 WebVoyager 上获得 94% 的评分!

Magnitude 利用视觉 AI 技术,让您能够通过自然语言控制浏览器。

  • 🧭 导航 - 观察并理解任何界面,规划操作步骤
  • 🖱️ 交互 - 使用鼠标和键盘执行精确操作
  • 🔍 提取 - 智能提取有用的结构化数据
  • 验证 - 内置测试运行器,支持强大的视觉断言

您可以用它来自动化网页任务、在没有 API 的情况下集成应用间功能、提取数据、测试您的网页应用,或作为构建您自己的浏览器代理的基础模块。

展示 Magnitude 在终端运行测试和代理在浏览器中执行操作的视频

↕️ Magnitude 实际操作演示!↕️

// Magnitude can handle high-level tasks
await agent.act('Create a task', {
    // Optionally pass data that the agent will use where appropriate
    data: {
        title: 'Use Magnitude',
        description: 'Run "npx create-magnitude-app" and follow the instructions',
    },
});

// It can also handle low-level actions
await agent.act('Drag "Use Magnitude" to the top of the in progress column');

// Intelligently extract data based on the DOM content matching a provided zod schema
const tasks = await agent.extract(
    'List in progress tasks',
    z.array(z.object({
        title: z.string(),
        description: z.string(),
        // Agent can extract existing data or new insights
        difficulty: z.number().describe('Rate the difficulty between 1-5')
    })),
);

快速入门

运行首个浏览器自动化脚本

npx create-magnitude-app

这将创建一个新项目,并引导您完成设置 Magnitude 的步骤。同时还会生成一个示例脚本,您可以立即运行!

使用测试运行器

要在现有 Web 应用程序中安装测试运行器,请运行:

npm i --save-dev magnitude-test && npx magnitude init

这将创建一个基础的测试目录 tests/magnitude,包含以下内容:

  • magnitude.config.ts:Magnitude 测试配置文件
  • example.mag.ts:示例测试文件

关于如何运行测试及集成到 CI/CD 的信息,请参阅此处

[!注意] Magnitude 需要一个强大的视觉基础模型。我们推荐使用 Claude Sonnet 4 以获得最佳性能,同时也兼容 Qwen-2.5VL 72B。更多信息请查看文档

为什么选择 Magnitude?

问题 #1:大多数浏览器代理会在页面元素周围绘制编号框——由于现代网站的复杂性,这种方法泛化能力差

解决方案:视觉优先架构

  • 基于视觉的 LLM 指定像素坐标
  • 真正独立于 DOM 结构的泛化能力
  • 面向未来的架构,适用于桌面应用、虚拟机等

问题 #2:大多数浏览器代理遵循“高级提示 + 工具 = 直到完成”的模式——适用于演示,但不适合生产环境

解决方案:可控且可重复的自动化

  • 灵活的抽象层级(细粒度操作 vs. 流程)
  • 在代理和操作级别自定义动作和提示
  • 通过原生缓存系统实现确定性运行 (开发中)

更多信息

请参阅我们的文档,了解如何最佳构建 Magnitude 自动化和测试用例。

联系我们

如果您是企业用户,需要更多功能或支持,请随时通过 founders@magnitude.run 联系我们,或在此预约通话讨论您的需求。

您也可以加入我们的 Discord 社区 寻求帮助或提出建议!

项目介绍

健壮的人工智能网页测试框架【此简介由AI生成】

定制我的领域