跳到正文

hamzarehmandeveloper

claude-account

Switch between isolated Claude Code accounts on Linux without logging in again.

README 已保存到本站,可直接阅读

Documentation snapshot

README 快照

本页保存的是公开项目资料快照,阅读过程不需要连接 GitHub。

claude-account

图片:CI 图片:Release 图片:License: MIT

A Linux-only profile switcher for Claude Code. It gives Claude Code an isolated CLAUDE_CONFIG_DIR for each account and transparently forwards normal commands to the official Claude executable.

claude account add work
claude account add personal
claude account use work
claude account list
claude account current
claude account remove personal

claude
claude "fix this bug in main.py"

Claude Code itself performs login, logout, credential storage, and token refresh. claude-account never reads or copies credential contents.

[!IMPORTANT] This is an independent community project. It is not made, endorsed, or supported by Anthropic. Claude and Claude Code are products of Anthropic.

Requirements

  • Linux
  • A working Claude Code installation
  • Rust 1.85 or later to build from source

Install a release

Download claude-account-v0.1.1-x86_64-unknown-linux-gnu.tar.gz and its .sha256 file from the latest release, then verify and install it:

sha256sum --check claude-account-v0.1.1-x86_64-unknown-linux-gnu.tar.gz.sha256
tar -xzf claude-account-v0.1.1-x86_64-unknown-linux-gnu.tar.gz
./claude-account install

The installer prints one export PATH=... line. Add that line to ~/.bashrc and open a new terminal. The shim lives in its own directory; it does not replace the official Claude executable.

Confirm the installation:

type -a claude
claude account list

The claude-account shim should appear before the official Claude executable.

Build from source

git clone https://github.com/hamzarehmandeveloper/claude-account.git
cd claude-account
cargo build --locked --release
./target/release/claude-account install

Commands

Add an account

claude account add work
claude account add personal --email you@example.com
claude account add company --sso
claude account add api-billing --console

This opens Claude Code’s official login flow. The first profile becomes active. Adding another profile does not switch the active profile. The command also completes Claude Code’s local onboarding state, so the next claude launch uses the saved login without asking you to authenticate again.

Switch accounts

claude account use work

Switching affects newly launched Claude processes. Existing sessions keep the account with which they were started.

Inspect profiles

claude account list
claude account current

current prints only the profile name, making it safe to use in scripts.

Remove an account

claude account remove personal

This runs Claude Code’s official auth logout inside the profile and unregisters it. Settings and session history are preserved, allowing the same profile name to reuse them later.

To delete all local data belonging to the profile:

claude account remove personal --purge --yes

Removing the active profile is refused unless --force is supplied. --purge permanently deletes that profile’s settings, sessions, plugins, and history in addition to its stored login.

Get help

claude account --help
claude account add --help
claude account remove --help

All non-account commands and flags are passed unchanged to the official Claude executable:

claude
claude -p "explain this project"
claude --model opus
claude auth status --text

Storage

By default:

~/.config/claude-account/state.json
~/.local/share/claude-account/profiles//
~/.local/share/claude-account/bin/claude
~/.local/share/claude-account/libexec/claude-account

The standard XDG_CONFIG_HOME and XDG_DATA_HOME variables are respected. CLAUDE_ACCOUNT_HOME can place all application data under one absolute directory, which is especially useful for tests.

The state file contains profile names, directory paths, and the real Claude executable path. It never contains access or refresh tokens.

Authentication environment variables

To guarantee that the selected profile is actually used, the wrapper removes these variables from the child Claude process:

  • ANTHROPIC_API_KEY
  • ANTHROPIC_AUTH_TOKEN
  • CLAUDE_CODE_OAUTH_TOKEN

Set CLAUDE_ACCOUNT_PRESERVE_AUTH_ENV=1 if you intentionally want those variables to override profile authentication.

Development

cargo fmt --check
cargo test --locked --all-targets
cargo clippy --locked --all-targets -- -D warnings

See CONTRIBUTING.md for the contribution workflow and SECURITY.md for private vulnerability reporting.

License

Released under the MIT License.

Official distribution

获取与安装

暂未发现可确认的官方软件包地址

当前 README 快照没有出现 npm、PyPI、Crates.io、pub.dev 等官方包页链接。本站不会根据仓库名称猜测下载地址。

本站不托管项目文件;需要安装时,请以项目维护者发布的官方文档为准。

使用前核验

本站保存公开资料用于阅读,不代表安全审计或功能背书。安装前请核对许可证、依赖来源和发布签名,不要直接运行来源不明的二进制文件或高权限脚本。