Claude Multi-Account

Two Claude Code accounts.
One AgentsRoom. Zero shell tricks.

Run a personal Claude Code login on one project and a work login on another, in the same window, at the same time. Pin one Claude account per project. Override per agent when you need to. Sign in directly from the Settings panel, no CLAUDE_CONFIG_DIR exports, no extra tool to install.

Why use several Claude Code accounts

Real reasons developers run more than one Claude account, in plain words.

Keep work and personal cleanly separated

Your employer's Claude Code account stays on the work projects. Your personal account stays on your weekend projects. No accidental cross-pollination of prompts, no work credentials hitting a side project, no personal sessions logged on the work account.

Bill consumption per client

When a client gives you Claude access, sessions for that client run on their account. Their tokens get burned, not yours. The Claude usage tracker in AgentsRoom keeps the per-account totals separate, so refacturation is straightforward.

Avoid quota collisions

If your work account has a tight Anthropic quota, a long agent run on a personal weekend project does not eat into it. Each account has its own limits, its own rate-limiting state, its own usage history.

Run a test account next to a prod account

Spin up a separate Claude account for noisy experiments, throwaway agents and prompt drafts. Keep the prod account clean. Switch between them per agent, per project, in two clicks.

Different orgs, different policies

Some Claude accounts are tied to enterprise SSO with mandatory logging or telemetry. Keeping a personal account separate means your personal coding stays on your personal terms, isolated at the directory level on disk.

Pair coding for two humans on one Mac

If two developers share a workstation occasionally, each can sign in with their own Claude Code account. AgentsRoom remembers both, the right one fires up depending on the project or the agent.

AgentsRoom Settings panel with Claude Accounts section showing Work account signed in and Personal account ready to sign in, plus per-project picker on a New Project modal

The Claude Accounts panel in Settings, plus the per-project picker on the New Project flow.

Built directly into AgentsRoom

No external switcher, no shell scripts, no logout-login dance.

One Claude account per project

Pin a Claude account on a project. Every agent in that project inherits it by default. Open a Work project and a Personal project in the same window, each running its own Claude account underneath.

Override per agent

Need a single agent on a different account? Edit the agent, pick another Claude account, save. The override only applies to that agent. The rest of the project keeps the project-level account.

Sign in inside the app

Click "Add an account" and AgentsRoom opens an embedded mini terminal running claude with the right CLAUDE_CONFIG_DIR. You type /login, complete OAuth in the browser, paste the code back. The status badge flips to Signed in the moment credentials hit disk.

Global default account

Set one Claude account as the global default. Every new project starts on that account unless you override. Change the default later and every non-pinned project follows automatically.

Compatible with CCS

Already using Claude Code Switcher? Point a profile at ~/.ccs/instances/work or any other CCS folder. AgentsRoom reuses the existing credentials, no re-login needed.

Strict on-disk isolation

Each account lives in its own directory: tokens, sessions, project history. Two accounts never share a file. Deleting an account on AgentsRoom never touches another account's data.

Per-account token tracking

The Claude Code token usage meter in AgentsRoom reads each account's JSONL transcripts independently. Per-session totals, cache hit rate and warnings work the same on every account.

Per-agent file attribution

The vibe coding review and per-agent diff features keep working across accounts. Files modified by an agent are attributed correctly even when the agent runs on a non-default Claude account.

How it works under the hood

Built on Claude Code's official multi-account mechanism.

01

CLAUDE_CONFIG_DIR drives everything

Claude Code reads its tokens, session metadata and project history from the directory pointed at by CLAUDE_CONFIG_DIR. Default is ~/.claude. Setting this variable to another directory swaps the active account. AgentsRoom uses this official mechanism to power multi-account support.

02

Each account is a managed directory

When you click "Add an account", AgentsRoom creates ~/.agentsroom/claude-profiles/<id>/ and signs in there. You can also point an account at any existing folder, including a CCS instance directory like ~/.ccs/instances/work.

03

Sign-in flow is embedded in Settings

AgentsRoom spawns a mini PTY running claude with CLAUDE_CONFIG_DIR set to the new profile. You type /login, the browser opens, you paste the code back. AgentsRoom polls .credentials.json once a second so the Signed-in badge appears the moment the file lands on disk.

04

Cascade resolution at spawn time

When an agent starts, AgentsRoom resolves the effective Claude account in this order: agent override, project pin, settings default, system default ~/.claude. The right CLAUDE_CONFIG_DIR is set on the PTY environment before claude launches.

05

Token usage and file tracking stay correct

AgentsRoom internal readers (token usage, file attribution, session monitor) iterate over all known account directories plus ~/.claude as the fallback. The right session metafile wins by PID, so per-agent counters and diffs stay accurate no matter which account spawned the agent.

What lives in each account directory

Every Claude account directory holds the OAuth credentials, the session metadata files keyed by PID, the JSONL transcripts per project, the global Claude settings and the project history. AgentsRoom keeps these directories isolated and never copies files between them.

Per-account contents

  • OAuth credentials (.credentials.json)
  • Session metafiles in sessions/<pid>.json
  • JSONL transcripts in projects/<encoded-cwd>/<sessionId>.jsonl
  • Per-account global settings and history

Alternatives to AgentsRoom

Other ways to handle multiple Claude Code accounts, and what AgentsRoom does differently.

CCS (Claude Code Switcher)

CCS is a shell wrapper that maintains separate Claude profile directories under ~/.ccs/instances/<name> and switches CLAUDE_CONFIG_DIR before exec'ing claude. It works, but it lives outside the IDE: you switch profile globally for the whole shell, not per project or per agent. AgentsRoom is fully compatible with CCS profiles. Point an AgentsRoom account at a CCS instance and reuse the credentials directly.

CLAUDE_CONFIG_DIR by hand

The official Anthropic-supported way: export CLAUDE_CONFIG_DIR=/path/before launching claude. Manual, error-prone, and the moment you open a second tab you forget which account you're on. AgentsRoom drives this variable for you, per-project and per-agent, and shows you the active account in the picker every time.

Two separate Macs or two user sessions

Some teams use a separate machine or a separate macOS user session per Claude account. Heavy, slow, and you cannot run a work agent and a personal agent in parallel. AgentsRoom runs both at the same time on the same Mac, in the same window.

Logout and login each time

Type claude /logout, then claude /login on the new account, then again to switch back. Loses your sessions, costs minutes per switch, and breaks --resume on every previous session. AgentsRoom keeps every account signed in permanently, switches with one click, and never invalidates a session.

Custom shell scripts and aliases

Some developers wrap claude in a shell function that exports CLAUDE_CONFIG_DIR based on the current directory. Brittle, hand-rolled, and invisible from the IDE. AgentsRoom encodes the same idea declaratively at the project level, with a UI badge that always tells you which account is active.

What AgentsRoom does that the others do not

AgentsRoom is the only IDE that surfaces multiple Claude Code accounts as a first-class concept, with a per-project pin, a per-agent override, an in-app sign-in flow, a status badge per account, and full compatibility with CCS profiles. You sign in once per account, you pin accounts per project, you override per agent, and you stop worrying about which account is loaded. Multiple accounts AND multiple providers in the same project: a Claude Work agent, a Claude Personal agent and a Codex agent can all run side by side.

FAQ

How many Claude Code accounts can I add to AgentsRoom?

There is no hard limit. Each account is a directory on disk. Add a Work account, a Personal account, one account per client, a test account: AgentsRoom lists them all in the Settings panel and lets you pick any of them per project or per agent.

Do I need to install CCS or any other tool to use multiple Claude accounts in AgentsRoom?

No. AgentsRoom drives Claude Code's CLAUDE_CONFIG_DIR mechanism directly. No external switcher, no shell wrapper, no extra dependency. The sign-in flow is fully embedded in the Settings panel.

I already use CCS. Can I keep my existing CCS profiles?

Yes. When you add an account in AgentsRoom, click "Custom path" and point at your existing CCS profile directory, for example ~/.ccs/instances/work. AgentsRoom reuses the credentials already saved there. No re-login required.

Can two different agents in the same project run on two different Claude accounts at the same time?

Yes. The project pins a default account, but each agent can override it. Open a project pinned on the Work account, edit one specific agent to use the Personal account, and the two agents run in parallel on different Claude accounts in the same window.

Are token counters and file attribution accurate when an agent runs on a non-default Claude account?

Yes. AgentsRoom scans every configured account directory, plus ~/.claude as the fallback, when reading session metadata. PIDs are globally unique so each agent's session metafile is found in exactly one directory. Per-session token counts, cache hit rate and per-agent file diffs work identically across accounts.

What happens if I delete an account that some agents still reference?

Nothing breaks. The agents fall back to the default Claude account silently. The deleted directory is left on disk in case you want to point another profile at it later. You can rebind the orphaned agents to another account at any time from the Edit Agent dialog.

Are credentials shared with other AgentsRoom users or sent to a server?

No. Each account directory stays on your local machine. AgentsRoom never reads, copies or transmits credentials. The sign-in flow runs the official claude CLI in a local PTY, OAuth happens between Anthropic and your browser as usual.

Does the resume feature work after I switch an agent's Claude account?

When an agent's account changes, its previous session lives under the old account directory and cannot be resumed under the new one. AgentsRoom detects the failure and starts a fresh session automatically. No manual cleanup needed.

Same idea, different angle

You may also like: Multi-Provider

Multiple Claude accounts give you several Claude logins in one app. Multi-Provider gives you several AI engines in one app: Claude, Codex, Gemini CLI, OpenCode and Aider. Same idea, applied to the AI provider rather than the account. Pin a provider per project, override per agent, switch mid-conversation while keeping context.

See the Multi-Provider feature

Stop juggling shell variables. Pick the account from a picker.

Run a Work Claude account, a Personal Claude account and a client Claude account in AgentsRoom, side by side, today.

GratisScarica AgentsRoom

App companion: monitora i tuoi agenti in movimento

Funziona con Claude, Codex, OpenCode, Gemini CLI e Aider

Installa l'estensione
Chrome Web Store

Invia bug e richieste direttamente nel tuo backlog pubblico.

Multi-progetto
Multi-provider
Multi-agente
Stato in tempo reale
Diff e commit
App mobile
Anteprima live
Team di agenti
Test browser
Dev guidata da backlog