AI Agent 做浏览器任务时,失败现场经常长这样:
- 页面打开了,但账号不对;
- 按钮找到了,但权限不够;
- 文案识别对了,但页面语言变了;
- 表单填完了,但提交后跳到验证页;
- 任务昨天能跑,今天同一套指令失败;
- AI 给出“已完成”,实际业务状态没有变化。
这时很多人第一反应是改提示词、换模型、调点击策略。
这些当然可能有用,但在多账号浏览器场景里,第一步更应该查账号上下文。
因为 AI 执行的是页面动作,但页面动作能不能成立,取决于它跑在哪个账号环境里。
AI 只看到页面,不一定理解账号环境
浏览器任务有两层。
第一层是页面层:
看见按钮 -> 点击按钮 -> 输入内容 -> 提交表单
第二层是账号环境层:
Profile -> Proxy -> Login State -> Permission -> Task Context
AI Agent 往往更擅长第一层。它可以根据页面内容判断下一步要点哪里、填什么、等什么。
但第二层如果没有定义清楚,AI 很容易在错误的上下文里做对的动作。
例如它真的点了发布按钮,但当前账号没有发布权限;它真的打开了后台页面,但当前 Profile 登录的是另一个账号;它真的完成了表单,但页面最后跳到了验证页。
从动作看没错,从任务结果看就是失败。
先确认任务跑在哪个 Profile
多账号环境里,Profile 是任务上下文的入口。
每次 AI 任务执行前,至少要确认:
- 当前 Profile 名称;
- 绑定账号;
- 负责人;
- 代理入口;
- 登录状态;
- 最近一次成功任务;
- 最近一次异常记录。
如果任务没有明确绑定 Profile,就会出现一个典型问题:任务失败后没人知道它到底跑在哪个账号环境里。
调提示词并不能解决这个问题。
再确认代理和地区上下文
AI 浏览器任务经常涉及页面跳转、后台加载、登录状态判断。
代理和地区上下文会影响:
- 页面语言;
- 登录提醒;
- 可见功能入口;
- 后台地区限制;
- 页面加载速度;
- 验证流程。
所以任务失败时,要查的不是“代理是否能连通”这么简单。
还要看:
- 代理最近是否换过;
- 代理地区是否和账号用途一致;
- 时区和语言是否匹配;
- 任务失败是否发生在地区变化之后;
- 同一任务在其他代理环境中是否正常。
这些信息如果没有进入任务日志,后面就很难复盘。
登录态和权限比点击逻辑更早
很多 AI 任务失败,本质上不是点击错了,而是登录态或权限不对。
典型情况包括:
- Cookie 还在,但 Session 已失效;
- 登录状态存在,但账号权限不足;
- 账号进入了验证流程;
- 后台页面只对某些角色可见;
- 当前账号不是任务目标账号。
如果不先确认这些状态,AI 会继续在页面上尝试动作。它可能看起来很努力,但实际上在错误状态里循环。
更稳的做法是把任务前置检查写清楚:
check_profile
check_proxy
check_login_state
check_permission
check_page_state
then_run_task
任务不是从“点击第一个按钮”开始,而是从“确认上下文正确”开始。
失败证据要能回答四个问题
AI 浏览器任务失败后,日志至少要回答四个问题:
- 它在哪个账号环境里跑?
- 它执行到哪一步失败?
- 失败时页面处于什么状态?
- 失败后是否需要人工复核?
对应要保留的证据:
- Profile ID 或名称;
- 代理和地区;
- 任务版本;
- 执行步骤;
- URL;
- 页面标题;
- 关键截图;
- 错误信息;
- 人工确认结果。
没有这些证据,复盘只能停留在“AI 没做好”。
但有了这些证据,才能判断到底是提示词问题、模型判断问题、页面变化、权限变化,还是账号上下文问题。
人工复核不是失败,而是任务边界
AI 浏览器任务不应该假装所有状态都能自动判断。
下面几类情况适合转人工复核:
- 出现登录验证;
- 页面内容和预期模板差异大;
- 提交后业务结果不明确;
- 权限不足但原因无法判断;
- 页面提示需要业务人员确认;
- 账号状态有异常风险。
这不是自动化失败,而是任务边界设计的一部分。
好的自动化不是永远不停,而是在该停的时候留下证据,让人接手。
一个更稳的任务结构
可以把 AI 浏览器任务拆成五段:
Context Check
确认 Profile、代理、登录态、权限和页面状态
Action Plan
生成或读取本次任务步骤
Execution
执行页面动作
Evidence Capture
记录截图、URL、状态、日志和错误
Human Review
必要时交给人工判断结果
这样拆以后,AI Agent 的位置会更清楚:它负责执行和部分判断,但不应该替代账号环境管理、证据留存和人工复核。
这类能力最好沉到团队工作流里
个人实验时,把提示词写好、脚本跑通就够了。
但团队要长期跑 AI 浏览器任务,就需要把账号环境、代理、任务执行和失败证据放进同一套工作流。否则失败后还是只能翻日志、截图和群消息。
如果团队已经在做 AI Agent、无头执行或重复浏览器任务,可以参考这种围绕账号上下文组织 AI 浏览器任务的方式。它关注的不是让 AI 替代所有判断,而是让任务跑在正确的 Profile 里,并在失败时留下可复盘证据。
最后的结论很简单:
AI 浏览器任务失败时,不要只问“提示词哪里写错了”。
先问:账号环境对吗?代理对吗?登录态对吗?权限对吗?失败现场留下了吗?
这些上下文查清楚后,才轮到模型、提示词和点击策略。