Today Synchi is finally public! It’s designed for syncing files between two locations (local or over SSH). It detects conflicts, and lets you decide what to do.
Why not rsync/Unison/Syncthing?
- rsync has no memory between runs and is one-way
- Unison needs to be installed on both sides
- Syncthing requires always-on daemons
Synchi runs on demand, works over SSH, and only transfers what actually changed.
I use it daily for syncing a shared folder between my machines and an android phone. Works great in combination with Tailscale/WireGuard so that you can sync files remotely.


It doesn’t work that way. Conflicts are resolved before any transfer starts. The flow is:
Scan both sides and compare (compute file hashes or just compare mtime, no data transferred)
Show conflicts if any → you resolve them
Show copy/delete summary → you approve
Only then does the actual transfer begin. So you never come back to find it halted mid-transfer. All decisions happen upfront while it’s just reading metadata, which is fast even for large trees.
This makes so much more sense than the Windows behavior.