← All tools

Open-source CLI tool

One terminal. Every workspace.

Claude Code holds one login at a time. Claude Profiles lets you keep several side by side and pick one with a single flag—so switching from your account to a client’s costs a keystroke, not a logout.

  • zsh
  • bash
  • macOS
  • Linux
  • MIT

One CLI.

Separate logins.

Nothing shared you didn’t choose.

How it works

A flag, not a login screen.

Claude Code already reads an environment variable that relocates its whole config directory. Claude Profiles is a small shell wrapper around it: each profile is its own directory, so each keeps its own credentials, MCP servers, project state and history.

  1. 01

    Create a profile

    One command makes the directory and drops you into Claude Code so you can log in as that workspace.

  2. 02

    Prefix the name

    claude -work runs against that login. Every real flag still passes straight through, untouched.

  3. 03

    Keep your setup

    Settings, skills, agents and plugins are symlinked back to your default profile, so you maintain them in one place.

claude-profilesinstall
git clone https://github.com/kamtS/claude-profiles.git
cd claude-profiles
./install.sh
exec $SHELL

claude-profile new work
claude -work

Three moves

  1. 1

    Run the installer. It copies one file and adds one line to your shell config, wrapped in markers it can remove again.

  2. 2

    Create a profile for each workspace and log into it once.

  3. 3

    Prefix the name whenever you want that account. Tab completion knows them all.

Read the source on GitHub ↗

What separates, what doesn’t

Keep the accounts apart. Keep your setup.

Credentials should never bleed between workspaces. Your skills and settings usually should follow you everywhere. The defaults split along that line, and you can move it.

Separate

Logins and MCP auth.

Each profile holds its own credentials. A new profile starts with its MCP servers unauthenticated—you rarely want a client workspace holding your personal tokens.

Separate

History and project state.

Resuming a session only ever shows you that profile’s work, so a client’s transcripts stay in the client’s workspace.

Shared

Settings, skills and plugins.

Symlinked back to your default profile so there is one copy to maintain. Want a profile that shares nothing at all? That is one setting.

Worth knowing

This separates accounts, not privileges. Anything running as your user can read every profile, so it is a convenience layer rather than a security boundary—use separate operating system accounts if you need a real one. It also never touches your credentials itself: it only tells Claude Code which directory to use, and lets Claude Code store them the way it already does. The repository ships an adversarial test suite covering path traversal, command injection and safe deletion, and it runs on every change.

Not affiliated with, endorsed by, or supported by Anthropic. If Claude Code ever ships native profile support, use that instead.

Stop logging out

Put every workspace one keystroke away.

Free and open source under the MIT licence. Two hundred lines of shell you can read in one sitting.

Get it on GitHub