Only changes move
Files are hashed and compared. Only what changed is sent, compressed, and an interrupted transfer resumes where it stopped.
Write code on your laptop, run it on the GPU box, lab machine or cloud VM. When the connection drops, nothing freezes and nothing dies.
The usual way to work on a remote machine hangs everything on one long SSH connection. On hotel Wi-Fi, a VPN or a train, that connection drops, and it takes your work with it.
VS Code Remote-SSHYour files live on the server, so every keystroke waits for the network.
ssh host cmdThe process is tied to the session. When the session goes, so does the two-hour run.
rsync + sshCopy, connect, run, copy results back, and start over when it drops halfway.
devsync never keeps a connection open. Each step is a separate, quick SSH session that's safe to retry, and your command runs on its own on the remote. A drop just means waiting a moment.
Files are hashed and compared. Only what changed is sent, compressed, and an interrupted transfer resumes where it stopped.
Commands start detached on the remote. A dropped link only delays the output; the job keeps running and its exit code is kept.
Output, exit code and the files your command wrote come home. Files you edited meanwhile are never overwritten.
Without babysitting the connection.
Browse a 50 GB project folder by folder and tick what to sync. Skipped folders aren't even scanned.
Click any change to compare it with the remote's copy before you send it.
Changes queue while you're offline and go out with backoff, or right away when you say so.
A Claude Code hook sends tests, builds and installs to the remote while the agent edits locally.
Stage, commit, switch branches, pull and push the remote repository from VS Code's Source Control.
Just SSH. devsync uploads its own small static agent, checks it, and replaces it when you upgrade.
Other good tools cover parts of this workflow. devsync covers the whole loop.
| Edit locally | Survives disconnects | Runs commands | Results back | Remote install | |
|---|---|---|---|---|---|
| devsync | Yes | Yes | Yes | Yes, conflict-safe | None |
| VS Code Remote-SSH | No | Editor freezes | Yes | — | VS Code server |
| ssh host cmd | — | Command dies | Yes | No | None |
| rsync + watcher | Yes | Retry by hand | No | By hand | rsync |
| Mutagen | Yes | Yes | No | Two-way sync | Agent |
All you need is SSH access to the machine.
devsync init me@gpu-box:~/project
Any host from ~/.ssh/config works. An empty folder pulls the remote's code first.
devsync exec -- python train.py
Your changes go first. Output streams back and the exit code is yours.
devsync watch
Or install the VS Code extension and let auto sync do it on every save.