Skip to content

多账号完全隔离

你有多个 Anthropic 账号(个人 + 公司),或者需要同时使用不同 API Key?

CLI 的配置是全局的,切换账号得手动改文件,改完还容易忘改回来。

智码 AICoder 的多实例功能彻底解决这个问题。

工作原理

每个实例拥有完全独立的配置空间:

隔离项说明
OAuth 登录凭据每个实例可登录不同账号
API Key 配置每个实例配置不同的 API 密钥
会话历史每个实例的对话记录互不干扰
数据库每个实例有独立的 SQLite 数据库
设置偏好主题、终端字体等可分别设置

MCP Server 配置在实例间共享,无需重复配置。

如何启动多实例

Windows

bash
# 默认实例(实例 1)
智码AICoder.exe

# 第二个实例
智码AICoder.exe --instance 2

# 第三个实例
智码AICoder.exe --instance 3

macOS

macOS 双击 .app 默认会复用已运行的进程,必须用 open -n 强制启动新进程:

bash
# 默认实例
open -a "智码 AICoder"

# 第二个实例(-n 强制新进程,--args 后参数传给应用)
open -n -a "智码 AICoder" --args --instance 2

# 第三个实例
open -n -a "智码 AICoder" --args --instance 3

写个 alias 一劳永逸

~/.zshrc 加:

bash
alias aicoder2='open -n -a "智码 AICoder" --args --instance 2'
alias aicoder3='open -n -a "智码 AICoder" --args --instance 3'

之后终端输入 aicoder2 就能秒开第二个实例。

也可以直接调用 .app 内的可执行文件(同时拿到终端日志,方便排查问题):

bash
"/Applications/智码 AICoder.app/Contents/MacOS/智码 AICoder" --instance 2

快速识别

标题栏会清晰显示当前实例编号(如「智码 AICoder [实例 2]」),绝不会搞混。

使用场景

个人 + 公司账号

  • 实例 1:登录公司 Anthropic 账号,处理工作项目
  • 实例 2:登录个人账号,学习和个人项目

不同 API 提供商

  • 实例 1:使用 Anthropic 官方 API
  • 实例 2:使用第三方 API 代理

不同工具组合

  • 实例 1:专门用 Claude Code
  • 实例 2:专门用 Codex + Gemini

跨实例配置导入

新实例不必从零配置 API 档案。在「设置 → API 配置」点击「从其他实例导入」按钮:

来源可导入内容
同环境其他实例已保存的 API Key 档案 / OAuth 档案 / 当前活跃 OAuth
对侧环境(开发 ↔ 生产)同上,自动反转配置目录后扫描

支持选择性导入:每条档案前有勾选框,按邮箱去重,OAuth 凭证会自动用当前实例密钥重新加密入库(不保留源实例的密文)。

OAuth 档案的"快照保活"

导入 OAuth 档案时,如果源实例当前活跃的 .credentials.json 与档案邮箱匹配,会自动用最新凭证替换档案内的冻结快照——避免"导入即过期"的尴尬。预览界面会显示每条档案的 token 剩余有效期。

access token 过期不等于不可用

OAuth 标准里 access token 寿命仅几小时,CLI 启动时会自动用 refresh token 续期。 预览界面对短期过期(< 30 天)的档案标注「access token 已过期(启动时自动刷新)」,仅长期未使用(≥ 30 天)的档案才会红色警告。

开发环境与生产环境

如果同时安装了开发版(pnpm tauri dev)和打包版,两套数据完全隔离:

进程配置目录数据目录
生产版~/.claude/<AppData>/com.agilefr.tauri/
开发版~/.claude-dev/<AppData>/com.agilefr.tauri/dev/

跨环境互导通过同一个「从其他实例导入」入口完成——开发版能看到生产版的实例并选择性导入,反之亦然。普通用户机器上若只有单一环境,下拉不显示「开发/生产」概念,体验保持简洁。

给 AI 编程工具一个统一的家