Priyanshu Yadav

● open to roles · IST

← work

Open source

Claude Profile Switcher

I needed my work and personal Claude accounts open at the same time without signing out. The desktop app is built on Electron, which keeps one profile per data directory, so I turned that into a small product: a window, a tray icon, badged shortcuts and a command line, all in one PowerShell script with nothing to install. Other developers now fork it and send pull requests.

Role
Author and maintainer
Year
2026
Built with
PowerShell 5.1, WinForms, Win32 via P/Invoke, GDI+, GitHub Actions
11GitHub stars
6forks
37release downloads
0dependencies: one 1,530-line script
Claude Profile Switcher window listing four profiles: Default, Client Acme, Personal and Work, with Launch and Add account buttons.
Each profile is its own login. Several can run at once.

How it works

Each profile is a folder with its own cookies and local storage, so each one is an independent login. Instances pointed at different folders run at the same time instead of focusing each other. Your original account is never touched.

The Windows plumbing

  • The Microsoft Store build is started through shell:AppsFolder, so the original account keeps auto-update and claude:// links.
  • To show which profiles are running, it reads process command lines and has to ignore Electron’s renderer children and the Claude Code CLI, which has the same executable name.
  • Bringing an open window to the front goes through SetForegroundWindow, IsIconic and ShowWindow.
  • A named mutex keeps a single switcher running and hands focus to the existing copy.

Looking after it

The repository has lint checks in CI, a contributing guide, a security policy and issue templates. Releases ship with SHA-256 checksums. The README lists what I have verified and what I have not, including the classic (non-Store) install path, which I can’t test on my own machine.

Desktop shortcut icons for Claude, each with a different coloured badge.
Per-profile shortcuts get a coloured badge, drawn with GDI+ and written by a hand-rolled .ico encoder.
Dialog for transferring chat sessions from one profile to another.
Moving Claude Code chat sessions between accounts.