aidentity

aidentity

Stop signing out to switch accounts.

Run your work, personal and client accounts side by side. Each one stays signed in.

Built for AI desktop apps like Claude and ChatGPT. Also tested with Slack, VS Code, Cursor, Notion and other apps built on Chromium, the engine inside Google Chrome. See the list.

Terminal: install
curl
curl -fsSL https://raw.githubusercontent.com/PiniShv/aidentity/main/install.sh | bash

Paste it into Terminal. Say yes to the walkthrough at the end.

Open Terminal: press Cmd + Space, type Terminal, press Return. The installer checks the download, never uses sudo and leaves your shell files alone. Read it first, or build from source.

  • macOS only
  • Chromium and Electron apps
  • No dependencies
  • No sudo
  • MIT licence

Demo

See it in the terminal

Create a Claude profile and a ChatGPT profile. Then rename one, change its colour, remove it and bring it back.

Terminal demo: aidentity creates Claude and ChatGPT profiles, then renames, recolours, removes and restores one
You use Terminal to add and manage accounts. Day to day, you click the icons it makes.

Quick start

Three steps. You sign in once per account.

Paste the install line into Terminal. Then follow the walkthrough.

  1. Say yes to the walkthrough

    It starts at the end of the installer. After Homebrew, run aidentity setup.

  2. Pick your app

    Choose it from the list. Then name the account, for example Work.

  3. Open the new icon

    For example Claude Work. Sign in once. The walkthrough offers to open its folder. Drag the icon to your Dock.

If the app is already open, quit it first. Sign in to the new icon, then open the app again. Some apps sign in through your browser, and macOS hands the result to the window that started first. Why you quit the app first

Day to day

  • aidentity add Claude --profile Work --color blueOne more account, no questions.
  • aidentity listEvery profile, and which are running.
  • aidentity rename "Claude Work" ClientNew name. It stays signed in.
  • aidentity restore "Claude Client"Bring back a deleted icon.
  • aidentity doctor --fixCheck and repair.

All commands · Per-profile settings

How it works

One app. A small launcher for each account.

aidentity changes nothing inside the app. It uses a start-up option the app already has.

  1. Chromium and Electron apps lock their data folder

    The lock stops the app from starting twice.

  2. aidentity builds a launcher for each account

    It opens your app again with --user-data-dir, a start-up option that points the app at a different data folder.

  3. New folder, new lock, new sign-in

    Cookies live in that folder, so each launcher opens its own account.

  • Claude Work.app opens Claude.appwith the data folder profiles/claude-workwork account
  • Claude Client.app opens Claude.appwith the data folder profiles/claude-clientclient account
  • Claude Main.app opens Claude.appwith Claude's own folderyour original account

There is still one Claude.app. The full picture

Why aidentity

Small, plain and easy to undo

Your app stays untouched

It is never copied, changed or signed again. So it keeps its signature, its keychain access and its own updates.

One script you can read

About 2,700 lines of bash. Read the script before you run it. It needs nothing extra. The Xcode Command Line Tools are optional.

Quiet after install

It makes no network calls, never uses sudo and runs nothing in the background.

Easy to undo

Deleted an icon? aidentity restore brings it back, still signed in. Something looks wrong? Run aidentity doctor --fix. rm keeps your data unless you add --purge. The uninstaller asks before it deletes any profile.

Your original account stays one click away

While a profile runs, clicking Claude.app takes you to that profile. aidentity add Claude --main builds a Main launcher that opens your original account instead. Why clicking the app opens a profile

Your app still updates itself

A launcher stores the path to the app, not a copy. So the next launch uses the new version. aidentity itself never checks for updates.

Worth knowing: aidentity does not encrypt profile data. Each data folder holds a live sign-in, just like the app's own folder. Is this safe?

Which apps work

Chromium and Electron apps only

Chromium is the engine inside Google Chrome. Electron is a toolkit for desktop apps built on that engine. Run aidentity apps to see which of your apps qualify.

Verified

Two accounts signed in at once, checked by hand.

  • Claude Desktop

Tested

Starts as its own copy, with its own data. Two sign-ins not checked by hand yet.

  • ChatGPT
  • Slack
  • Visual Studio Code
  • Cursor
  • Kiro
  • Antigravity
  • Notion
  • Notion Calendar
  • Obsidian
  • Podman Desktop
  • Postman

Browsers

Detected, but their built-in profiles usually do the job better.

  • Chrome
  • Edge
  • Brave
  • Arc
  • Vivaldi
  • Comet

Does not work

Native apps have no Chromium inside, so they have no --user-data-dir option. aidentity add checks this and refuses. A few Electron apps ignore the option, so profiles would share one account.

  • ChatGPT Classic
  • Any app written in Swift or AppKit
  • Microsoft Teams (classic)
  • MiniMax Design

The newer ChatGPT app is Chromium inside; ChatGPT Classic is native. For VS Code, Cursor and Kiro, keep profile names short. Support for native apps is not planned for version 1. Full list and notes

Tried another app? Tell us how it went. That is how an app moves to Verified.

The main trade-off

Running Dock tiles look the same

While profiles run, the Dock shows the app's own tile for each one, with the same name and icon. macOS reads both from inside the app, and aidentity never changes the app.

  • Click the right icon. Launcher icons carry the profile name and a coloured badge.
  • Check the window. Look at the account shown in each running window.
  • Use Mission Control. It shows all your open windows at once.

How to tell them apart

The launcher icons carry the profile name. The running tiles in the Dock look the same.

FAQ

Frequently asked

Short answers to the questions people ask first. All answers in the guide

Something went wrong. Where do I start?

Run aidentity doctor. It checks your setup and every profile. If it says problems can be fixed, run aidentity doctor --fix.

Still stuck? Open an issue with the doctor output. It can show your Mac user name and profile names, so remove anything private first.

Is it safe?

The installer checks the download, never uses sudo and leaves your shell files alone. After install, aidentity makes no network calls and runs nothing in the background.

One thing to know: it does not encrypt profile data. Each data folder holds a live sign-in, just like the app's own folder. Read more about safety or see the security policy.

Can I use more than two accounts?

Yes. aidentity sets no limit, so run add once per account. Your Mac's memory is the real limit, because each open profile is the app running again.

Is this against the terms of service?

aidentity creates separate local data folders and passes a documented command-line option. It does not get around sign-in, share credentials or change the app.

Terms differ by product and plan, and some limit how many sessions one paid user can run, so check yours. This is not legal advice.

Does it work with Claude Code or other command-line tools?

No. It works with desktop apps. Command-line tools keep their sign-in in other ways.

How do I upgrade or remove it?

Upgrade with brew upgrade aidentity, or run the install line again. aidentity never checks for updates itself.

To remove it, use the uninstaller. It asks before it deletes any profile. Uninstall steps