1.5k stars!阿里开源 PageAgent:让 AI 直接“住进“你的网页,用自然语言操控一切!

1.5k stars!阿里开源 PageAgent:让 AI 直接“住进“你的网页,用自然语言操控一切!

阿里开源 PageAgent:让 AI 直接"住进"你的网页,用自然语言操控一切

不需要浏览器插件,不需要 Python,不需要截图——一行 JS,让你的网页秒变 AI 智能体。

一、先说痛点:Web 自动化为什么这么难?

如果你用过 Selenium、Playwright,或者最近流行的 browser-use,你一定遇到过这些头疼的问题:

  • 环境太重:得装 Python、headless 浏览器、各种依赖,部署复杂,维护成本高;
  • 依赖截图 + OCR:很多方案靠多模态模型"看图操作",慢、贵、还不准;
  • 权限门槛高:要控制浏览器,往往需要特殊权限甚至操作系统级别的访问;
  • 对现有产品改造成本大:想给自己的 SaaS 产品加个 AI Copilot?对不起,可能要重写后端。

这些问题的根源在于:传统 Web 自动化思路是"从外面控制浏览器",就像隔着玻璃操作键盘,自然别扭。

阿里巴巴开源的 PageAgent,换了一个思路:让 AI Agent 直接住进网页里面


二、PageAgent 是什么?

PageAgent(GitHub: alibaba/page-agent)是一个纯前端的 JavaScript GUI 智能体框架

它的核心理念用一句话概括:

The GUI Agent Living in Your Webpage(住在你网页里的 GUI 智能体)

它能做什么?

用自然语言控制网页界面。你告诉它"点击登录按钮"、“把表单里的公司名改成阿里巴巴”、“帮我找到最近的订单并导出”,它就真的去做。

它有多轻量?

  • ✅ 纯 JavaScript,直接嵌入页面
  • ✅ 不需要浏览器扩展(有可选插件用于多 Tab 场景)
  • ✅ 不需要 Python / headless 浏览器
  • ✅ 不需要截图,不需要 OCR,不需要多模态大模型
  • ✅ 不需要特殊权限

它通过直接读取和操作页面 DOM 来理解和控制界面,把清理后的 DOM 结构发给 LLM,由 LLM 决策操作步骤,再由 PageAgent 执行。整个过程全在浏览器里完成。

典型应用场景:

  • SaaS AI Copilot:几行代码给你的产品加上 AI 副驾,不用改后端
  • 智能表单填写:把原本要点 20 下的操作,变成一句话
  • 无障碍访问:让任何 Web 应用都能通过自然语言、语音操控

ERP / CRM 系统提效:这类系统交互复杂,PageAgent 特别适合

在这里插入图片描述

三、架构设计:它是怎么工作的?

PageAgent 是一个组织清晰的 monorepo,核心模块分工明确:

packages/ ├── core/ # 核心 Agent 逻辑(无 UI) ├── page-agent/ # 带内置 UI 面板的主入口 ├── page-controller/# DOM 操作层(独立于 LLM) ├── ui/ # 面板 UI(与 Agent 解耦) ├── llms/ # LLM 客户端适配层 └── extension/ # Chrome 扩展(多 Tab 支持,WIP) 

工作流程大致如下:

  1. 用户输入自然语言指令(如"帮我搜索最新订单")
  2. PageAgent 清理当前页面 DOM,提取语义化结构
  3. 将简化的 DOM + 指令发送给 LLM(支持 Qwen、OpenAI 等)
  4. LLM 返回操作步骤(点击哪个元素、输入什么内容)
  5. page-controller 执行具体 DOM 操作
  6. 循环直到任务完成

关键亮点:不依赖截图

绝大多数竞品(包括 browser-use 的原始方案)要截图发给视觉模型识别。PageAgent 直接用 DOM 结构,这意味着:

  • 速度更快(无需图像处理)
  • 成本更低(无需多模态模型)
  • 准确性更高(结构化信息比图像识别可靠)

四、怎么用?三种接入方式

方式一:最快体验——Demo LLM

打开官网 alibaba.github.io/page-agent,使用项目提供的免费 Demo API(仅供技术评估,有频率限制),直接在页面上输入指令体验。

方式二:编程接入(BYOK,自带密钥)

npminstall page-agent 
import{ PageAgent }from'page-agent'const agent =newPageAgent({model:'qwen3.5-plus',baseURL:'https://dashscope.aliyuncs.com/compatible-mode/v1',apiKey:'YOUR_API_KEY',language:'zh-CN',})// 用自然语言执行操作await agent.execute('点击登录按钮')await agent.execute('把用户名填写为 admin')await agent.execute('找到最近7天的订单,导出为 Excel')

支持任何兼容 OpenAI 接口的 LLM 服务,包括阿里云百炼(Qwen)、OpenAI、Anthropic 等。

方式三:多 Tab 场景——Chrome 扩展

对于需要跨多个标签页操作的复杂任务,可以安装配套的 Chrome 扩展(目前仍在开发中,标注为 WIP)。配置好 API Key 后,Agent 的操作范围可以从单页面扩展到整个浏览器。

隐私与安全

PageAgent 采用 BYOK(Bring Your Own Key) 架构:

  • 数据只在你的浏览器和你配置的 LLM 服务商之间流动
  • 项目本身没有任何后端,不收集用户数据
  • API Key 仅存储在浏览器本地(localStorage
  • 所有配置不会同步到外部服务器

五、与其他方案对比

特性PageAgentbrowser-usePlaywright/Selenium
运行环境纯浏览器 JSPython + 浏览器Python/Node + 无头浏览器
是否需要截图❌ 不需要✅ 需要❌ 不需要
多模态模型❌ 不需要✅ 需要❌ 不需要
嵌入现有产品✅ 极易❌ 困难❌ 困难
适合场景前端增强/Copilot服务端自动化测试/服务端自动化

值得一提的是,PageAgent 在 README 中坦诚地致谢了 browser-use 项目——DOM 处理组件和部分 Prompt 设计借鉴自该项目,并遵循 MIT 协议开源。开放的态度让人好感度倍增。


六、总结:它适合谁?

PageAgent 是一个思路清晰、定位精准的开源项目,核心价值在于"轻量嵌入"

适合这些人用:

  • 🎯 想给自家 SaaS / 后台系统快速加上 AI Copilot 的前端开发者
  • 🎯 做 RPA 或自动化工具的工程师,想降低环境依赖
  • 🎯 希望让老旧内部系统(ERP/CRM)支持自然语言交互的团队
  • 🎯 对 Web Agent 技术感兴趣、想研究客户端 Agent 方案的研究者

需要注意的是:

  • 目前 Chrome 扩展仍在开发中(WIP)
  • 跨域、登录态等复杂场景可能需要额外处理
  • Demo API 仅供评估,生产使用需自备 LLM API Key

AI 与 Web 的结合,正在从"服务端控制浏览器"向"Agent 住进页面"演进。PageAgent 是这个方向上一个值得关注的实践。

GitHub 地址:https://github.com/alibaba/page-agent
官网文档:https://alibaba.github.io/page-agent/

如果觉得有帮助,欢迎点个在看 👇

Read more

C语言Web开发:CGI、FastCGI、Nginx深度解析

C语言Web开发:CGI、FastCGI、Nginx深度解析

C语言Web开发:CGI、FastCGI、Nginx深度解析 一、前言:为什么Web开发是C语言开发的重要技能? 学习目标 * 理解Web开发的本质:编写程序实现Web应用、服务器端逻辑和客户端交互 * 明确Web开发的重要性:支撑互联网、电子商务、社交网络等领域的发展 * 掌握本章学习重点:CGI、FastCGI、Nginx的开发方法、避坑指南、实战案例分析 * 学会使用C语言开发Web应用,实现服务器端逻辑和客户端交互 重点提示 💡 Web开发是C语言开发的重要技能!随着互联网的普及,Web开发的需求越来越大,C语言的高性能和可移植性使其在Web开发中具有重要地位。 二、模块1:CGI(通用网关接口)基础 2.1 学习目标 * 理解CGI的本质:通用网关接口,用于Web服务器与服务器端程序之间的通信 * 掌握CGI的核心架构:Web服务器、CGI程序、客户端 * 掌握CGI的开发方法:使用C语言编写CGI程序 * 掌握CGI的避坑指南:避免环境变量未设置、避免输出格式错误、避免资源泄漏 * 避开CGI使用的3大常见坑

By Ne0inhk
Go map 底层原理

Go map 底层原理

Go map 底层原理 * 1. 一语戳破哈希表 * 2. 经典版:Go map 到底长什么样 * 2.1 `hmap` 解决什么问题 * 2.2 `bmap` 解决什么问题 * 2.3 `tophash[8]` 到底在干什么 * 2.4 `overflow bucket` 是怎么来的 * 3. 扩容不是“多加几个桶”那么简单 * 3.1 为什么旧桶必须搬 * 3.2 为什么 Go 要做渐进式扩容 * 3.3 增量扩容和等量扩容 * 4. 并发安全:原生 map 为什么不能裸奔 * 5. 现版本的Go

By Ne0inhk
PostgreSQL动态分区裁剪技术:查询性能优化解析(2026年版)

PostgreSQL动态分区裁剪技术:查询性能优化解析(2026年版)

PostgreSQL动态分区裁剪技术:从原理到实战的查询性能优化 一、引言 1.1 研究背景与意义 随着企业数据量从TB级向PB级演进,数据库管理系统面临着严峻的挑战。PostgreSQL作为一款功能强大的开源关系型数据库,凭借其高度的可扩展性和标准兼容性,在金融、电商、物联网等领域得到了广泛应用。然而,在处理海量数据时,如何通过分区裁剪技术精准定位目标数据,避免无关分区的无效扫描,已成为查询性能优化的关键突破口。 在实际应用中,许多场景对查询性能有着极高要求。以电商行业为例,订单数据量庞大,每天可能产生数百万甚至数千万条订单记录。在进行订单查询、统计分析等操作时,如果不能有效利用分区裁剪技术,查询可能会耗费大量时间,严重影响用户体验。又如在金融领域,交易数据的实时查询对于风险控制至关重要,动态分区裁剪技术能够帮助金融机构快速获取所需数据。 1.2 研究目标与范围 本文旨在深入研究PostgreSQL声明式分区表的动态裁剪机制,通过结合源码分析与实际案例,系统地阐述其实现原理、优化策略及性能影响因素。研究目标包括: * 从源码层面深入剖析动态分区裁剪的实现原理 *

By Ne0inhk
黑马点评完整代码(RabbitMQ优化)+简历编写+面试重点 ⭐

黑马点评完整代码(RabbitMQ优化)+简历编写+面试重点 ⭐

简历上展示黑马点评 完整代码地址 微服务学成在线项目 前言 当初就是当作一个学习笔记和个人面试记录发的,没想到这么多人收藏浏览,还是感慨学Java的人确实多啊。 适合什么人看呢,我仅仅说说我个人的理解,因为我现在也是个经历秋招的双非学生。 1.初学者学习完Redis基础,想来个实战,黑马点评还是特别好的一个项目,基本包含了所有数据类型的运用和redis其他功能的扩展,这篇文章可以带你提炼重点,很好的走下流程。 2.但大部分人是冲着找实习和秋招去的,像我这种学历不高的秋招就不要写黑马点评了,即使包装,也会很容易看出来,我找实习的时候就被面试官问到这是不是黑马点评过,我们可以把其中的闪光点迁移到你找的其他项目中,比如缓存穿透雪崩击穿的解决方法,redisson分布式锁解决一人一单,这种在大多项目中都可以添加,自圆其说就行。 3.对于找实习的像大二,大三上的,想找个小厂试试手垂直向上升的,可以吃透它,面试官问你遇到的困难或者是你觉得难点,就可以重点讲一人一单这个解决方法和流程,越详细越好。 4.前提是大家不用直接用这套模板,太多人用了,这也是我从网上找的别人的,巧用AI让它改改项

By Ne0inhk