Syncing Multiple Task Managers

Hi all,

I’m wondering how everyone deals with planning with others?

I have 2 main issues if I had my way I would use Omnifocus for all my todo list needs, however I’ve work in a windows environment that uses Teams and todo with shared task list that are updated by multiple people. my second Problem is i have a shared grocery list with my partner so we can both add in items and either of us can pick them up.

What I would really like to be able to do would be for everything to feed into my OmniFocus and me to be able to manage tasks from there. The dream would be bi-directional syncing with tags and projects maintained but at the moment i can’t work out how to do anything close. Does anyone think this would be possible or is this a pie in the sky dream?

How do others manage this problem i can’t be the only person that has similar issues.

My own recommendation would be not doing it.

Different tools are best suited for different jobs. Sometimes the job determines what we have to use. Sometimes we get a choice. While it is often possible to trigger various updates between using web services and API calls, it is convoluted and tends to focus on basic one way push, not two-way sync.

Each tool has a different design, a different data architecture and different terminology. What might be a tag in one system might be a label, project or context in another. Maybe one system only supports a single project whereas another supports multiple labels. They are not designed to integrate and so they don’t integrate well.

My advice. Pick the right tool for the job from what’s available and drop it into the “tool slot” of how you work on something particular. Avoid making the tool driving how you work as much as possible.


It is “possible” but probably very error-prone and very messy to set up. You would need to write alot of custom code. My stab at it would probably be this:

Make it more simple by just creating all the “shared tasks” in microsoft todo. When there is a new task there (you can just poll their API every X min) then your script add it as a task in omnifocus and store the task id in for example notes of the omnifocus task. It then check omnifocus (or just check omnifocus DB) every X min (its possible omnijs can trigger on events in omnifocus but i have to little exp about it) and if it sees that a task has been completed in omnifocus it sends an api call to microsoft todo to update the task as completed. It will also every X min check if a task in omnifocus has been completed in microsoft todo and then update it there.

However, I agree with the recommendation to not do it. Becuase you will have lots of edge cases. What happens if someone renames a task? You would need to handle that. Both ways. What happens if you clicks completed and then uncompletes it? Etc. Almost more complicated than writing your own todo software from scratch.

Thanks for all the advice. I had basically come to the same conclusion especially with work to do lists. Probably better anyway for mode switching anyway.

Was just trying to see if someone else with more coding knowledge than me had solved this and there was a magic bullet solution.