Multi-CLI 多账号管理器
让 17 种 AI 编码工具的多账号同时运行,无需来回切换登录。
- Star 数
- ★ 186
- 最近更新
- 2 个月前
- License
- MIT
- 主语言
- PowerShell
- FA 评分
- 48/100 · 缺口较多
30 秒速览
- 运行形态
- 可在哪里用
- 兼容但需适配Codex · Claude Code
- 费用
- 免费,无需付费服务
- 上手难度
- 中 · 需要几步配置
- 开始前需要
- 典型场景
- 同时持有 Claude Code 个人号与企业号的开发者,希望两个账号并在、随时切换而不重新登录。
- 不适合
- 只使用单一账号、不需要在多种 AI CLI 间切换的个人开发者
- 需要图形化界面管理账号的团队(本项目为命令行工具)
- 需要在无 Bash 或 PowerShell 5.1 的精简环境中运行的场景
- 源码审查
- 48/100 · 缺口较多
这个 Agent 能做什么,适合哪些场景?
Multi-CLI 是一个跨平台的命令行工具,用于为 Claude Code、Codex CLI、Gemini CLI、Cursor CLI 等 17 种 AI 编码工具创建彼此独立的账号配置档案,从而让多个账号同时处于可用状态。它按工具支持的边界选择隔离方式:文件覆盖只隔离凭据文件,进程密钥只向子进程注入一份凭据,操作系统用户与独立工具主目录则实现更彻底的隔离。除档案管理外,它还提供会话迁移(continue)、模板保存、档案导出导入、旧版 schema 迁移以及 doctor 诊断等维护命令。项目以 Bash 与 PowerShell 实现,安装脚本位于 install/ 目录,档案默认存放在 ~/MultiCliProfiles。工具本身不调用任何大模型 API,实际模型调用仍由被管理的 AI 工具完成。
用户通过 multi-cli new <tool>/<name> 创建档案,工具会依据该 AI 工具支持的隔离模式(文件覆盖、进程密钥、OS 用户或独立工具主目录)生成存储结构,并在 ~/MultiCliProfiles/bin/ 下写入形如 claude-cli-work 的 shell 别名。执行 multi-cli <tool>/<name> 或 multi-cli launch <tool>/<name> [-- args...] 时,它以对应档案的身份启动该工具;对使用进程密钥的工具,需先运行 multi-cli auth set 将密钥写入操作系统凭据库。multi-cli list、clone、rename、delete、status、stats 负责档案的日常维护;continue 命令可在 codex、claude-cli、gemini-cli、commandcode 之间迁移会话状态但从不复制凭据;template 与 export/import 只处理 schema-v2 档案;doctor [--deep] 诊断安装环境。配置可通过 MULTICLI_HOME、MULTICLI_OVERRIDE_BINARY、MULTICLI_REPO、MULTICLI_INSTALL_DIR 环境变量调整。
- 同时持有 Claude Code 个人号与企业号的开发者,希望两个账号并在、随时切换而不重新登录。
- Codex 账号触达用量上限时,需要把已有会话迁移到另一账号继续工作的用户。
- 在不同客户项目间使用不同 Gemini CLI 或 Cursor CLI 账号、且要求凭据互不泄漏的自由职业者。
- 需要为团队统一下发无凭据档案模板、再各自填充密钥的工程团队。
- 希望在 macOS、Linux 与 Windows 上使用同一套账号管理流程的多设备开发者。
如何安装或部署这个 Agent?
先确认环境:macOS/Linux 需 Bash 3.2 以上,Windows 需 PowerShell 5.1;jq 1.7.1 缺失时安装程序会自动安装。源码安装需要 Git。
macOS / Linux:
git clone https://github.com/Spielewoy/multi-cli.git
cd multi-cli
./install/install.sh --localWindows PowerShell:
git clone https://github.com/Spielewoy/multi-cli.git
cd multi-cli
.\install\install.ps1 -Local安装后如找不到 multi-cli 或新档案别名,请重启终端。
如何使用这个 Agent?
先做环境诊断,再创建并启动第一个档案:
multi-cli doctor
multi-cli new claude-cli/work
multi-cli claude-cli/work对使用进程密钥的工具(如 cursor-cli),需要额外写入一次凭据:
multi-cli new cursor-cli/work
multi-cli auth set cursor-cli/work
multi-cli cursor-cli/work需要完全独立的工具主目录时加 --isolated:
multi-cli new codex/personal --isolated在账号间迁移会话前先预演:
multi-cli continue codex work personal --dry-run
multi-cli continue codex work personal
multi-cli codex/personal查看全部命令:
multi-cli help这个 Agent 有哪些优点和局限?
- 覆盖 17 种 AI 编码工具,并按每种工具的实际能力选择最窄的隔离边界(文件覆盖、进程密钥、OS 用户、独立工具主目录),而非一律复制整个主目录。
- 会话迁移命令 continue 支持 codex、claude-cli、gemini-cli、commandcode,可在账号额度耗尽时把对话状态搬到另一账号,且明确不复制凭据。
- 同时提供 Bash 与 PowerShell 两套实现,覆盖 macOS、Linux 与 Windows,并为每个档案自动生成 shell 别名和 Windows 开始菜单快捷方式。
- 档案可导出、导入、克隆、保存为无凭据模板,便于在团队或多台机器间分发配置。
- MIT 许可且为纯本地脚本,不引入额外服务端组件,档案数据保存在 ~/MultiCliProfiles 下可自行审计。
- 隔离能力受上游工具限制:AGY CLI、Antigravity、Kiro、Windsurf、Zed 等部分工具只能依赖操作系统用户隔离,Claude Code 在 macOS/Linux 上仅支持 API 密钥路径。
- 仅 schema-v2 档案、模板与归档可移植,旧档案必须先执行 multi-cli migrate 才能使用导出等新能力,存在迁移成本。
- 依赖运行时环境:需要 Bash 3.2+ 或 PowerShell 5.1,安装时可能需要 jq 1.7.1;缺失时需联网获取。
- 会话迁移只覆盖 4 种工具,其余工具的对话状态无法跨账号搬运。
- 进程密钥类工具需要额外执行 auth set,且凭据存入操作系统凭据库,多一步人工操作。
这个 Agent 与同类方案有什么区别?
与相关度最高的同类 agent 并排比较关键指标。
| Agent | 源码审查 | 形态 / 费用 | Star | 最近更新 | 主语言 | 完整支持的平台 |
|---|---|---|---|---|---|---|
| Multi-CLI 多账号管理器 当前 | 48 · 缺口较多 | 命令行工具免费 | ★ 186 | 2 个月前 | PowerShell | Codex · Claude Code |
| Claudexor | 76 · 表现良好 | 命令行工具免费 + 模型费 | ★ 516 | 今天 | TypeScript | Codex · Claude Code |
| AI Switcher 账号切换器 | 58 · 缺口较多 | 命令行工具免费 | ★ 134 | 4 天前 | Rust | Codex · Claude Code |
| Clausona 账号配置管理器 | 74 · 存在缺口 | 命令行工具 | ★ 56 | 2 天前 | TypeScript | Codex · Claude Code |
FollowAgents 如何评估这个 Agent?
查看各维度的扣分理由
README 明确声明采用最窄隔离边界(文件覆盖/进程密钥/OS 用户/隔离工具主目录),并说明凭据存入 OS 凭据库、会话迁移不复制凭据,SECURITY.md 也要求不支持边界时 fail closed,故 least_privilege 与 sensitive_data_handling 给 2。但 delete 仅一句'确认后删除',缺少具体确认流程证据,user_confirmation 仅 1。数据流方面有隔离模式表但无逐工具数据流细节,给 2。依赖安全方面 CI 对 actionlint/bashcov/simplecov 做 SHA256 校验、actions 固定 commit,但 jq 自动安装与 curl|bash 卸载管道缺乏校验证据,给 2。外部效应(安装/卸载脚本、OS 用户创建)缺乏回滚说明,rollback 与 external_effects 各 1。来源归属仅 MIT 版权行,无上游工具归属说明,给 1。
README 命令表、隔离表与 SECURITY 边界描述彼此一致,self_consistency 给 2。依赖可用性方面要求 Bash 3.2、PowerShell 5.1、jq 1.7.1,但未给出各平台版本兼容矩阵细节,给 1。失败信息仅指向 doctor/tools 命令,无具体错误码或消息示例,failure_messages 给 1。
面向多账号并发场景,17 个工具与三平台覆盖,audience_and_scenarios 给 2。隔离模式表清晰界定能力边界,capability_boundaries 给 2。触发精度方面命令众多但缺少何时用哪种模式的决策指引,trigger_precision 给 1。环境适配有平台列与 support-matrix 链接,environment_fit 给 2。
README 有目录、分节命令表,information_architecture 给 2。安装步骤含源码安装与依赖说明,install_notes 给 2。命名稳定性方面存在 schema v1/v2 迁移与 legacy 行为差异,naming_stability 给 1。示例仅 quick start 少量,无 FAQ,examples_and_faq 给 1。已知限制仅指向 support-matrix,未在正文列出,known_limitations 给 1。LICENSE 为完整 MIT,license 给 2。版本徽章 v1.0.0 但无 CHANGELOG,versioning_changelog 给 1。维护责任仅 SECURITY 中'维护者'泛指,发布者未验证,maintenance_responsibility 给 1。
命令输出与 profile 别名、会话迁移提升多账号可用性,output_usability 给 2。对需要多账号并发的用户有明确边际价值,marginal_value 给 2。但需安装 jq、创建 OS 用户、elevated 终端等成本,且无性能/成本对比证据,cost_benefit 给 1。
README 声明多与 docs 链接对应,但缺少逐条声明到代码/测试的映射,claim_traceability 给 1。CI 工作流与测试脚本存在可交叉印证部分测试存在,但无测试结果或覆盖率数字佐证,cross_source_corroboration 给 1。文档中事实与推断(如'最窄边界')未明确区分,fact_inference_separation 给 1。
- 卸载通过 curl|bash 管道执行远程脚本,且未见校验和验证,存在供应链风险。
- delete 命令仅声明'确认后删除',缺少具体确认机制证据。
- jq 自动安装与 OS 用户创建等外部效应缺乏回滚说明。
- 存在 schema v1/v2 迁移与 legacy 行为差异,升级可能改变隔离行为。
- 发布者身份未经验证,维护责任与更新路径不明确。
- 本评估为静态源码审查,未执行任何命令或测试,置信度低。