开源浏览器自动化智能体 DomA:邀请码、自定义模型与常见坑
梳理一款开源浏览器 AI 智能体插件的实际使用问题:商店版邀请码与开源版自填 API Key 的区别、Claude 与自定义中转地址的配置进展、userScripts 权限缺失、canvas 页面与小游戏的操作边界,以及如何把重复流程固化成可复用的技能,附排查清单与选型建议。
让 AI 直接在浏览器里帮你点按钮、填表单、翻页、抓数据,这类「网页智能体」最近冒出来不少。DomA 是其中一个把核心能力开源的实现:以浏览器扩展的形式运行,源码可查、可本地构建,用户自己填模型 API Key;商店版本也会基于同一套开源代码继续迭代。
讨论集中暴露了几个很实际的问题:商店版要邀请码而开源版不用、开源版一开始既没有 Claude 供应商也没有自定义 base URL 的入口、扩展缺少 userScripts 权限声明导致相关开关点不开、canvas 渲染的页面(比如网页小游戏)能不能操作,以及这类工具和已有的脚本、插件到底差在哪。下面按「怎么装、怎么配、哪里会翻车」的顺序整理。
它解决的是什么问题
传统做法里,想自动化一个网页,要么写脚本抓 DOM,要么装一个专门的「AI 浏览器」。前者遇到页面改版就崩,后者等于再装一个浏览器、还得重新登录所有账号。扩展形态的好处是复用你已经登录好的浏览器环境,用自然语言下指令即可,例如:
- 整理标签页、清理历史记录这类浏览器自带功能操作;
- 在页面上按引导自动点击、填写、翻页;
- 提取当前页面信息(视频资源、商品参数、表格内容);
- 根据页面内容生成广告屏蔽规则。
它的本质是「把自然语言翻译成页面上的具体动作」,所以能力上限取决于两件事:页面是否暴露可读的 DOM,以及模型对页面结构的理解是否准确。
开源版与商店版:先分清两套东西
很多困惑来自把两者混为一谈。
| 维度 | 开源版 | 商店版 |
|---|---|---|
| 获取方式 | 仓库源码自行构建或下载产物 | 扩展商店安装 |
| 登录 | 不需要邀请码 | 早期需要邀请码 |
| API Key | 自己填 | 通常内置或随账号走 |
| 模型供应商 | 逐步补齐,需看仓库进度 | 相对完整 |
| 能否改代码 | 可以 | 不可以 |
所以「没有邀请码怎么用」的标准答案是:走开源版,自己准备 Key。公开贴出来的邀请码基本是秒没的,蹲码的效率远低于自己构建。另外不建议从第三方购买或共享账号、邀请码,存在被回收、凭据泄露、连带封禁的风险,走官方渠道排队更稳妥。
三个最高频的配置问题
1. 开源版没有 Claude 供应商 / 没有自定义地址
早期版本的模型提供商列表不完整,想填一个中转出来的 OpenAI 兼容地址也找不到输入框。维护者给出的时间线是相关特性会陆续合并。在合并之前,稳妥的做法有两种:
- 等:关注仓库的 release 与相关 PR,合并后升级扩展即可,不要用来源不明的第三方构建包。
- 自己加:在模型配置模块里新增一个兼容 OpenAI 协议的服务商条目(通常是名称、base URL、模型名、Key 四个字段),指向你的网关或中转服务。具体字段名和调用路径以仓库当前代码为准,这部分需要自己读一遍再动手。
接入中转服务时要注意两点:一是该服务是否记录你的请求内容,涉及内部系统时风险很高;二是模型名要和网关实际暴露的保持一致,写错通常表现为「请求发出去了但一直转圈」。
2. userScripts 权限缺失,开关打不开
现象是扩展详情页里「允许用户脚本」这一项是灰的,点不动。原因不复杂:manifest 里没有声明 userScripts 权限。
处理步骤:
- 打开扩展目录,找到
manifest.json; - 在
permissions数组里补上"userScripts"; - 回到扩展管理页重新加载(或重启浏览器);
- 新版 Chrome 还需要在扩展详情页手动打开「允许用户脚本」开关,这一步必须由使用者本人操作,代码里替不了。
不同浏览器内核版本对这个 API 的要求有差异,遇到行为不一致时以官方扩展文档为准。该问题维护者已确认会修,追新版即可。
3. 登录态与账号环境
智能体跑在你已登录的浏览器里,这既是优势也是风险:一旦指令理解偏了,它可能在你已登录的后台里点了不该点的按钮。建议第一次使用时只给只读类任务(提取、汇总、整理),确认行为符合预期后再放开写操作;涉及支付、删除、提交表单的站点,保留人工确认环节。
能力边界:哪些页面它搞不定
- 普通 DOM 页面:主要靠选择器加模型理解,页面结构大改后容易失效。
- canvas 渲染的页面:网页小游戏、部分地图和在线编辑器把内容画在画布上,没有可读 DOM,只能靠视觉识别加坐标点击。项目方表示做了这方面的考虑,但没有经过充分测试,属于「可以试,别当生产力工具」。
- 强风控站点:验证码、设备指纹、行为检测会直接卡死流程。这类场景不建议想办法绕过,既有账号风险也可能违反站点条款;能走官方 API 或开放数据接口的,优先走接口。
- 需要多步状态保持的长流程:中间任何一步等待时机不对,后续全会错位,通常要在指令里显式写清「等某元素出现再继续」。
把重复流程固化成技能,而不是每次重新对话
讨论里最有价值的一条经验是:不要指望每次都用一段自然语言让模型从头推理一遍。页面结构随时可能变,纯靠对话的做法维护成本极高。更合理的分层是:
- 智能体只提供基础原子能力(点击、输入、滚动、提取、截图识别);
- 具体业务流程由它自己探索一遍后保存成可复用的技能(skill)/ 流程脚本;
- 页面改版时只修那一个技能,其余不受影响。
这样既保留了「用对话生成流程」的便利,又避免了每次都重新推理带来的不稳定和 token 开销。对高频、固定路径的任务(每日签到、固定报表拉取),固化成技能后甚至可以脱离对话直接触发。
和同类方案怎么选
| 方案 | 适合场景 | 主要代价 |
|---|---|---|
| 对话式浏览器智能体 | 一次性、探索型任务,页面不固定 | 稳定性一般,依赖模型判断 |
| 传统脚本 / RPA | 路径固定、高频、要求确定性 | 页面改版需人工维护 |
| 浏览器自带 AI 能力 | 简单问答与摘要 | 操作能力有限,通常不可换模型 |
| 厂商「AI 浏览器」 | 愿意迁移到新浏览器 | 账号环境要重建 |
有人会问「现在的 AI 不都支持操作浏览器吗」,差别主要在三点:运行在浏览器内还是云端、能否复用你现有的登录态、以及是否允许换成自己的模型和网关。对数据敏感或需要接入自建模型的团队,最后一点往往是决定性的。
二次开发与内部使用
出于内部安全管理要求而 fork 自建是常见需求,注意几件事:
- 先看仓库的 LICENSE,确认内部使用与再分发的边界;
- 把模型地址指向公司自建网关,Key 不下发到终端,便于审计和限额;
- 保留 upstream 的同步路径,避免改到最后无法跟进官方修复;
- 内部改造版不要对外分发,也不要打包上传到扩展商店。
上线前的检查清单
- 确认用的是哪种版本(开源自建 / 商店版),别在邀请码上浪费时间;
- API Key 可用,模型名与网关一致,额度充足;
- manifest 权限齐全,
userScripts开关已手动打开; - 先用只读任务验证行为,再放开写操作;
- 高频流程已固化为技能,并记录了失败时的重试方式;
- 敏感站点保留人工确认,必要时在测试账号上先跑。
一个可选的运行环境思路
如果任务需要长时间挂着跑,或者目标站点在海外、本地网络访问经常超时,可以把浏览器和智能体放到一台常年在线的机器上运行,再用远程桌面连过去操作。例如整机托管在新加坡机房的独享 Mac mini,按月租用、远程连接,任务不会因为合盖休眠或本地断网中断。这只是其中一种省事的选项,本地能稳定跑通就没必要额外折腾。
小结
这类开源浏览器智能体的定位不是「全自动替你把事办完」,而是「把网页操作的门槛降到一句话」。目前它更擅长信息提取和流程引导,遇到 canvas 页面、强风控站点、复杂登录流程仍会失手。真正决定长期可用性的,不是模型多聪明,而是你有没有把重复流程固化成可维护的技能、有没有把关键操作留在人工确认这一侧。版本特性变化较快,具体支持哪些模型供应商、权限声明怎么改,请以仓库最新代码和官方文档为准。