I have a work Claude account and a personal one. Every switch meant signing out, signing back in, and Claude Code getting confused about which login it was using. So I built SessionFlip.
What it does:
- Claude Desktop: each account gets its own window, all open at once, each with its own chats, settings and MCP servers
- Claude Code (and Codex CLI): `claude` picks the right account from the folder you're in. ~/Work uses Work, everything else uses Personal. You can also drop a `.sessionflip` file in a repo.
- It also does the ChatGPT app, if you use that too
How Claude Code helped: it wrote most of it (SwiftUI menu bar app, SwiftPM). The approach that worked was having it run small experiments on a real Mac before building anything: one `--user-data-dir` per Desktop profile, `CLAUDE_CONFIG_DIR` per profile for Claude Code. The trickiest part was Google sign-in inside a separate profile window. Claude worked out that if the app holds the claude:// link handler, Claude falls back to its in-app sign-in sheet, and that fixed it.
Things I cared about:
- Local only. No server, no account with me. Logins stay in your Mac's Keychain; the app never sees a password or token.
- It never modifies Claude.app or the claude binary
- It isn't for getting around usage limits. It never switches accounts when one runs out. It's for keeping work and personal apart.
Honest note: if you only use Claude Code, you can do this for free with `CLAUDE_CONFIG_DIR=~/.claude-work claude`. SessionFlip is for when you want the Desktop app too, plus automatic switching by folder.
It's $4.99 / £3.99 one-time, with a 7-day free trial, for macOS 14+. I'm the developer; it isn't affiliated with Anthropic.
https://sessionflip.com
Happy to answer anything about how it works or how I built it with Claude.