How to Effortlessly Keep Files In Sync Across Apple Devices Using iCloud Drive Without SyncThing or rsync
TL;DR: On macOS 15 and iOS 18, iCloud Drive can now automatically keep your files and folders up-to-date. Learn how to set it up on iOS and macOS.
I'm a big fan of SyncThing. I use it to seamlessly transfer files across devices. SyncThing's primary selling point for me is its ability to reliably, securely and quickly synchronize keeping cross-platform devices up-to-date without relying on a third-party intermediary. It also offers encryption and the ability to easily ignore specific file patterns. For automating file sync between devices without involving a third party, I have found it to be the most robust solution I've ever used.
While most of my needs only require a one-way sync, there are times when I need two-way sync. Usually that's when I want to download something, move it to another location on a different device and then have that action remove the file from the original, source device. In these cases, I rely on a device that's always on to monitor for new files and then perform actions that ultimately sync back to my iPhone or iPad afterward. For example, when I want to download a filetype on one machine, automate uploading it on another machine and then have that action remove it everywhere. I frequently use Hazel on a Mac mini to monitor folders and automate tasks like moving, uploading and deleting, while SyncThing ensures that the folders stay synchronized across devices.
Years ago, I tried using iCloud to sync devices across my Apple devices, with Hazel managing rules on my Mac mini. Unfortunately, iCloud didn't support always keeping local folders up-to-date, so it just didn't work. I couldn't rely on my Mac mini to actually download the file I put in a shared iCloud folder like Downloads. Frankly, I found it ridiculous. Years ago I worked around this by using a selective sync extension for macOS but even that eventually stopped working.
Thankfully, this has finally been remedied with Sequoia macOS 15 and iOS 18. Now, you can automatically keep your files and folders in iCloud up-to-date on iOS and macOS.
This made me realize I can finally stop using SyncThing for scenarios where I want to share files across my iPhone and iPad. I can now download items to my iCloud Downloads folder on my iPhone, iPad, and Mac, and let Hazel monitor the folder and perform actions which orchestrate keeping everything in sync.
The timing couldn’t be better, as iOS currently has a bug that makes using the third party SyncThing app almost impossible. Safari refuses to reliably save files to a custom local folder, and the SyncThing AppStore app is unable to monitor the iCloud Downloads folder. No matter how many times I change Safari’s download folder settings on iOS, it keeps reverting to a different location—maddening!
Anyways, as a result of switching to using iCloud Drive for some basic two way sync, I no longer need to use the SyncThing app. I've disabled background app refresh for it on my iPhone and iPad, and hope for a little better battery life. All of this is to say that with iCloud Drive, I can finally sync and monitor my folders the way it should have worked from the beginning.