Real-time, two-way file sync between two machines over SSH — with full file history as a first-class feature.
Edit source on your Mac; it lands on your Linux GPU box in milliseconds. The server's build artifact flows back. Every save is versioned. One command — tomo sync user@host /path — records the peer, pushes a static binary, and starts syncing. tomo restore is undo for your filesystem.
curl -fsSL https://tomo-sync.dev/install.sh | sh
or build from source — github.com/jakequist/tomo
Six claims, each true today on Linux↔Linux.
The live sync path always ships the latest bytes immediately. Sync latency is never sacrificed for history.
Content-addressed store: FastCDC chunking + BLAKE3 + zstd in one SQLite file. A one-char edit to a 10 MiB file stores ~1% new bytes.
Vector clocks decide causality; both sides converge to the same deterministic winner with no negotiation. The loser is always preserved and recoverable.
Tomo pushes its own static binary over SFTP (SHA-256 verified) and runs it over the same SSH connection. No install on the server, no root, no daemon.
Staging plus atomic rename everywhere. kill -9 at any instant leaves no partial file at any final path — proven in the acceptance suite.
Fully static musl builds — no glibc roulette, no OpenSSL (rustls), SQLite bundled. Nothing to install beyond the one file.
A pure state machine at the core, real I/O at the edges.
rsync -e ssh.