Skip to content

Claude accounts

Multiple Claude Code accounts on one computer — no logging out.

lpm pins a Claude Code account to each project. Work repos run on the company seat, side projects stay personal — at the same time, in one window. Sign in to each account once; after that, opening a project just uses the right one. And when an account nears its limit, new sessions can move to one with room.

one account per projectaccounts run in parallelswitch when one runs lowno logout, no token copying

An illustration of two lpm projects running Claude Code agents at the same time. Project “client-app” is pinned to a work account, and its Claude Code session tightens a login rate limiter. Project “side-project” runs on a personal account and adds a dark mode toggle. The projects sidebar shows both as running, and the two sessions advance together: the accounts work side by side rather than one switching to the other.

Illustration: two projects, two subscriptions, no switching. Each session spends its own account’s usage.

The problem

Three Claude accounts, one CLI, endless juggling

Company seat, client seat, personal subscription — plenty of developers hold several Claude accounts. The tooling assumes you have one.

Claude Code signs into one account at a time

The CLI has no built-in profiles. Moving between a company seat and a personal subscription means /logout, a browser OAuth round-trip, and losing whatever the previous account had in flight. Do that four times a day and it stops being a login and starts being a tax.

Account switchers flip your whole machine

Tools like claude-swap swap the active credentials globally: every project changes account at once, and already-running sessions silently keep the old identity until you restart them. A switch made for one repo quietly re-routes every other repo too.

Work and personal usage blur together

Each Claude subscription has its own usage allowance. When one login serves every repo, a heavy afternoon on a side project eats the quota your work project needed — and there's no way to tell which project spent it. When that login hits its limit, the only way onto your other subscription is another logout.

Watch it

Two subscriptions, one Mac, no logging out

A lesson from the lpm series: add a second Claude Code account, give a project its own, and let new sessions move to the account with room when the main login is almost out.

  1. 1

    Add an account and sign in once

    Settings, AI & Integrations, Claude accounts. Click Add account, name it, then Add and sign in, and finish Claude's own login in the browser.

  2. 2

    Give a project its own account

    Open the ⋮ menu on a project in the sidebar, then Claude account, and pick one under Always use one account. Each account shows its 5-hour and weekly usage beside its name.

  3. 3

    Let new sessions switch

    Turn on Switch accounts automatically and confirm each account is yours. New sessions start on the first account that isn't close to a limit, and running sessions stay where they are.

Every lpm lesson on YouTube
How it works

Per-project Claude accounts, built into your terminal

Not a credential swapper — a project workspace that knows which account each project uses, and which one has room.

Pin an account to a project

Add your accounts once in Settings, then pick one from the project's menu in the sidebar, under Always use one account, where each account shows its 5-hour and weekly usage. From then on every terminal you open in the project launches Claude Code on that account. Projects without a pin keep your main login, so nothing changes until you ask it to.

Accounts run in parallel

The work project runs the company seat while the side project runs your personal subscription, at the same time. There is no global “active account” to flip and no restart ripple across running sessions.

Sign in once per account

Click Add account in Settings, give it a name, and Add and sign in opens Claude's own sign-in for it. Its row then shows the plan, the email, its 5-hour and weekly usage, and which projects use it, and every terminal on a project pinned to it is already signed in.

Your tokens stay where Claude put them

lpm never reads, copies, or exports credentials. Each account gets its own Claude Code home, and Claude Code itself stores each login where it always does (in the Keychain on macOS) — exactly as it does for a single account. lpm keeps no token files of its own to back up, restore, or leak.

Your setup follows every account

Your settings, CLAUDE.md memory, skills, subagents, slash commands, and plugins are shared across accounts. User-level MCP servers and past sessions stay with each account. lpm's agent status keeps working too.

Built-in AI features use the project's account

Commit messages, PR titles and descriptions, branch names, merge-conflict resolution, and composer rewrites all run on the project's account, not just the terminals.

Switch when one runs low

Turn on Switch accounts automatically and new Claude sessions start on the first account in your list that is under 90% of its 5-hour and weekly limits. Up to three accounts take turns, in the order you drag them. Sessions already running stay on their account.

Ask first, or switch on its own

With Ask me first, lpm asks in the sidebar before new sessions move to the next account, and Use or Not now is your call. With Switch on its own, it moves them and tells you why.

A list of its own for any project

Choose accounts in a project's menu to give it its own ordered list of up to three accounts. It takes turns only on those, while other projects follow the main list or stay pinned.

How it compares

Pinning vs. switching

Other setups can hold more than one Claude account — but each asks you to swap credentials, remember an env var, or leave the window. lpm points each project at its own account, and when switching is on, only new sessions move.

lpm

  • YesAccounts run at the same time
  • YesPinned per project, not per machine
  • YesNever copies or moves credentials
  • YesSettings, CLAUDE.md & skills shared across accounts
  • YesRunning sessions keep their account when you switch
  • YesMoves only new sessions, per project, when an account runs low
  • YesNo per-terminal exports or scripts to remember

Account switchers

  • NoAccounts run at the same time
  • NoPinned per project, not per machine
  • NoNever copies or moves credentials
  • YesSettings, CLAUDE.md & skills shared across accounts
  • NoRunning sessions keep their account when you switch
  • NoMoves only new sessions, per project, when an account runs low
  • YesNo per-terminal exports or scripts to remember

Manual CLAUDE_CONFIG_DIR

  • YesAccounts run at the same time
  • NoPinned per project, not per machine
  • YesNever copies or moves credentials
  • NoSettings, CLAUDE.md & skills shared across accounts
  • YesRunning sessions keep their account when you switch
  • NoMoves only new sessions, per project, when an account runs low
  • NoNo per-terminal exports or scripts to remember

Separate OS users

  • NoAccounts run at the same time
  • NoPinned per project, not per machine
  • YesNever copies or moves credentials
  • NoSettings, CLAUDE.md & skills shared across accounts
  • YesRunning sessions keep their account when you switch
  • NoMoves only new sessions, per project, when an account runs low
  • YesNo per-terminal exports or scripts to remember
Setup

From one login to many in four steps

One-time setup, about two minutes. No config files required — the app writes them for you.

  1. Add your accounts

    Name them anything: Work, Client A. Your current login stays the main one; you only add the extra ones.

    SettingsAI & IntegrationsClaude accountsAdd account

  2. Sign in once

    Add and sign in opens Claude's own sign-in for the new account. Its row then shows the plan, the email you signed in with, and its usage.

    Add accountAdd and sign in

  3. Pin a project

    Open the project's menu in the sidebar and pick the account under Claude account. Every terminal in the project, and lpm's commit, PR, and branch helpers, now use it.

    Project menuClaude account

  4. Or let it switch

    Turn on Switch accounts automatically and confirm each account is yours. Projects without their own account start new sessions on the first one with room.

    Claude accountsSwitch accounts automatically

Prefer text? The pin is one line in the project’s config file, and the config reference has the key.

In practice

Four ways per-project Claude accounts pay off

Concrete setups where per-project accounts beat logging in and out.

1

Company seat and personal subscription on one computer

Pin the client repo to your company seat and leave the side project on your personal login. Both agents run at the same time, each spending its own subscription’s usage, and clicking between projects in the sidebar is the only “account switching” you ever do.

2

Duplicate a project ×5 to fan out agents, and the copies keep the account

lpm’s Duplicate and New Worktree flows spawn throwaway copies of a project to run agents in parallel. Copies inherit the parent’s pinned account, so five copies of the work repo all run as the work identity: no per-copy setup, and no agent quietly burning your personal quota because a fresh copy fell back to the wrong login.

3

Keep working when your main login runs low

Your main login is at 96% of its weekly limit and resets in two days. With Switch accounts automatically on, the sidebar asks whether new Claude sessions should start on your second account, and one click moves them, while the sessions already open finish on the old one. Rather choose yourself? Every account shows its 5-hour and weekly usage in the project’s menu, under Claude account.

4

Keep client work billable to the client's seat

Freelancing across two clients, each providing their own Claude seat? Pin each client’s repo to that client’s account. Every terminal session, every AI-generated commit message and PR description in that repo runs on the seat they pay for, without ever re-authenticating mid-day.

FAQ

What developers ask about running multiple Claude Code accounts

  • How is this different from claude-swap and other account switchers?
    Switchers change the globally active account: back up the current credentials, restore another set, restart your sessions — and every project on the machine flips together. lpm never swaps a login. Each project points at its own account, all accounts stay signed in side by side, and two projects can run two different accounts at the same moment. Even automatic switching only decides which account the next new session starts on; nothing already running moves. There's also no credential handling: switchers copy token files or Keychain entries around; lpm just points each project at its own Claude Code home and lets Claude manage its own login there.
  • I keep separate accounts because of usage limits — does each project get its own limit?
    Each Claude subscription has its own usage allowance, and pinning means every terminal session in a project draws from that project's account. A heavy afternoon on a side project can't eat the work seat's quota. Turn on Claude usage in lpm and each account gets its own meter in the sidebar, its own card on the Usage page, and its 5-hour and weekly usage in the Claude account menu, so you can see which one is close before it runs out.
  • What do I do when one account hits its limit?
    Two ways. Turn on Switch accounts automatically in Settings, and new Claude sessions move to the next account in your list once one is close to its 5-hour or weekly limit: lpm either asks in the sidebar first or moves them on its own and tells you. Or open the project's menu in the sidebar and pick another account under Claude account, which shows each account's usage and when it resets. Either way, sessions already open keep the account they started with.
  • How does automatic switching pick an account?
    Up to three accounts take turns, in the order you drag them in Settings. A new session starts on the first one that is under 90% of both its 5-hour and weekly limits. Accounts that hit a limit, are signed out, or are signed in as the same Claude account twice are skipped; if every account is close, the one with the most room is used. A project can keep its own list with Choose accounts in its menu, and a pinned project never switches. Resuming a past conversation goes back to the account that holds it.
  • Is switching accounts when one runs low allowed?
    Before switching starts, lpm asks you to confirm that every account in the list is yours alone. Anthropic hasn't said whether switching accounts when one runs low is allowed, and it can limit or close accounts it believes break its terms; usage credits or a higher plan are Anthropic's supported ways to keep working past a limit. Team and Enterprise seats only join once you allow them, since their use counts against the organization, and if an account is ever put on hold, lpm pauses switching everywhere until you turn it back on.
  • Do I have to log out and back in when I change projects?
    No. You sign in to each account once, right after you add it in Settings. After that, moving between projects is just clicking in the sidebar; each project's terminals are already signed in as the right account, even when several projects with different accounts are running at once.
  • Where are my credentials stored? Does lpm see my tokens?
    Claude Code itself stores them, one login per account, wherever it normally keeps a login on your system (the Keychain on macOS) — the same mechanism as a single-account setup. lpm never reads, copies, or exports tokens. Removing an account from lpm deletes its sign-in, and projects pinned to it fall back to your main Claude login.
  • Do my settings, memory, and skills work on every account?
    Yes. Your Claude Code settings file, CLAUDE.md memory, skills, subagents, slash commands, and plugins are shared across all accounts, so a pinned project has the same tools and commands as your main setup. What Claude Code keeps in each account's own state, such as user-level MCP servers and past sessions, stays with that account. lpm's agent status (working, needs you, done) keeps working on pinned projects too.
  • What happens to the account I already use?
    Nothing. Your existing login stays the main one: any project without its own account keeps using it until you turn on switching, and you don't re-authenticate anything. You only add the extra accounts, a work seat or a client seat, and pin them where they belong.
  • Do duplicates and worktrees keep the pinned account?
    Yes. Copies and worktrees inherit the parent project's account or list, so a fan-out of a work repo stays on the work seat. A copy can still pick its own account from its menu in the sidebar, and Same as parent puts it back.
  • I use an API key in some projects — does pinning interfere?
    No; the pin decides which stored subscription login Claude Code uses, and a project that exports ANTHROPIC_API_KEY keeps billing to that key exactly as before.
  • Does this work for Codex or other coding agents?
    Pinning is Claude Code only. Codex runs in lpm terminals right alongside your pinned projects, but on its own single login, with no per-project account.
  • Any limitations I should know about?
    Per-project accounts apply to projects that run on your computer; SSH projects use whatever Claude login exists on the remote host. Scheduled automations run on the project's own account and never switch. Automatic switching needs Claude usage turned on in lpm, since it decides by each account's usage. Terminals that are already open keep the account they launched with, and a new choice applies to terminals you open afterwards. Keep Claude Code reasonably up to date, since pinning relies on it keeping each account's login separate. One gotcha: if you set CLAUDE_CONFIG_DIR by hand in your shell profile (such as ~/.zprofile, ~/.zshrc or ~/.bashrc), remove it, because a login shell re-sources it and overrides the per-project account.

Stop logging out. Keep every account working.

Download the native desktop app, add your Claude accounts in Settings, and pick one per project, or let new sessions switch when one runs low. Free and open source.