// PROJECT NOTE

Python
SSH
GitHub
Windows

ghssh 0.4.0: saved GitHub accounts and a Windows installer

Moving beyond a temporary SSH switch: named accounts, project commit identities and a Windows release that runs without a separate Python installation.

Arsam SarkhoshAdded to this blog 2 min read
Read article
PROJECT NOTE
Original ghssh 0.4.0 release artwork showing three named accounts, their SSH keys and switch commands, with Linux and Windows support.
English translation of my original Persian LinkedIn post. Read the original LinkedIn post ↗(opens in a new tab)

Two accounts became three

I built ghssh because switching between GitHub accounts involved more SSH configuration than I wanted for a simple change of account. The earlier workflow was temporary: select a second account, finish the work, then return to the previous settings.

That gets awkward when you regularly move between personal, work and project accounts. For version 0.4.0, I wanted to save those identities once and switch to them by name.

One name for the key and commit identity

An account can now be saved under a name you choose. Switching selects its SSH key and sets the Git commit name and email for the project you are working in, without entering the details again.

Shell
ghssh switch arsam
ghssh switch arvand
ghssh switch work

A Windows installer, not another Python setup

The release also adds a Windows .exe installer. After installation, open a new CMD or PowerShell window and run ghssh directly. There is no separate Python installation or manual virtual-environment activation in this workflow.

Git and Windows OpenSSH Client are still required. The installer removes the Python setup step; it does not replace those dependencies.

Make the first run easier too

Alongside saved accounts, I added a step-by-step account setup, support for existing or newly created keys, and fuller command help. The guide is the starting point; accounts lists the identities you have saved.

This note describes the 0.4.0 release I announced on LinkedIn. The related project links to the repository for installation instructions and subsequent releases.

Shell
ghssh guide
ghssh accounts