Account Switcher
Use several Claude and ChatGPT/Codex subscription accounts in Paseo: choose one per agent, switch a chat to another account, and see every account's limits
$ clisbot plugin add dutchakdev/account-switcher
Account Switcher 让你在 Paseo 中使用多个 Claude 和 ChatGPT/Codex 订阅账号。你可以为每个智能体选择账号,切换现有对话的账号,为每个提供商设置默认账号,并查看每个账号的用量限制。切换只在同一提供商内进行,且为手动操作,除非你为限制用尽的情况开启自动切换。
限制涵盖提供商报告的所有时间窗口,例如 5 小时和每周用量,并显示重置时间。Codex 按用量计费的工作区套餐显示每月额度(credits),Claude 企业席位显示每月消费额度。
插件界面为英文,下文中的按钮名称保留英文原文。
工作原理
- 你添加的每个账号都有独立的凭据配置文件。设置、技能和会话历史仍与现有 CLI 配置共享,因此配置文件并不是沙箱。
- 在 Accounts 中选择 Enable,会让 Paseo 的 Claude 和 Codex 命令指向插件的启动器,启动器以智能体所选账号运行官方 CLI。Disable 会恢复原始命令;移除插件前请先执行它。
- 新智能体会使用其提供商的默认账号。如果最近读取的数据显示:默认账号已用尽某个账号级限制且重置时间尚未到来、Codex 报告不允许常规使用、其套餐不提供为该智能体选择的 Codex 模型,或默认账号需要重新登录,智能体会改用剩余百分比最多的已登录账号。单个模型的限制和额外付费用量不计入。所有账号都被排除时,仍使用默认账号。在 Accounts 中该提供商下选择 Always use the default 可关闭此行为,使默认账号始终生效。
- 创建智能体的工具可以指定起始账号:创建时在智能体环境中设置
PASEO_ACCOUNT_SWITCHER_ACCOUNT为账号名称或 ID,智能体就会在该账号上启动,不受限制影响。该账号无法使用,或已选择 Always use the default 而该账号不是默认账号时,不会创建智能体。 - 在输入框中输入
/account 名称可切换当前对话的账号,/account default切换到提供商的默认账号:智能体空闲时立即生效,否则在切换器中通过 Apply 应用。命令中心(⌘K)为每个已登录账号提供 Make “名称” the default。 - 对话中会有一行记录已应用的切换,以及新智能体未使用默认账号的原因。这些记录是尽力而为的,在守护进程重启后不会保留。
- 已登录的账号也会显示在 Paseo 的 Usage 视图中;使用托管账号的智能体,其 Paseo 用量弹窗会显示该账号。
- 当某个回合因所用账号的限制已用尽而停止时,对话中会出现一行,显示限制解除的时间,以及一个按钮(例如 Switch to Second and continue),用于切换到剩余最多的已登录账号。切换后会请智能体继续。如果没有其他账号有余量,该行会如实说明。Codex 将这类回合报告为失败;Claude 则将其报告为已完成,因此只有当上次读取的数据已显示账号用尽、且该账号的付费额外用量没有剩余时,插件才会检查已完成的 Claude 回合。每次账号用尽,对话中只出现一行,而不是每个回合一行。在 Accounts 中该提供商下,When a limit runs out during a chat 可设为 Switch automatically,无需点击即自动切换;默认值为 Offer a switch。在已完成的 Claude 回合之后,自动切换不会请智能体继续,因为该回合可能确实已经完成;该行会说明下一条消息将在新账号上运行。自动切换每个回合最多一次,每个对话每小时最多三次,且不会切回该对话一小时内刚离开的账号。
- 输入框旁的账号标签会打开当前对话的切换器。对话只会通过 Apply、
/account 名称、限制行的切换按钮,或你开启的自动切换来更换账号,且仅在智能体空闲、没有待处理的权限请求时进行;Paseo 会重新加载智能体并保留会话。在重新加载之前被拒绝的切换不会改变任何内容。如果切换在重新加载开始后失败,插件会尝试恢复之前的账号。
设置
- macOS 或 Linux 守护进程上的 Paseo 0.11 或更高版本,以及 Node.js 22.12 或更高版本。
- 守护进程上需要官方 Paseo CLI,以及 Claude Code 或 Codex 至少其一。缺少 CLI 的提供商会显示为不可用;安装后重新加载插件,并在该提供商的分区中选择 Enable。
- 每个账号都需要 Claude 或 ChatGPT 订阅。不支持 API 密钥。添加账号时,会在 Paseo 中运行官方 CLI 登录流程。
读取和发送的内容
- 插件读取每个账号已保存的登录信息:Codex 的
auth.json,以及 Claude 存放在 macOS 钥匙串或配置文件.credentials.json中的凭据。Codex 文件用于识别 ChatGPT 账号;Claude 访问令牌用于用量请求的认证,官方 CLI 报告当前登录的是哪个 Claude 账号。令牌只保留在守护进程上。Paseo 客户端会收到每个账号的邮箱、套餐和限制。 - Claude 限制来自使用该账号访问令牌向
api.anthropic.com发出的请求。当该令牌过期时(例如账号闲置),插件会以该账号运行claude -p /usage --no-session-persistence,由官方 CLI 续期令牌,每 10 分钟最多一次。该命令不发送模型消息,也不保存会话。Codex 限制和套餐的模型列表来自官方codex app-server,它会向 OpenAI 查询,并可能刷新账号令牌。限制检查不会发送任何模型消息。 - 为在 Paseo 的 Usage 视图中列出账号,插件会以来源名称 Account Switcher 上报它已收集的限制数据,不会产生新的提供商请求。对于使用托管账号的智能体,插件会把该账号的配置文件目录加入智能体的会话环境,使 Paseo 的用量弹窗读取正确的账号。
- 插件发给智能体的唯一消息是 Continue.,仅在通过限制行完成切换之后,或在失败回合之后自动切换完成时发送。
- 限制每 5 分钟刷新一次;Accounts 或切换器打开时每分钟刷新一次。缺失的值显示为无数据,刷新失败时可能保留上次的值并标记为过期。在主机设置中关闭 Check usage 时(Paseo 0.15 及更新版本),插件不发起额度请求,额度用尽时也不提供切换;Accounts 页面会说明这一点。
- 移除托管账号会删除其配置文件和已保存的登录信息,在 macOS 上包括 Claude 账号的钥匙串项。共享的会话历史会保留。
限制
- Apply 通过 Paseo 重新加载智能体,而 Paseo 无法锁定同一时刻从另一个客户端发送的消息,该消息可能被中断。
- Paseo 不会说明回合为何失败,并且会把因限制而停止的 Claude 回合报告为已完成,因此只有当插件在回合结束后重新读取的限制数据显示账号已用尽时,才会出现限制行。提供商未报告的限制不会触发该行,插件无法确认其账号的智能体也不会。该提供商的账号切换关闭时,不会给出任何切换建议。
- Paseo 的 Usage 视图可能会把同一个托管账号显示两次:在你打开使用该账号的智能体的用量详情后,Paseo 自带的 Claude 或 Codex 卡片可能会出现在 Account Switcher 卡片旁边。插件无法合并不同来源的卡片。
- 不同套餐提供的模型不同:切换到不提供该智能体模型的套餐后,下一条消息会失败。对于 Codex,切换器会将智能体的模型与该账号套餐提供的模型进行比较,并在 Apply 前给出提示。Claude 不报告其模型,因此 Claude 没有此项检查。
- Codex 的 In browser 登录必须在守护进程所在的电脑上完成。在其他设备上请使用 Device code。
- 提供商可能更改限制格式。插件无法读取的值显示为无数据。



