[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-73680":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":17,"stars7d":18,"stars30d":19,"stars90d":16,"forks30d":16,"starsTrendScore":20,"compositeScore":21,"rankGlobal":10,"rankLanguage":10,"license":22,"archived":23,"fork":23,"defaultBranch":24,"hasWiki":25,"hasPages":23,"topics":26,"createdAt":10,"pushedAt":10,"updatedAt":37,"readmeContent":38,"aiSummary":39,"trendingCount":16,"starSnapshotCount":16,"syncStatus":40,"lastSyncTime":41,"discoverSource":42},73680,"browser-agent","magnitudedev\u002Fbrowser-agent","magnitudedev","Open-source, vision-first browser agent","https:\u002F\u002Fmagnitude.run",null,"TypeScript",4078,229,24,26,0,5,10,38,15,77.89,"Apache License 2.0",false,"main",true,[27,28,29,30,31,32,33,34,35,36],"ai","automation","browser","framework","javascipt","playwright","rpa","selenium","test","typescript","2026-06-12 04:01:10","\u003Cdiv align=\"center\">\n  \u003Cimg src=\"assets\u002Fbanner.png\" alt=\"Magnitude Text Logo\"\u002F>\n\u003C\u002Fdiv>\n\n\u003Cbr\u002F>\n\n\u003Cdiv align=\"center\">\n  \u003Ca href=\"https:\u002F\u002Fdocs.magnitude.run\u002Fgetting-started\u002Fintroduction\" target=\"_blank\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002F📕-Docs-0369a1?style=flat-square&labelColor=0369a1&color=gray\" alt=\"Documentation\" \u002F>\u003C\u002Fa> \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FLicense-Apache%202.0-0369a1?style=flat-square&labelColor=0369a1&color=gray\" alt=\"License\" \u002F> \u003Ca href=\"https:\u002F\u002Fdiscord.gg\u002FVcdpMh9tTy\" target=\"_blank\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fdiscord\u002F1305570963206836295?style=flat-square&logo=discord&logoColor=white&label=Discord&labelColor=5865F2&color=gray\" alt=\"Discord\" \u002F>\u003C\u002Fa> \u003Ca href=\"https:\u002F\u002Fx.com\u002Ftgrnwld\" target=\"_blank\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002F-Follow%20Tom!-000000?style=flat-square&labelColor=000000&color=gray&logo=x&logoColor=white\" alt=\"Follow Tom\" \u002F>\u003C\u002Fa> \u003Ca href=\"https:\u002F\u002Fx.com\u002Fndrsrkl\" target=\"_blank\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002F-Follow%20Anders!-000000?style=flat-square&labelColor=000000&color=gray&logo=x&logoColor=white\" alt=\"Follow Anders\" \u002F>\u003C\u002Fa>\n\u003C\u002Fdiv>\n\n\u003Chr\u002F>\n\n> 🚀 New: Magnitude is state-of-the-art, scoring [94% on WebVoyager](https:\u002F\u002Fgithub.com\u002Fmagnitudedev\u002Fwebvoyager)!\n\nMagnitude uses vision AI to enable you to control your browser with natural language.\n- 🧭 **Navigate** - Sees and understands any interface to plan out actions\n- 🖱️ **Interact** - Executes precise actions using mouse and keyboard\n- 🔍 **Extract** - Intelligently extracts useful structured data\n- ✅ **Verify** - Built-in test runner with powerful visual assertions\n\nYou can use it to automate tasks on the web, integrate between apps without APIs, extract data, test your web apps, or as a building block for your own browser agents.\n\n![Video showing Magnitude tests running in a terminal and agent taking actions in the browser](assets\u002Freadme.gif)\n\n↕️ Magnitude in action! ↕️\n```ts\n\u002F\u002F Magnitude can handle high-level tasks\nawait agent.act('Create a task', {\n    \u002F\u002F Optionally pass data that the agent will use where appropriate\n    data: {\n        title: 'Use Magnitude',\n        description: 'Run \"npx create-magnitude-app\" and follow the instructions',\n    },\n});\n\n\u002F\u002F It can also handle low-level actions\nawait agent.act('Drag \"Use Magnitude\" to the top of the in progress column');\n\n\u002F\u002F Intelligently extract data based on the DOM content matching a provided zod schema\nconst tasks = await agent.extract(\n    'List in progress tasks',\n    z.array(z.object({\n        title: z.string(),\n        description: z.string(),\n        \u002F\u002F Agent can extract existing data or new insights\n        difficulty: z.number().describe('Rate the difficulty between 1-5')\n    })),\n);\n```\n\n## Get started\n\n### Running your first browser automation\n```bash\nnpx create-magnitude-app\n```\n\nThis will create a new project and walk you through the steps for setting up Magnitude. It will also create an example script that you can run right away!\n\n### Using the test runner\nTo install the test runner for use in an **existing** web app, please run:\n```bash\nnpm i --save-dev magnitude-test && npx magnitude init\n```\n\nThis will create a basic tests directory `tests\u002Fmagnitude` with:\n- `magnitude.config.ts`: Magnitude test configuration file\n- `example.mag.ts`: An example test file\n\nFor information on how to run tests and integrate into CI\u002FCD see [here](https:\u002F\u002Fdocs.magnitude.run\u002Fcore-concepts\u002Frunning-tests).\n\n> [!NOTE]\n> Magnitude requires a large **visually grounded** model. We recommend Claude Sonnet 4 for the best performance, but are also compatible with Qwen-2.5VL 72B. See [docs](https:\u002F\u002Fdocs.magnitude.run\u002Fcustomizing\u002Fllm-configuration) for more information.\n\n\n## Why Magnitude?\n❌ **Problem #1:** Most browser agents draw numbered boxes around page elements - doesn't generalize well due to complex modern sites\n\n✅ **Solution: Vision-first architecture**\n* Visually grounded LLM specifies pixel coordinates\n* True generalization independent of DOM structure\n* Future-proof architecture for desktop apps, VMs, etc.\n\n❌ **Problem #2:** Most browser agents follow \"high-level prompt + tools = work until done\" - works for demos, not production\n\n✅ **Solution: Controllable & repeatable automation**\n* Flexible abstraction levels (granular actions vs. flows)\n* Custom actions + prompts at agent and action level\n* Deterministic runs via native caching system *(in progress)*\n\n## Additional info\n\nPlease see [our docs](https:\u002F\u002Fdocs.magnitude.run) for more information on how to best build Magnitude automations and test cases.\n\n## Contact\nIf you are an enterprise and want more features or support, feel free to reach out to us at founders@magnitude.run or schedule a call [here](https:\u002F\u002Fcal.com\u002Ftom-greenwald\u002F30min) to discuss your needs.\n\nYou can also join our \u003Ca href=\"https:\u002F\u002Fdiscord.gg\u002FVcdpMh9tTy\" target=\"_blank\">Discord community\u003C\u002Fa> for help or any suggestions!\n","Magnitude 是一个开源的基于视觉的浏览器代理工具，它利用视觉AI技术让用户能够通过自然语言控制浏览器。其核心功能包括导航、交互、数据提取和验证，支持精准的鼠标键盘操作以及智能的数据结构化抽取，并内置了强大的测试执行器。适用于网页任务自动化、应用间无API集成、数据抓取及Web应用测试等多种场景。采用TypeScript编写，遵循Apache License 2.0协议发布。",2,"2026-06-11 03:46:53","high_star"]