编码 Agent 最尴尬的断点在浏览器。它能写代码、能跑测试,但要打开一个需要登录的后台、点三步菜单、把表单填完提交,就只剩「你自己来吧」:无头浏览器没有你的登录态,云浏览器又等于把账号交给别人。BrowserOS neo 走了第三条路——它是装在你本机的一个独立开源浏览器,你照常在里面登录邮箱、日历、Notion、CRM;你的 Agent 通过 MCP 驱动它,在它自己的标签组里点、填、读;你在旁边实时看,事后还能像看录像一样回放每一步。本教程从安装与登录态导入开始,接上你的编码 Agent、装上官方 Skill,跑一个真实任务并用回放定位它跑偏的那一刻,最后讲清多 Agent 并行与安全边界。
Step 1:装一个「第二浏览器」,把登录态搬进去
装好之后,请把它当普通浏览器用一阵:登录 Gmail、日历、Notion、Linear、你的 CRM、你的工单系统。这一步没有任何特殊操作,但它决定了之后 Agent 能用哪些账号——你在里面登录什么,它就有什么。官方支持从 Chrome 一键导入登录态,省掉逐个重新登录的麻烦。它不会读你的个人标签,也不会关掉你正在写的文档或抢你正在用的窗口,Agent 只会开属于自己的标签组。
# 命令行侧暂时不需要装任何东西
# 1) 从 browseros.com/agents 下载对应系统版本并安装
# 2) 打开它,像用普通浏览器一样登录你需要的账号
# (或从 Chrome 一键导入登录态)
# 3) 保持它在后台运行 —— Agent 驱动的是这个浏览器实例
为什么不是「给 Agent 装个无头浏览器」就完事?因为大量真实工作依赖登录态:查自己的日程、读自己的收件箱、在自己有权限的后台里拉数据。没有登录态的浏览器只能处理公开页面,价值有限;而把账号交托给云端浏览器,又意味着登录凭证与会话数据离开了你的机器。把浏览器留在本地、让 Agent 通过标准协议驱动它,是这两者之间少数能同时兼顾可操作性与数据主权的路线。
登录态就是权限:只导入你愿意让 Agent 代操作的账号。网银、支付、生产后台这类高敏账号不要放进这个浏览器,或者只放一次性、只读权限的账号。它带来的便利与风险同源——能替你点,就能替你点错。
Step 2:把浏览器接进你的编码 Agent
在 BrowserOS neo 里开一个新标签页,侧栏点 MCP,你会看到一张可一键连接的客户端列表(官方列出的包括 Claude Code、Cowork、Cursor、Codex、VS Code、Zed、GitHub Copilot 等)。点对应行的 Connect,它会替你写完配置;重启一次客户端,你的 Agent 就多了一个浏览器。列表里没有的工具,复制页面顶部的端点 URL 自己配即可,任何支持 MCP over HTTP 的客户端都能用。
{
"mcpServers": {
"browseros-neo": {
"type": "http",
"url": "http://127.0.0.1:9200/mcp"
}
}
}
# 例:Hermes Agent(~/.hermes/config.yaml)
mcp_servers:
browseros-neo:
url: "http://127.0.0.1:9200/mcp"
# 然后在会话里 /reload-mcp,或重启 Hermes
服务器名字是你自己定的(示例里叫 browseros-neo),但一旦定下,它就是你的 Agent 称呼这个浏览器的名字,提示词里也要用同一个名字。装完先在对话里让它列一次工具,确认浏览器相关工具真的挂上了再继续——「配置写了但没生效」依然是这一步最常见的故障,九成情况下重启客户端就能解决。
端点默认只绑回环,请不要转发到公网:把 9200 端口暴露出去等于把你的登录态对外开放。需要远程访问时走你自己的加密隧道与鉴权,不要图省事直接做端口映射。
Step 3:装上官方 Skill,教它「怎么用才省」
接上 MCP 只是让它有能力,装上 Skill 才让它用得好。官方把使用方式写成一个 SKILL.md,用 skills 命令行工具装到项目里。这里有个必须注意的参数:一定要带上 --skill browseros-neo,否则命令会把那个仓库发布的全部 skill 都装进来,其中好几个是 BrowserOS 团队自己开发用的,跟你的任务无关。加 -g 则是一次装给所有项目。
# 只要 BrowserOS neo 这一个 skill
npx skills add browseros-ai/browseros --skill browseros-neo
# 想一次装给所有项目
npx skills add -g browseros-ai/browseros --skill browseros-neo
# 装完确认落点
# ./.agents/skills/browseros-neo/SKILL.md
不是所有 Agent 都读 .agents/skills 这个目录。比如 Hermes 把 skill 放在自己的 ~/.hermes/skills/ 下,需要用 hermes skills install 从 SKILL.md 的原始地址安装,再用 hermes skills list 或会话里的 /skills 确认。如果你用的是 SDK 而不是成品 Agent(比如 Vercel AI SDK),那就没有谁替你发现 skill,需要自己把文件内容读进 system 提示词。
Step 4:给一个你本来真会做的任务,然后盯仪表盘
打开你的 Agent,给一个真实任务——不是「打开 example.com」这种演示,而是你本来就要做的事:总结最近两天重要的未读邮件、从 Notion 的季度看板取几个数写一段摘要、在差旅后台找一班车次。发完之后切回 BrowserOS neo 的新标签页,仪表盘会显示两部分:Running now 是当前正在跑的会话,能看到它在哪个站点、跑了多久、以及实时预览;Recent activity 是已结束的会话,点开任一条可以看完整过程。
# 给 Agent 的自然语言指令(示例)
用 BrowserOS neo 打开我的日历,找下周一个 30 分钟的空档,
给团队发一个会议邀请。找不到整块时间就直接告诉我,不要硬塞。
你不需要坐在那儿盯着,去干别的活就行,仪表盘会一直记录。这条「可观察」属性是它区别于后台无头脚本的关键:你随时能介入、随时能叫停,而不是等它跑完才发现它把邀请发给了错误的人。
Step 5:回放,定位它从哪一步开始跑偏
会话结束后点开会话卡片,选 View Session Replay,整段过程会像视频一样播放,右侧是逐步列表,点任意一步就跳到那一刻。这个能力的价值有两层。排障是最直接的一层:你能精确看到它是从哪一步开始误解你的意图——是读错了页面元素、还是点进了错误的菜单,而不是对着最终的错误输出猜。第二层是沉淀:把纠正写回提示词或 SKILL.md,「下次遇到日期选择器要点开日历控件再选,不要在输入框里手输」这类经验积累几次之后,同一个任务的成功率会明显上升。
# 排障套路(在 Agent 对话里执行)
1. 复现:用完全相同的指令再跑一次,确认问题稳定复现
2. 回放:找到最初偏离你预期的那一步,而不是最后报错的那一步
3. 归因:是页面元素识别错、还是流程理解错、还是权限不够
4. 固化:把结论写成一条规则,追加到 SKILL.md 或你的提示词模板
5. 回归:同一指令再跑一次,确认新规则生效
回放还有一个容易被忽略的用途:它是审计材料。谁在什么时候让 Agent 动了哪个后台、改了哪条记录,都能从会话记录里回溯出来。对需要合规留痕的团队,这比事后翻聊天记录可靠得多。
回放与截图里有真实业务数据:它们和登录态一样是本机文件。分享给同事或贴进工单之前,先确认里面没有客户信息、工单正文或内部链接——一次无心分享可能比一次误操作代价更大。
Step 6:多 Agent 并行与三条安全红线
每个 Agent 有自己独立的一组标签,可以同时跑:一个在差旅后台订票,另一个在邮箱里退订邮件,互不干扰,你自己的浏览也不受影响。需要读写本地文件时,用它的沙箱目录能力,只授权一个你指定的文件夹——研究报告、待填表格这类产物放在这里最合适。定时任务会跑在隐藏窗口里,结果回到新标签页,不打断你的工作。
# 并行任务示例(分别发给两个 Agent,各自一组标签)
Claude:在差旅后台查下周去上海的往返航班,先给我三个选项,不要下单
Codex :把这周的三个邮件订阅退订掉,只退我列出来的那三个
三条红线:其一,只给必要的站点与必要的本地目录,权限最小化。其二,付款、正式发信、删除数据、修改生产配置这类不可逆操作保持人工确认,不要让定时任务在无人值守时执行它们。其三,记住所有数据都在你自己的磁盘上——这既是它最大的优点(数据主权),也意味着会话记录与回放的保管责任在你。
定时任务不是免责声明:无人值守的自动化最容易在边界情况上出事——页面改版、验证码弹出、余额不足,都可能让它在错误的状态下继续点。给定时任务设保守的触发频率、限定在只读或低风险动作上,并定期回看它的会话回放。
常见问题速查
| 现象 | 原因与处理 |
|---|---|
| 连接列表里没有我的客户端 | 复制端点 URL 手动配置,任何支持 MCP over HTTP 的工具都能连 |
| 装完看不到浏览器工具 | 重启客户端;让它列一次工具确认 MCP 条目已生效 |
| skill 装进来一堆无关内容 | 忘了加 --skill browseros-neo,卸掉重来 |
| Hermes 里找不到 skill | 它不读 .agents/skills,用 hermes skills install 从原始地址装 |
| Agent 说没有登录态 / 页面要求登录 | 在 BrowserOS neo 里登录该站点,或从 Chrome 一键导入 |
| 它一直在点错地方 | 用会话回放定位最早偏离的那一步,把纠正写进 SKILL.md |
| 担心它干扰我正在浏览的页面 | 它只开自己的标签组,不会动你正在用的窗口 |
| 想让它定时跑 | 用 Scheduled Tasks,隐藏窗口执行,结果回到新标签页 |
| 和 Chrome DevTools MCP 有什么区别 | 后者调试你自己开发中的页面;这个是让 Agent 用你的登录态完成网页任务 |