第 04 模块 · 2 节

多账号热切换与用量追踪

《Orca 生产级工程》04 规模化、账号与安全 · 本节时长 22 分钟

限流是并行最大的敌人Orca 支持多账号热切换:不用重新登录、不用改配置,一键把活跃账号换掉,让限流跟着账号走。同时它会在状态栏实时显示每个账号的用量与重置时间,让你在 Agent 卡住之前就知道要换号了。

为什么需要多账号

Codex 用户经常开多个账号来拉长限流:一个账号的额度跑完了,切到另一个账号继续干活,不用等重置。Orca 的账号切换器让这个过程变成一键操作。

对比 手动切换 Orca 热切换
登录状态 反复登录 / 登出 账号已保存,直接切换
配置 改配置、重启 Agent 无需改配置
进行中的会话 中断丢失 会话不受影响

Claude Code 的流程与 Codex 完全同构——同一个切换器、同样的体验。


热切换的机制

即使有活的 Codex / Claude 会话正在运行,你也能切换账号。Orca 在切换时用一个 guard(保护机制)挡住可能重叠的 auth 刷新,避免两个账号的认证状态互相踩踏。

  • 新启动的 Agent 跟随当前活跃账号
  • 已在运行的会话保持它们启动时的账号 home,直到你重启它们
  • 想带着新账号重启?先切账号,再点重启 chip

System default 与额外账号

账号类型 凭据位置 特点
System default 真实 ~/.codex 登录 与裸 codex 命令行为完全一致
Extra accounts Orca 管理的独立 home 凭据与发布相互隔离,互不串号

额外账号由 Orca 在自己的账号数据目录里管理,所以每个账号的凭据与 rollout 状态都互相隔离。新开 Agent 走活跃账号;已跑的会话保持原 home 直到重启。


Codex on Windows(WSL)

Orca 在 Windows 上可以运行 Codex——既可以跑在宿主机安装上,也可以跑在 WSL distro 里:

  1. 从账号切换器添加一个 WSL-hosted 账号
  2. Orca 在 distro 里创建隔离的账号 home~/.local/share/orca/codex-accounts/<id>/home
  3. 映射回主机路径(\\wsl.localhost\<distro>\...)用于读取认证
  4. 启动、热切换、限流查询都路由到选中的 distro

目标 distro 没装 Codex?Add account 对话框会失败,并给出可操作的信息,告诉你缺的是哪个 distro 的二进制


用量与限流追踪

Orca 读取各 Agent 本地维护的用量状态~/.claude~/.codex,以及 Gemini / OpenCode 的等价物),没有 API 调用、没有额外认证。这带来一个特性:

  • 读数是 Agent 自己的记账——数据只在 Agent 写入时更新,不是实时轮询

状态栏会显示:

  • 当前活跃账号的用量 vs 其 plan
  • 重置时间:5 小时 / 每日 / 每周窗口(Claude 还有 Fable 周窗口)
  • 用量超过 80% 时出现警告 chip,提醒你快要撞限流了

Usage popover

点击状态栏的用量段,打开 Usage 弹层:

  • 列出每个 provider(icon · name · plan · soonest reset · per-window bars)
  • 按「最紧的限流」排序——快没额度的排在最前面
  • Detailed:每个窗口的完整条、标签与百分比
  • Compact:每个 provider 只显示最紧的那个窗口
  • Settings → Appearance 里可选显示 % used 还是 % remaining
视图 内容 适合
Detailed 全窗口完整条 精确盘点
Compact 每个 provider 最紧窗口 扫一眼就知道谁最危险

估算成本(Stats)

Stats 明细对已知模型族会显示估算费用。标着 inferred pricing 的行用的是 Orca 本地价格表,不是 provider 的实时账单——确切的费用以 provider 控制台为准


移动端联动

手机 Companion 的 Accounts 屏幕同样可以:

  • 切换活跃账号、查看各账号用量
  • Codex 拿到 rate-limit reset credits 时,从该屏幕花掉一个,立刻刷新额度

落地练习:配两个账号并看用量

  1. 在 Settings 里添加一个额外 Codex 账号(或 Claude 账号),确认与 system default 隔离
  2. 在 Agent 会话运行中切换一次账号,验证热切换不中断会话
  3. 点状态栏用量段,打开 Usage popover,切换到 Detailed 视图
  4. 观察各窗口的 reset 时间,找到最紧的那个
  5. 有条件的话,在手机上打开 Accounts 屏幕对照一遍

怎么判断做对了?——你能说出「System default 用真实 ~/.codex,额外账号独立隔离」的区别,并解释为什么用量读数不是实时更新的。

卡住了怎么办? 切换后新会话没生效:先确认切的是当前活跃账号,再重启 Agent 会话;WSL 账号失败:检查目标 distro 是否装了 Codex 二进制。


小结

  1. 热切换让多账号拉长限流成为日常操作,无需重新登录
  2. System default 走真实 ~/.codex,额外账号独立隔离
  3. 用量读自本地记账文件,无 API 调用,80% 时警告
  4. Usage popover 按最紧限流排序,Detailed/Compact 视图可选
  5. 移动端可切换账号、花掉 reset credits

下一节,隐私、遥测与故障排查。