Skip to content

支持 Claude Desktop App 账号管理/切换 #407

@hajferuon628-lgtm

Description

@hajferuon628-lgtm

背景

目前项目已经支持 Antigravity、Codex、GitHub Copilot、Cursor、Windsurf、Kiro、Gemini Cli、Zed 等多个 AI IDE / 客户端的账号管理与切换。
对我个人来说,日常高频使用的平台主要是:

  • Codex
  • Antigravity
  • Claude Desktop App

前两个项目已经支持得很好,但 Claude Desktop 目前还不在支持列表里。
如果未来能补上 Claude Desktop,这个项目的实用性会非常强。


想法

我想提一个功能建议:
是否可以为 Claude Desktop App 增加账号管理 / 切换支持?

不过这里我不建议一开始就追求“完整功能对齐”:

  • 不要求首版就支持完整 OAuth 登录流
  • 不要求首版就支持多开实例
  • 不要求首版就支持配额读取
  • 不要求首版就支持会话同步

我更建议先做一个 范围较小、可落地的 Experimental 版本


建议的最小范围(MVP)

建议先支持:

  1. 仅 macOS
  2. 支持从当前本地已登录状态导入账号
  3. 支持保存多个 Claude Desktop 本地登录快照
  4. 支持切换快照并重启 Claude Desktop 完成切号
  5. 在 UI 中明确标注为 Experimental / 实验性支持

也就是说,首版可以不走 Claude 官方 OAuth,而是先做:

  • 导入当前已登录 Claude Desktop 账号
  • 保存为本地账号快照
  • 切换时恢复对应快照
  • 必要时自动关闭并重启 Claude Desktop

为什么我觉得这条路线更现实

Claude Desktop 和 Codex / Antigravity 的本地存储方式不太一样。

从本地结构看,Claude Desktop 更像:

  • Electron / Chromium 用户数据目录
  • IndexedDB / Local Storage / Cookies / Session Storage
  • 额外的 bridge / session manager 状态
  • 可能还有 Claude Code / local-agent-mode 相关目录

所以它不像 Codex 那样可以只改一个 auth.json
也不像部分 VS Code 系客户端那样可以主要围绕 state.vscdb 做注入。

在这种情况下,“当前本地登录状态导入 + profile snapshot restore” 可能比直接逆向单个 token 注入点更稳,也更适合作为第一版。


一个可行的实现方向(仅供讨论)

我理解中的首版实现,大致可以是:

  • 检测 Claude Desktop 的本地用户目录
  • 导入当前已登录状态,保存为一个“Claude 账号快照”
  • 切换账号时:
    • 关闭 Claude Desktop
    • 备份/恢复对应本地 profile
    • 重新启动 Claude Desktop

如果后续验证稳定,再逐步扩展:

  • 本地账号信息识别优化
  • 配额/订阅信息读取
  • 多实例支持
  • 更细粒度的状态注入,而不是整份 profile 快照恢复

我关心的几个问题

  1. 从维护角度看,Claude Desktop 支持是否在项目规划里?
  2. 如果接受 PR,维护者更倾向哪种方案?
    • profile snapshot 切换
    • 精细化本地状态注入
  3. 首版是否建议明确限制为:
    • macOS only
    • experimental
    • 不承诺多开/配额

如果这个方向可接受

如果维护者觉得这个方向合理,我愿意先按照这个范围做调研,
后续也可以尝试提交一个 PR。

我理解 Claude Desktop 的本地状态结构会比现有部分平台更复杂,所以我不期待一步到位。
如果能先把“导入当前登录态 + 多账号切换”做起来,我觉得已经很有价值了。

感谢维护这个项目。

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions