claude-account: 在 Linux 上管理多個 Claude Code 設定檔

概觀

claude-account 是社群開發的 Claude Code 在 Linux 上的設定檔切換器。它讓使用者能夠維持多個互相隔離的帳號(例如工作與個人),每個帳號都有自己的 CLAUDE_CONFIG_DIR,從而在不同身份之間切換,而不必重複登入流程。

核心功能

claude-account 作為一個 shim,透明地將指令轉發給官方的 Claude 可執行檔,同時管理不同設定檔的環境。

帳號管理指令

  • Adding Accountsclaude account add <name> 會觸發官方 Claude Code 的登入流程。第一個新增的設定檔會成為啟用的。使用者可以指定電子郵件或使用 --sso--console 等旗標以執行特定的登入類型。
  • Switching Accountsclaude account use <name> 會變更新啟動的 Claude 程序所使用的啟用設定檔。已存在的會話仍會與其啟動時的帳號保持關聯。
  • Inspectionclaude account list 顯示所有已設定的設定檔,claude account current 回傳目前啟用的設定檔名稱(適合腳本使用)。
  • Removalclaude account remove <name> 會在該設定檔內執行官方的 auth logout。使用 --purge 旗標會永久刪除與該設定檔相關的所有設定、會話、外掛與歷史紀錄。

安全性與隔離

為確保使用所選的設定檔,包裝器會從子 Claude 程序中移除以下環境變數:

  • ANTHROPIC_API_KEY
  • ANTHROPIC_AUTH_TOKEN
  • CLAUDE_CODE_OAUTH_TOKEN

使用者可以透過設定 CLAUDE_ACCOUNT_PRESERVE_AUTH_ENV=1 來覆寫此行為。

安裝與需求

系統需求

  • 作業系統:Linux
  • 先決條件:已安裝可正常運作的 Claude Code
  • 建置需求:Rust 1.85 或更新版本(若從原始碼建置)

安裝步驟

  1. Release Installation:下載最新的發行版(例如 claude-account-v0.1.1-x86_64-unknown-linux-gnu.tar.gz)以及其 SHA256 校驗碼。驗證校驗碼後,解壓縮檔案並執行 ./claude-account install
  2. Path Configuration:安裝程式會提供一行 export PATH=...,必須將其加入使用者的 ~/.bashrc,以確保 shim 先於官方 Claude 可執行檔被呼叫。
  3. Source Build:克隆儲存庫,執行 cargo build --locked --release,然後執行 ./target/release/claude-account install

儲存架構

claude-account 遵循 XDG_CONFIG_HOMEXDG_DATA_HOME。預設情況下,它使用以下路徑:

  • State File~/.config/claude-account/state.json(儲存設定檔名稱與路徑;不儲存 token)。
  • Profile Data~/.local/share/claude-account/profiles/<name>/
  • Binaries~/.local/share/claude-account/bin/claude~/.local/share/claude-account/libexec/claude-account

使用者可以透過設定 CLAUDE_ACCOUNT_HOME 環境變數,將所有資料集中於同一目錄。

社群觀點與替代方案

雖然 claude-account 提供結構化的管理系統,Hacker News 社群仍指出了幾種實現帳號隔離的替代方法:

  • Environment Variable Aliases:部分使用者使用簡單的 shell 別名或腳本,為每個帳號設定 CLAUDE_CONFIG_DIR
  • Directory-Based Switchingmise 工具的使用者可以在特定專案目錄的 mise.toml 檔案中定義 CLAUDE_CONFIG_DIR,以自動切換帳號。
  • Usage-Based Rotation:有些人使用如 omp.sh 的工具,在使用量達到上限時自動輪換帳號。
  • Hybrid Usage:部分使用者透過在一個帳號使用 Claude Code 桌面應用程式,另一個帳號使用 CLI,來避免使用切換器。

風險討論

社群成員對頻繁切換帳號的安全性以及可能導致帳號被封的風險提出疑慮。然而,專案文件強調 claude-account 並不會讀取或複製憑證內容,因為所有的驗證、token 重新整理與儲存皆由 Claude Code 本身處理。

Sources