Show HN: Claude-account – switch Claude Code accounts without logging in again

Posted by hamza_rehman 2 days ago

Counter54Comment31OpenOriginal

I use separate Claude Code accounts for work and personal projects. Having to log out and go through the login flow every time I switched accounts became annoying, so I built a small CLI to solve it.

The commands are intentionally simple:

claude account add myworkaccount claude account add mypersonalaccount claude account use myworkaccount claude account current

After switching, Claude Code works normally:

claude claude "fix this bug in main.py" Repository: https://github.com/hamzarehmandeveloper/claude-account

Give it a try

Comments

Comment by carloslfu 2 days ago

appreciate you building this! I have two Claude max accounts. The way I do it is that I have two app launchers (claude desktop). I use the desktop app and a different data directory for each launcher like `open -n -a /Applications/Claude.app --args --user-data-dir="<its profile directory>"`. I got my first Claude to make me two different launchers for the two apps, and it's been working perfectly. wdyt?

The only problem I've noticed is with Claude in Chrome. It seems to not work well in the second account. And this makes sense because it was designed just for one app. Do you find yourself having the same problem with this setup? have you tried the second one with the Claude in Chrome ext?

Comment by pandoro 2 days ago

I use this: https://gist.github.com/KMJ-007/0979814968722051620461ab2aa0...

Simple and works great but requires one alias per account

Comment by cowlby 2 days ago

This is great. My enhancement was to create a .claude-profile file which specifies the account alias. "claude" can be aliased to read the file, set the correct env var, and launch claude.

Another benefit was if no .claude-profile file exists, claude refuses to launch.

Comment by orliesaurus 2 days ago

simple and easy - thank you

Comment by mlitwiniuk 13 hours ago

And knowing Anthropic being developer friendly we can expect them to ban this in 3... 2...

Comment by hassanmehdi98 2 days ago

Is it even safe to switch accounts frequently? worried about them imposing a ban

Comment by lukasco 1 day ago

Can you be logged into two accounts at once? It's not the switching, but the different sessions on different accounts that I find myself doing.

As some have said, easy enough to build yourself, but I think it' nice not to have to test it and make sure it works.

Comment by hamza_rehman 1 day ago

Yep, that’s supported. Switching only affects newly started Claude processes, so you can keep work open in one terminal and personal in another using claude account

Comment by spk_ 1 day ago

Yes, you can, just need to set a separate config dir. I have the below in my zshrc.

alias claude-personal='CLAUDE_CONFIG_DIR=~/.claude-personal claude'

Comment by dotancohen 2 days ago

Does it share the global ~/.claude/CLAUDE.md file? For some use case I'd like that, for others it could be problematic.

Comment by cute_boi 2 days ago

[flagged]

Comment by dotancohen 2 days ago

  > Do you expect vibe-coded slop to care about such things?
I'm divorced - I no longer have any expectations. I ask.

Comment by carloslfu 2 days ago

thanks for sharing this one!

Comment by pdimitar 1 day ago

Cool but I would like to reuse my entire account directory and just switch accounts and nothing else. Now I just do `/logout` and then go through the login flow again because I don't want to lose access to all memories and transcripts.

Is that supported?

Comment by hamza_rehman 1 day ago

No, I kept the whole CLAUDE_CONFIG_DIR isolated because I didn’t want it to directly copying or replacing Claude’s credential files. It felt too easy to get wrong

Comment by hmokiguess 2 days ago

I built the same thing for myself, but I like your implementation so much better.

Comment by bdemirkir 2 days ago

Or use https://omp.sh and add multiple accounts. omp tracks usage and when limit is reached it uses the next account.

Comment by kn9 7 hours ago

Try https://www.onorca.dev/ too very good

Comment by AlexErrant 2 days ago

Sadly incompatible with Claude subs.

Comment by bdemirkir 2 days ago

Subs are supported

Comment by AlexErrant 2 days ago

Doesn't this require pi, which CC famously bans you for using?

Comment by baron3dl 2 days ago

don't people get banned for doing this kind of thing?

Comment by rew0rk 2 days ago

The threat of account bans and a less than friendly appeal system does make me wary of trying it, even though this would be incredibly useful.

Comment by ttoinou 2 days ago

A lot of them also don’t get banned, right ? There are vibecoders youtubers switching accounts all the time

So what’s the differenve ?

Comment by dpoloncsak 2 days ago

If it's honestly 'One account is paid for by my employer and used as a tool for my job' and 'One account is for personal use, where I work on passion-projects and the likes' I think it's fine....? Not a lawyer but I'd assume as long as you're not using it to bypass usage limits Anthropic wouldn't even really notice or care.

Comment by baron3dl 2 days ago

not sure law matters, anthropic is draconian about bans/appeals.

Comment by kingzabbu 22 hours ago

Is this safe to use? as some print from other accounts may leak and will it not harm the accounts?

Comment by pwython 2 days ago

I use the Claude Code desktop app for work, and the CLI for personal, so I'm always logged into both accounts!

Comment by brentmitchell25 2 days ago

Another way for those who use mise. You can auto-switch accounts by directory:

~/development/account1/mise.toml:

[env]

CLAUDE_CONFIG_DIR = "{{ env.HOME }}/.claude-account1"

Comment by acuteaura 2 days ago

revolutionary. you can do this with 2 lines of shell code.

i do this: https://github.com/acuteaura/universe/blob/main/overlays/cla...

Comment by swyx 2 days ago

does this also extend to codex?

Comment by hamza_rehman 1 day ago

Not currently It is specific to Claude Code right now

Comment by DobarDabar 1 day ago

[dead]

Comment by noobmax 2 days ago

[dead]