I built my own SSH client. You can download it today.
By Sara · · 4 min read
ServerDesk 1.0 · macOS · Windows in the works
Digitalgrub runs its own servers — websites, databases, app backends, all of them reached through a terminal every day. And a terminal gives you no seatbelt. One night I typed a command meant for a test server into a window connected to a real one. Nothing broke that time. But the thought stayed afterwards: it could have, that easily.
Every SSH app out there makes connecting easier. None of them seemed worried about making breaking harder. That gap became the whole idea behind ServerDesk.
What ServerDesk is
A native Mac app that wraps SSH in a workspace. Your servers live in one list, grouped by environment — production is marked in red, and it behaves that way too. Connecting is a click, the terminal is a real terminal, and it reads the ~/.ssh/config you already have.






The guardrails
- Built-in quick actions carry a risk label — read-only checks in green, restarts in orange. Anything that changes state asks first, and on a production server the confirmation shows exactly which command will run, and where, before it runs.
- A command palette (Cmd K) that jumps to any server and finds your saved snippets, so the right command is one search away instead of retyped from memory.
- Credentials live in the macOS Keychain. Host keys are verified, and a new host shows you its fingerprint before the first connection.
- An audit trail: what ran, on which server, and when. When something breaks at midnight, you can see what happened.
The point is not to slow you down.
Ninety-nine commands out of a hundred run exactly as they always did. The guardrail exists for the hundredth one — the destructive command, on the wrong server, at the end of a long day. One extra confirmation there costs two seconds. The mistake it prevents can cost a weekend.
Built with
SwiftUI, with SwiftTerm driving a real terminal. It uses the system ssh underneath — the same OpenSSH your muscle memory already trusts — so keys, jump hosts, and configs behave exactly as they do in Terminal. Getting the signed, notarized download you are about to click took four separate fights with one error message; that story is its own post. And a Windows version is taking shape — same ideas, rebuilt in Rust and TypeScript — but it is not ready yet, and this page will say so when it is.
Get it
ServerDesk 1.0 is free. It needs macOS 26.5 or later, the download is 2.3 MB, and it is signed and notarized — it opens clean, no warnings. It does not phone home, and your credentials never leave your Keychain.
Download ServerDesk 1.0If you try it, say what confused you, or what it should refuse to let you do — every message gets read. This is a tool we use every day at Digitalgrub, so it keeps getting better either way.
