OmniFocus 3 with Outlook 2016


Happy to report that the most recent point release (3.1.2) has fixed this for me.

From release notes:

Crash — Fixed a regression where running a script which populated, then opened, Quick Entry could result in either data loss or a crash.


I’ve downloaded the script, placed it in the correct folder, but when I select a message in Outlook and click the script’s name on the “Outlook Scripts” section of the Scripts tool, nothing happens. How do I use this script to add an Outlook mail message to my Omnifocus 3 Inbox?



Hi all,

I’ve got the script working, and it places a copy of the email in my inbox. My question is:

In the older outlook and older OF it would include a link to the email. So from OF I could double click that link and open up the email that I’d previously captured so I could respond.

Is this now not possible?


Hi AudoMate,

I believe the issue is a change in out Outlook works now. I’ve tried to recreate that functionality in my own branch of Justin’s script and I can’t get it to work either.


Good News - managed to get the script working for Omni 3 and Outlook 2016!

But one small item. (On my previous script i used) You were able to set a flag to del the email as part of the move.

Now it just stays in my inbox - small issue but would love the advice on what setting I need to change.


I’ve been able to get my version of the script to work. I’m curious if anyone has got a version that does what Warren wants by deleting/trashing the email after it gets copied over?


I’ve been trying to solve this problem for a bit and had installed the following app, to enable the outlook:// URL handler. I was then using another script to generate the link and copying it into the task. (Ugh)

But found this script and message string today, so I modified the original script to add that field to the task notes. I haven’t had a lot of time to test. If I can figure out how do the pull request on the script, I’ll merge it into the Git repo of the original script and someone smarter than me can modify / properly implement.

I modified the following section “PROCESS EMAIL CONTENT”:

					set m_Content to plain text content of theProps
					set msgID to id of theProps
					set msgURL to "outlook://" & msgID as string
					set theContent to return & return & "Link: " & msgURL & return & "Name: " & s_Name & return & "Subject: " & r_2 & return & "Sent: " & r_3 & return & "Category: " & r_4 & return & return & return & return & m_Content & return & return

So, the notes of the task in OF looked like:

Link: outlook://134700
Name: Dustin J. Schnabel
Subject: [EXTERNAL] Test Message
Sent: Friday, April 19, 2019 at 1:28:50 PM