Install
Platty runs on Windows 10 (1809 or later) and Windows 11. Download the latest build from Releases:
- Installer (
platty-x.y.z-setup.exe): installs for your user only, without administrator rights, and adds Platty to the Start menu. - Portable (
platty-x.y.z-windows-amd64.zip): unzip anywhere and runplatty.exe.
Beta builds aren't code-signed yet. If SmartScreen stops the download or the first launch, choose More info → Run anyway.
The first time you open Platty, Sol walks you through the theme, the terminal, an optional master password and importing your servers.
Your first connection
- Click New host on the home screen, or press Ctrl+Shift+N.
- Type the address, the port if it isn't 22, and the user name.
- Pick how to sign in: a password, a key from the keychain, or the Windows SSH agent.
- Click Save and connect. The first time, Platty shows the server's fingerprint so you can check it before trusting it.
Already use OpenSSH? Choose Import ~/.ssh/config from the hosts menu (⋯) and your hosts, users, ports, keys and jump hosts come along. For a one-off connection, press Ctrl+Shift+P and type user@host.
Keys and certificates
Open the keychain with Alt+2.
- Generate an ed25519 key, with or without a passphrase. Copy the public key into
~/.ssh/authorized_keyson your servers. - Import an existing private key. If a
-cert.pubfile sits next to it, the certificate is attached too. - Attach a certificate from the key's menu to sign in with keys signed by your organization's CA.
Passphrases are asked for the first time a key is used and kept in memory until you quit or lock Platty. Tick Remember it in the vault to store one.
Hardware keys
YubiKeys and other FIDO keys work through the Windows OpenSSH agent: load the key with ssh-add and pick the Agent sign-in method for the host.
Agent forwarding
Turn on Forward my SSH agent in a host's advanced options to use your local keys from that server, for example to git pull there. Only do it for servers you trust.
Vault and security
Hosts, keys, passwords, rules and snippets live in an encrypted vault in %AppData%\Platty. The data is sealed with XChaCha20-Poly1305 and a random vault key, which is protected in one or both of these ways:
- Your Windows user (DPAPI): the vault opens on its own on this PC.
- A master password (Argon2id): set it in Settings → Security.
With a master password you can turn off Unlock with Windows, so not even other programs running as you can open the vault. Lock Platty with Ctrl+Shift+L, or let it lock itself after a period of inactivity.
Backups and moving to another PC
Settings → Data → Export writes a .platty file protected by a password of your choice. Passwords and saved passphrases are left out unless you include them. Importing never deletes anything and never replaces a host key you already trust.
SFTP
Open the SFTP panel with Alt+6 while an SSH session is active.
- Drag files or folders from Explorer onto a session to upload them, or drag an entry from the panel out to Explorer.
- Choose Edit on a file to open it in its default app; every time you save, Platty uploads it back.
- The transfer queue at the bottom shows progress and lets you cancel.
Follow the terminal's folder
If your shell reports its working folder (OSC 7), the panel opens there and a button takes you back to it. For bash, add this to ~/.bashrc on the server:
__platty_osc7() {
local LC_ALL=C path="" ch i
for (( i = 0; i < ${#PWD}; i++ )); do
ch=${PWD:i:1}
case $ch in
[A-Za-z0-9/._~-]) path+=$ch ;;
*) printf -v ch '%%%02X' "'$ch"; path+=$ch ;;
esac
done
printf '\e]7;file://%s%s\e\\' "$HOSTNAME" "$path"
}
[[ $- == *i* && $PROMPT_COMMAND != *__platty_osc7* ]] && PROMPT_COMMAND="__platty_osc7${PROMPT_COMMAND:+;$PROMPT_COMMAND}"
Port forwarding
Create rules in the port forwarding panel (Alt+3). Each rule runs over its own connection and has a switch to start or stop it.
| Type | What it does | OpenSSH |
|---|---|---|
| Local | Listens on your PC and forwards through the server. | ssh -L |
| Remote | Listens on the server and forwards to something your PC can reach. | ssh -R |
| Dynamic | A local SOCKS5 proxy that goes out through the server. | ssh -D |
Terminal
- Tabs come back when you reopen Platty. Double-click a tab to rename it, drag it to reorder it, or right-click it to duplicate or close it.
- Split a tab with Ctrl+Shift+D or Ctrl+Shift+E. Right-click a pane and choose Broadcast input to this tab to type into every pane at once.
- Log to file from the same menu saves what the session prints, as plain text.
- Links open with Ctrl+click, including OSC 8 hyperlinks. Programs can copy text to your clipboard with OSC 52; Platty tells you when they do.
- Fonts: JetBrains Mono, Fira Code or Geist Mono, with ligatures you can turn off in Settings → Terminal.
- On connect: give a host a command to run as soon as the shell opens, such as
tmux attach.
Keyboard shortcuts
| Action | Shortcut |
|---|---|
| Search everywhere | Ctrl+Shift+P |
| New terminal / new host | Ctrl+Shift+T / Ctrl+Shift+N |
| Split right / down | Ctrl+Shift+D / Ctrl+Shift+E |
| Close pane | Ctrl+Shift+W |
| Move focus between panes | Alt+Arrows |
| Next / previous tab | Ctrl+Tab / Ctrl+Shift+Tab |
| Sidebar / tool panels | Alt+1 / Alt+2 … Alt+6 |
| Copy / paste | Ctrl+Shift+C / Ctrl+Shift+V |
| Find in terminal | Ctrl+Shift+F |
| Lock Platty | Ctrl+Shift+L |
| Settings | Ctrl+Alt+S |
Build from source
You need Go 1.26 or later on Windows.
git clone https://github.com/PlattySSH/platty
cd platty
go build -ldflags "-H windowsgui" -o bin/platty.exe ./cmd/platty
The README covers tests, screenshots and the release script.
