

Termy – more than SSH client (native btw)
Most SSH clients on Mac are either Electron wrappers or generic terminal apps with SSH bolted on. I wanted something that felt like it belonged on macOS, so I spent 6 months developing my product solo.
"Native" gets thrown around a lot, so to be specific about what I mean: the whole app is Swift/SwiftUI, including the terminal emulator (not a libvterm fork, not xterm.js in a WebView) and the Mosh client (own implementation in Swift with a complete framebuffer mirror). No Electron, no web shell, no hidden Chromium.
A few things I'm proud of under the hood:
- SSH stack on top of Citadel + a fork of swift-nio-ssh with a window-adjust patch and a custom RSA path for legacy key formats some servers still hand out
- Own SOCKS5 server written in Swift (RFC 1928 + 1929 auth) for dynamic forwards, so `ssh -D` works without shelling out to /usr/bin/ssh
- Active tunnels (local / remote / dynamic) get snapshotted and restored on reconnect, so dropping Wi-Fi at a cafe doesn't kill your forwards
- Smart Reconnect that survives a cold launch, not just a network blip
- ProxyJump multihop with a runtime session graph
- Multi-host broadcast with a diff view across panes
- FIDO2 / sk-* hardware keys via libfido2
- SFTP File provider
- Built-in S3 client (AWS + R2 + B2 + Wasabi + MinIO + custom endpoints) with a real object browser, multipart uploads, versioning/lifecycle/CORS/encryption settings, presigned URLs and ACL/tag editors. Same window as your SSH sessions
- Keys live in the macOS Keychain (iCloud sync off by design), can be generated inside the Secure Enclave with Touch ID required on every signature, or imported from existing OpenSSH files. Passphrase-protected ones decrypted in-app
Solo project, so honest feedback on what feels off is genuinely useful. Happy to answer technical questions in the comments.
ProductHunt: https://www.producthunt.com/products/termy
Termy is now available in EAP: termyapp.com
Code MACOSAPPS50 is 50% off any plan for the first 25 purchases.