File Transfer
A dual-pane SFTP browser for local↔remote transfers — and a unique direct server-to-server mode that routes traffic at datacenter speed, bypassing your laptop entirely.
Opening the Transfer window
Click the ⛵ menubar icon → Transfer Files…. The window shows two panels. Use the host selector at the top of each panel to choose Local or any remote host.
Browsing files
Navigate by double-clicking folders. Right-click for context menu options: New Folder…, Rename, Delete, Get Info. Both panels support independent navigation.
Transferring files and folders
Select one or more items in either panel, then drag them to the other panel — or click the → / ← arrow buttons in the toolbar.
Folder transfers are fully recursive. Progress is shown per-file within the folder (not as a single opaque progress bar for the whole folder).
Conflict resolution
If a destination file or folder already exists, Schooner presents a dialog:
- Replace — overwrite the existing item
- Keep Both — rename the incoming file (e.g. report 2.pdf)
- Skip — skip this item and continue the rest of the transfer
- Cancel — abort the entire transfer
Resume interrupted transfers
If a transfer is interrupted (network drop, app quit), restart it from the same source and destination. Schooner detects the partial file and resumes from where it left off, verifying the already-transferred prefix via SHA-256 before continuing.
Server-to-server direct transfer (Pro)
Set both panels to remote hosts and initiate a transfer. Schooner can route the data directly from server A to server B, never touching your Mac. This uses datacenter bandwidth instead of your home connection — typically 5–50× faster.
Trust setup
The first time you transfer between a specific pair of servers, Schooner asks:
- This transfer only — a temporary keypair is created, scoped to SFTP commands and the source IP, and destroyed after the transfer completes.
- Permanent (recommended) — a persistent ed25519 key is installed in server B's
authorized_keyswith a clearly labelled comment:Schooner:serverA→serverB(date). Future transfers between the same pair reuse this key without prompting.
All trust relationships can be reviewed and revoked in the Trust Manager.
Transfer path preference
In Settings you can set a global preference for server-to-server transfers:
- Ask each time (default) — prompts before each transfer
- Always direct — skips the prompt, always goes A→B directly
- Always via local — routes through your Mac (useful behind restrictive firewalls)
SSH keepalive: Long directory transfers use a single SSH connection. Schooner sends TCP and application-layer keepalive packets every 15 seconds to prevent the server from dropping an idle connection mid-transfer.