For Ghostty users who manage servers

Command your
SSH fleet
from the menu bar.

Schooner is a native macOS SSH manager — a lean menubar app paired with a fast TUI. Drag-and-drop ProxyJump topology, server-to-server transfers at datacenter speed, and zero cloud dependency.

Requires macOS 14 Sonoma or later · Apple Silicon & Intel

Schooner app icon
Native SwiftUI · Local-first · Zero cloud · One-time purchase · Ghostty-first · macOS 14+

Everything you need. Nothing you don't.

Schooner is opinionated by design — built around the workflows of developers who care deeply about their tools.

Visual ProxyJump Canvas

See your entire SSH topology on a drag-and-drop canvas. Connect nodes with a line to generate ProxyJump config automatically. Force-directed layout clusters related hosts — pin any node to lock its position.

Learn more →

Server-to-Server Transfers

Transfer files directly between two remote servers at datacenter bandwidth — no routing through your laptop. Schooner handles trust establishment automatically and keeps an auditable record of every authorized key it creates.

Learn more →
🖥

Menubar + TUI Dual Mode

80% of daily tasks — searching hosts, connecting, checking status — live in a compact menubar popover. Drop into the full TUI picker (sc) when you're already in the terminal.

🔒

Non-destructive SSH Config

Schooner edits ~/.ssh/config with a lossless AST parser — your comments, blank lines, and Match blocks survive every operation. Every write is preceded by an automatic snapshot.

📂

SFTP File Transfer

Browse local and remote filesystems side by side. Drag files across panels, resume interrupted transfers, and resolve conflicts with a clear dialog. Progress tracked per file, not per folder.

🔑

SSH Key Manager

Generate, view, and deploy SSH keys without leaving Schooner. One-click ssh-copy-id installs your public key on any host — password never hits disk.

🏷

Tags, Nicknames & Notes

Annotate every host with nicknames, multi-tags, and freeform notes. Production hosts get an automatic red-border warning on the canvas and a confirmation prompt before connecting.

🔄

External-Change Detection

If you edit ~/.ssh/config in vim while Schooner is running, it detects the change and opens a merge dialog — no silent overwrites, ever.