claude-multi-account
Run multiple Claude CLI accounts with shared settings, plugins, marketplace sync, and backup/restore.
Why?
Claude CLI stores all config in a single ~/.claude/ directory — so you're locked to one account at a time. Switching means logging out, logging in, and losing your settings.
claude-multi-account fixes this:
- Isolated profiles — each account gets its own config directory, no conflicts
- Shared settings — define MCP servers, env vars, plugins, and CLAUDE.md once — auto-applied everywhere
- Plugin & marketplace management — enable plugins globally or per-account, browse marketplace indexes
- Direct launch — run
claude-workorclaude-personaldirectly from any terminal, no menu needed - Cloud backup & restore — securely sync all profiles to the cloud and restore on any machine
- One command — launch any account instantly from an interactive menu
Get Started in 10 Seconds
Features
|
Multi-Account Management |
Shared MCP & Settings |
|
Plugins & Marketplace |
Global CLAUDE.md |
|
Backup & Restore |
Export / Import Profiles |
|
Cloud Backup & Restore |
Direct Profile Launch |
|
Auto Dependency Detection |
Run from Repo |
Install
Pick any method — they all give you the claude-menu (or multi-claude) command.
One-liner (recommended)
# Linux / macOS
curl -fsSL https://raw.githubusercontent.com/ghackk/claude-multi-account/master/install.sh | bash
# Windows (PowerShell)
irm https://raw.githubusercontent.com/ghackk/claude-multi-account/master/install.ps1 | iex
npm
npm install -g @ghackk/multi-claude
pip
pip install multi-claude
Homebrew (macOS / Linux)
brew install ghackk/tap/multi-claude
Scoop (Windows)
scoop bucket add multi-claude https://github.com/ghackk/scoop-multi-claude
scoop install multi-claude
AUR (Arch Linux)
yay -S multi-claude
Manual (git clone)
# Linux / macOS
git clone https://github.com/ghackk/claude-multi-account.git ~/claude-multi-account
echo 'alias claude-menu="~/claude-multi-account/unix/claude-menu.sh"' >> ~/.bashrc
# Windows
git clone https://github.com/ghackk/claude-multi-account.git $HOME\claude-multi-account
[Environment]::SetEnvironmentVariable("PATH", "$HOME\claude-multi-account;" + [Environment]::GetEnvironmentVariable("PATH", "User"), "User")
Then open a new terminal and run claude-menu.
Menu Overview
Main Menu
======================================
Claude Account Manager
======================================
Current Accounts:
1. claude-work [logged in] (last used: 02 Mar 2026 10:30 AM)
2. claude-personal [logged in] (last used: 01 Mar 2026 08:15 PM)
======================================
1. List Accounts
2. Create New Account
3. Launch Account
4. Rename Account
5. Delete Account
6. Backup Sessions (Local)
7. Restore Sessions (Local)
8. Shared Settings (MCP/Skills)
9. Plugins & Marketplace
E. Export Profile (Token)
I. Import Profile (Token)
C. Cloud Backup
R. Cloud Restore
0. Exit
======================================
Shared Settings (Option 8)
Manage universal settings applied to all accounts on launch:
| Option | Action |
|---|---|
| 1 | Edit MCP + Settings (opens in editor) |
| 2 | Edit Skills/Instructions (CLAUDE.md) |
| 3 | View current shared settings |
| 4 | Sync shared settings to ALL accounts |
| 5 | Show MCP server list |
| 6 | Reset shared settings |
Plugins & Marketplace (Option 9)
Browse marketplace indexes and manage plugins across accounts:
| Option | Action |
|---|---|
| 1 | Enable plugin for ALL accounts |
| 2 | Enable plugin for one account |
| 3 | Disable plugin (shared) |
| 4 | Disable plugin (one account) |
| 5 | Browse marketplace plugins |
| 6 | Marketplace Management (add/remove/sync) |
Export / Import Profile (Options E & I)
Transfer a profile between machines using a copy-pasteable base64 token:
| Option | Action |
|---|---|
| E | Export a profile — generates a compact token (~5 KB) containing credentials, settings, and launcher |
| I | Import a profile — paste the token to restore the account on any machine |
The token bundles only essentials (credentials, settings, CLAUDE.md, launcher) — not cache or conversation history.
Cloud Backup & Restore (Options C & R)
Sync all profiles to the cloud and restore on any machine:
| Option | Action |
|---|---|
| C | Cloud Backup — select profiles and optional folders (shared settings, plugins, etc.) to upload securely |
| R | Cloud Restore — enter your route key to download and restore all profiles on a new machine |
Profiles are automatically registered on PATH after restore, so you can run claude-work immediately.
Direct Profile Launch
Every profile you create is automatically available as a command:
# No need to open the menu — just run the profile name directly
claude-work
claude-personal
On Linux/macOS/Termux, symlinks are created in ~/.local/bin/. On Windows, the accounts directory is added to your user PATH. Profiles created, imported, or restored are all registered automatically.
How It Works
┌─────────────┐ ┌──────────────────┐ ┌─────────────────┐
│ You pick │ ───> │ Shared settings │ ───> │ Claude CLI │
│ an account │ │ + plugins are │ │ launches with │
│ from menu │ │ merged in │ │ isolated config│
└─────────────┘ └──────────────────┘ └─────────────────┘
Each account gets its own config directory (~/.claude-<name>). On every launch, shared settings from ~/claude-shared/ are deep-merged into the account — MCP servers, env vars, preferences, plugins, marketplace indexes, and CLAUDE.md instructions all stay in sync.
Merge Strategy
Settings are deep-merged with shared settings winning on conflict:
| Scenario | Result |
|---|---|
| Key exists only in account | Kept |
| Key exists only in shared | Added |
| Key exists in both (simple value) | Shared wins |
| Key exists in both (nested object) | Recursively merged |
For CLAUDE.md, shared content is inserted between auto-managed markers at the top. Account-specific instructions below the markers are preserved.
Folder Structure
~/
├── claude-multi-account/ # Git repo (can be added to PATH directly)
│ ├── claude-menu.ps1 # Windows menu script
│ ├── claude-menu.bat # Windows launcher
│ ├── windows/ # Windows-specific scripts
│ └── unix/ # Linux/macOS scripts
│
├── claude-accounts/ # Account launchers (auto-created)
│ ├── claude-work.bat/.sh # Account launcher
│ └── claude-personal.bat/.sh
│
├── claude-shared/ # Shared config (applied to all accounts)
│ ├── settings.json # MCP servers, env vars, preferences, enabledPlugins, extraKnownMarketplaces
│ ├── CLAUDE.md # Global instructions & skills
│ └── plugins/ # Shared plugin & marketplace data
│ └── marketplaces/ # Cached marketplace indexes
│
├── claude-backups/ # Timestamped backup archives
│
├── .claude-work/ # Account: work (auto-created)
├── .claude-personal/ # Account: personal (auto-created)
└── .claude-<name>/ # Account: <name>
Documentation
- Installation Guide — setup for all platforms
- Usage Guide — full walkthrough of every feature
Platform Support
Requirements
- Claude CLI installed and available in PATH
- Windows: PowerShell 5.1+ (dependencies auto-detected via winget/scoop)
- Linux/macOS: Bash 4+ (dependencies like
curl,jqauto-detected and offered for install on first run) - Termux: Supported — dependencies installed via
pkg
Contributing
Contributions are welcome! Feel free to open an issue or submit a pull request.
Credits
Built by Gyanesh Kumar
License
Usage history (v1.0.26)
Choose U in either menu to open the local dashboard, enable/disable reporting, or merge another PC's history. Usage is keyed by normalized email and reply ID: renaming claude-zf to claude-zafff, creating another profile for the same email, or reporting from a laptop with empty history never resets the server's all-time totals. Restored copies are deduplicated.
The menu installs background session hooks, launcher triggers, and a 30-minute scheduled task/cron entry. Requires Node.js 22.13+. The dashboard shows UTC periods, model/month/device totals, account limits, and Claude Code's stats-cache comparison. Usage tracking details.
Metadata
Release files for multi-claude 1.0.26
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| multi_claude-1.0.26.tar.gz | 9.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| multi_claude-1.0.26-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 18.5 kB
Release files / multi_claude-1.0.26.tar.gz
| Download URL | multi_claude-1.0.26.tar.gz |
|---|---|
| Size | 9.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
a9d05e03059398ddf19d348ec8118e5b3d9445f23a92dedb8a5f7f70804564b7
|
|
BLAKE2b-256 checksum How to use checksums |
fde4d53f163eaebcee944f342f1c926b38444dc9e88a26e1b164060a49a81e5b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.4
|
Release files / multi_claude-1.0.26-py3-none-any.whl
| Download URL | multi_claude-1.0.26-py3-none-any.whl |
|---|---|
| Size | 9.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
f781593be4b3fe17bdc0232c85ce493c2a68336f8f6c918d03b8de062233123a
|
|
BLAKE2b-256 checksum How to use checksums |
68e22b738af3ae5ae0722e21e941e727aeb79231fe781a0978223181f961fbd0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.4
|