AgentBrowser AI浏览器产品系统

我要开发同款
Song2026年10月30日
6阅读

技术信息

语言技术
JavaScript、TypeScript、Node.js
系统类型
Linux
行业分类
人工智能、开发工具

作品详情

行业场景

AI Agent 真要干活就得操作网页:填报名表、投投标、发作品、发帖。但现有做法有三处硬伤。一是把整页 HTML 直接塞给大模型,几千 token 里有九成是脚本和样式,上下文还没读完钱就烧完了;二是让模型现场编 CSS 选择器,对方一发版就全崩,而且崩得静悄悄;三是最要命的——自动化脚本执行完就算成功,从不确认结果,于是「钱付了、表没交出去」这种事故要到人去查才发现。

功能介绍

套件只对外暴露三个动词。see 把当前页面压成带稳定 id 的结构化节点列表,每个节点标注它实际能做什么(可点击、可输入、可切换、可选择);act 对某一个 id 执行某一个动作;read 按意图取正文而不是按选择器抠字。模型全程只跟 id 打交道,从不接触选择器。关键在于三态回执:每个动作返回"哪些变了、哪些失败了、哪些无法验证"。unknown 被设计成一等公民,不允许系统用"看起来没问题"冒充通过——扫不全就报扫不全,宁可让人接手,也不出具假的干净结论。

项目实现

Node.js + TypeScript,底层 Playwright 与 Chrome DevTools Protocol,同时以 MCP server 形式对外提供。四个真实踩过并解决掉的难点:① CDP 接管已打开的浏览器,让 Agent 继承真实登录态而不必碰用户原有的任何一个标签页——自建页打 window.name 标记,重连时只按标记回收自己开的孤儿页,绝不按 URL 猜,因为猜错就会关掉用户正在用的页;② 针对 React / Vue 受控组件补齐原生 setter 加 input / change / blur,否则会发生"输入框看着有值、提交却说为空";③ 页面上存在隐藏的同名按钮时按可见面积最大的选,避免点在 0×0 的副本上还返回成功;④ 在涉及付款、删除、不可逆提交前设策略门先停一下。它自己跑完了 Upwork 简历建档与提案投递、Devpost 黑客松提交、Toptal 申请表单填写。

示例图片

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论