Skip to content

Getting Started

You need two things:

  1. Claude Code installed globally
  2. A JavaScript runtime, Bun 1+, Node.js 18+, or Deno 1+

If you don’t have Claude Code yet:

Terminal window
npm install -g @anthropic-ai/claude-code

Pick whichever package manager you already use:

Terminal window
# Bun
bun add -g claude-multi
# npm
npm install -g claude-multi
# pnpm
pnpm add -g claude-multi
# Deno
deno install -g npm:claude-multi

The entry point is a polyglot file that auto-detects your runtime, you don’t need to configure anything.

Launch the interactive TUI:

Terminal window
claude-multi

Select Add new instance and follow the wizard:

  1. Instance name, something short like glm or deepseek. This becomes your command (claude-glm, claude-deepseek).
  2. Provider template, pick from the list, or choose None / Custom for manual setup.
  3. API key, paste your key (masked input, stored in the instance’s settings.json).
  4. Confirm paths, accept the defaults (~/.claude-<name>/ for config, ~/.local/bin/claude-<name> for the binary).
  5. Copy options, optionally copy settings, plugins, or everything from your default ~/.claude.
  6. Auto-sync, if you copied all files, choose whether to symlink plugins/skills back to ~/.claude.

When the wizard finishes:

✓ Instance 'deepseek' created successfully!
├─ Binary: /Users/you/.local/bin/claude-deepseek
└─ Config: /Users/you/.claude-deepseek

Run it:

Terminal window
claude-deepseek

That’s a full Claude Code session connected to DeepSeek, with its own isolated config. Same claude binary you already know, pointed at a different provider.

You can also create instances directly from the command line without the TUI:

Terminal window
claude-multi add deepseek --provider deepseek --api-key sk-your-key
claude-multi add glm --provider glm --api-key your-zai-key

Then run them:

Terminal window
claude-deepseek
claude-glm

If claude-<name> isn’t found after creation, your global binary directory probably isn’t on PATH. Add it once:

Terminal window
# zsh (macOS default)
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.zshrc
source ~/.zshrc
# bash
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc

The exact binary location depends on your package manager, the TUI will show the actual path when the instance is created.