Skip to content

Latest commit

 

History

History
41 lines (30 loc) · 3.78 KB

sessions.md

File metadata and controls

41 lines (30 loc) · 3.78 KB

会话与专用浏览器

用户要登录、退出、换账号,或结果返回 NEED_LOGIN 时读这份。

专用浏览器

  • 所有浏览器渠道共用一个专用浏览器配置,和用户日常的 Chrome 分开;程序不关闭、不修改用户的日常浏览器。
  • 内核优先 CloakBrowser;下载或安装失败时用本机已装的 Chrome,并记住这个回退,不每次重下。网络修好后可 agent-reach browser setup --retry-cloak 重试。
  • agent-reach add <渠道> 自动准备 Node、OpenCLI、内核和扩展。工具按本版测试过的版本安装。Windows 上用 Chrome 回退时,可能需要用户点一次"添加至 Chrome"。
  • 默认无头,不弹窗。只有 agent-reach login <渠道> 会显示窗口;窗口开着时查询直接用这个窗口,不会收掉它,用户登录期间等用户说登好了再查。窗口关闭后,之后的查询回到无头。
  • 闲置 10 分钟自动关闭,下次调用自动重开;真实页面操作和 Reach 调用会重置计时。登录期间定期保存,用户不用关窗。
  • 可以并行:同一平台最多同时 2 条,所有平台合计 4 条,多出来的排队,最多等 2 分钟,等不到才返回 BUSY。同一平台的两次搜索之间至少隔 10 秒。打开登录窗口、退出登录、重装浏览器会等正在跑的查询结束再做。
  • agent-reach browser status 查看状态,browser setup 准备内核和扩展,browser stop 关闭程序管理的浏览器。

自动复用已有登录

  1. 第一次用某个网站时,如果用户的 Chrome 已连接 OpenCLI 扩展,程序把该站的登录(只限该站 Cookie)复制一次到专用浏览器。不复制整个浏览器目录、其他网站或密码库,也不改动来源浏览器。
  2. 复制成功后一直复用保存的会话,不按时间重新复制。Cookie 在不代表登录有效,以真实动作结果为准。
  3. 用户 Chrome 没连扩展时,不能承诺自动复用,也不能据此认定用户没登录;此时用 Reach 已保存的会话。
  4. 本机有多个浏览器都登录了该站时:agent-reach browser profiles 列出来源,agent-reach browser use <ID> 选定一个,不随机切换。
  5. agent-reach login <渠道> --import-existing 主动重新复制一次该站登录,不打开窗口。没找到可复制的登录,或 OpenCLI Bridge 没在运行时,返回 NEED_SETUP,已保存的会话不变。
  6. 用户本人在专用窗口里登录过,或执行过 logout / remove,就不再自动复制,避免已退出的登录复活。

需要本人登录时

  • 只有实际返回 NEED_LOGIN、且剩下的任务确实需要这条路径时,才请用户登录。正文旁边有个登录按钮不算要求登录。
  • agent-reach login <渠道> 打开专用浏览器到该站登录页,用户本人完成登录。你不代登、不要密码、不输出 Cookie。
  • 返回结果里的 next 写了后续步骤就照做;部分原生工具渠道(如雪球)登录后要再跑 agent-reach login <渠道> --sync。
  • 用户完成后,重新执行原来的动作验证。

平台差异

  • Boss 直聘站内搜索走 OpenCLI,共用专用浏览器。职位详情若因上游误报要求登录,不要让用户反复登录。
  • B 站只在读字幕时把已有登录交给 B 站官方命令行工具;普通搜索不准备浏览器。
  • 雪球社区动作需要登录;会话几小时内过期,过期后重复登录步骤。

退出和删除

  • agent-reach logout <渠道>:清除专用浏览器里该站的登录和渠道自己的状态,其他网站保留。
  • agent-reach remove <渠道>:去掉渠道,同时清该站登录和存储,其他网站保留。清理失败时渠道记录保留并返回错误,用户可重试。
  • 两者之后都不再自动复制该站登录。