Skip to content

How to Run Two Claude Desktop Profiles Side by Side on macOS

Published:
| Open MD

The Problem

Claude Desktop only supports one logged-in account at a time. If you keep a personal account and a work account on separate subscriptions, switching means signing out, losing your session, signing into the other, and rebuilding context. That friction adds up several times a day.

There’s no built-in profile switcher (yet). But Claude Desktop is an Electron app, and Electron lets you point an app at an isolated data directory with the --user-data-dir flag. We can use that to run two fully independent instances — each with its own login, history, MCP servers, and even its own Dock icon.

By the end of this guide you’ll have a Claude Work app you can launch from Spotlight or Raycast that stays logged into your work account permanently, right alongside your personal Claude.

How It Works

Each Claude instance reads all of its persistent data — credentials, sessions, MCP configs — from a single directory. Point a second copy of the app at a different directory and the two never touch each other. That’s the whole trick:

Step 1: Duplicate the App

We make a real second copy of the app bundle (not just a launcher shortcut), so the running window shows our custom icon later.

cp -R "/Applications/Claude.app" "/Applications/Work Claude.app"

Step 2: Give It a Distinct Icon

This is what stops you from squinting at two identical icons in the Dock. Grab any .icns file you like and apply it with fileicon:

brew install fileicon
fileicon set "/Applications/Work Claude.app" ~/Downloads/ClaudeWork.icns

If the Dock doesn’t update right away, run killall Dock.

Step 3: Create a Launcher

We want a single searchable “Claude Work” entry that opens the work copy pointed at the work data directory.

Open Script Editor, create a new document, and paste:

do shell script "open -n -a 'Work Claude.app' --args --user-data-dir=\"$HOME/.claude-instances/work\""

Then File → Export, set File Format: Application, and save it to /Applications as Claude Work.

Step 4: Match the Launcher’s Icon

Set the same .icns on the launcher app so the search result icon matches the window you get when it opens. Same fileicon command as before, just pointed at the launcher this time:

fileicon set "/Applications/Claude Work.app" ~/Downloads/ClaudeWork.icns

Note the two different bundles: Work Claude.app is the duplicated app from Step 2, and Claude Work.app is the launcher you exported in Step 3. This command targets the launcher.

Step 5: Launch It

Search “Claude Work” in Spotlight or Raycast and hit enter. It opens the work copy on the isolated data directory. Sign in once — that session now persists across quits and relaunches.

Your personal Claude keeps launching the normal way, fully independent.

One Gotcha: Logging In

Claude Desktop authenticates with claude:// deep links. If both instances are mid-launch during a login, macOS can’t tell which one requested it and the token may land on the wrong app.

The fix is simple: log into one account at a time. Once both are authenticated and running, this never comes up again.

After Claude Updates

Auto-updates only touch the original Claude.app. The Work Claude.app copy stays on the old version. When you notice a version drift, just re-copy and re-apply the icon:

rm -rf "/Applications/Work Claude.app"
cp -R "/Applications/Claude.app" "/Applications/Work Claude.app"
fileicon set "/Applications/Work Claude.app" ~/Downloads/ClaudeWork.icns

Drop those three lines into a update-work-claude.sh script and it’s a one-command refresh.

Summary

PieceRole
Work Claude.appA second real app bundle with its own icon
~/.claude-instances/workIsolated data dir — separate login, history, MCP
Claude Work launcherOpens the copy pointed at the work data dir
--user-data-dirThe Electron flag that keeps the two apart

Two accounts, two icons, zero logging out. The same approach extends to a third or fourth instance — just pick a new data directory and a new icon.

If you found this article helpful consider supporting me by Buying me a Coffee Buy Me A Coffee


Previous Post
Fifteen Hours Alone on the Konkan Route in Monsoon
Next Post
Understanding Mutual Funds, Index Funds, and SIPs