CAAM(Coding Agent Account Manager)是一个用 Go 编写的命令行工具,用于在固定费用的 AI 编码订阅(如 Claude Max、GPT Pro、Gemini Ultra)之间快速切换账号。当触发速率限制时,可在约 50 毫秒内切换账号,替代 30-60 秒的浏览器 OAuth 登录流程。
工作原理:各 AI CLI 将 OAuth 令牌以明文文件存储,CAAM 对这些文件进行备份与还原,例如 ~/.claude.json 与 ~/.local/share/caam/vault/claude/alice@gmail.com/ 之间互换。无守护进程、无数据库、无网络调用。caam status 通过 SHA-256 内容哈希匹配判断当前激活的配置。
主要能力:
- 账号切换:caam backup / caam activate / caam status / caam ls / caam delete / caam paths / caam clear / caam uninstall。
- 两种模式:Vault Profiles(就地交换认证文件,一次一个账号)与 Isolated Profiles(目录隔离,可并行运行多个账号,使用 caam profile add / caam exec)。
- 智能轮换:caam activate <tool> --auto 支持 smart(默认)、round_robin、random 算法;caam next 预览选择结果;caam cooldown set/list/clear 标记受限账号;caam run 在触发速率限制时自动故障转移。
- 项目关联:caam project set/get 将目录绑定到配置。
- TUI 仪表板:caam tui,支持健康状态指示。
支持工具与认证文件:Claude Code(~/.claude.json、~/.config/claude-code/auth.json、~/.claude/settings.json);Codex CLI(~/.codex/auth.json 或 $CODEX_HOME/auth.json);Gemini CLI(~/.gemini/settings.json、oauth_credentials.json、.env)。
安装: curl -fsSL "https://raw.githubusercontent.com/Dicklesworthstone/coding_agent_account_manager/main/install.sh?$(date +%s)" | bash 或从源码 go build -o caam ./cmd/caam,或 go install github.com/Dicklesworthstone/coding_agent_account_manager/cmd/caam@latest。
限制:不支持 API 密钥模式;避免跨机器同步 vault;切换可能影响正在运行的会话;仅适用于使用 OAuth 的固定费用订阅计划。