Integrating Siri and OmniFocus

The iPhone 4S can create reminders with the new iOS5 reminder app. It's pretty slick with location-aware geofences and multiple lists but it is suboptimal to have reminders residing in multiple places. Ideally, everything goes into my main capture application and I can stick to one workflow, right? So the question was "how do I get reminders from Siri into OmniFocus?"

I've been a huge proponent of OmniFocus for a while now. I use it to run work projects, home projects and keep track of things in general. Since I got the iPhone 4S, I've been wanting a way to integrate the new Siri AI with Omnifocus but, since Apple hasn't yet provided a Siri SDK, there's no obvious way to make it happen.

After searching around on the OmniFocus forums I ran across a few methods but I refined them to work with my workflow. I thought I'd post the process I used so that other OmniFocus nerds can benefit from my pain.

Here are the steps:

  1. Create a contact in your Address Book called "Omni" (or whatever you want). The key is that you are creating a name that is easy for Siri to understand when you speak it. If you're hooked up to iCloud, that new contact will make it on to your iPhone in 30 seconds or so (slick!).
  2. For the new contact, make the email address "mytargetemailaccount+omnifocus@targetemailprovider.com". For mine, it looked like "jeffhunsberger+omnifocus@gmail.com" (actually that's not my exact email address but you get the idea). The key here is the "+omnifocus" tag. That tag is ignored by properly configured email providers and will be used as a routing tag when it hits your Mail app. It should be noted that iCloud addresses do not support this tagging method.
  3. Open OmniFocus, go to the Mail preferences tab and select "Add mail Rule to create OmniFocus actions"
  4. On the preferences, select "+omnifocus" before the @sign"
  5. Make sure that your target email account is shown in the address box on the right side of the pane.
  6. Set up Mail by adding the account you created in your Address Book (minus the "+omnifocus", of course) (assuming it doesn't already exist).

Using Siri

To use your newfound power, open up Siri and say "send email to Omni subject ". Siri will come back and ask you what you want the email to say. Whatever you tell her will make up the "note" portion of your task. The subject line of the email will be the Action itself. If you want to flag the action, say "exclamation point".

Using regular dictation you can say a wide variety of things but the problem is that most of those things don't work when you're in the Siri interface. I was able to get certain things to work. You can say things like "at sign", "greater than sign" to insert "these symbols"@" and ">". OmniFocus's email processing script protocol allows you to specify the "@" symbol for contexts or the ">" to specify projects but I wasn't able to get the email parser to recognize them consistently.

In practice, when using Siri, I am usually in the middle of doing something like driving which is preventing me from typing. Because of that, my workflow is the path of least resistance -- in this case, send an email to Omni(focus) and capture something to the Inbox for processing at a later date.

Using the steps above, entering new items to my Inbox is now as easy as saying "Siri, email omni subject remember to post about task entry". Siri creates an email message, addressed to my contact Omni, with the subject line stating "Remember to post about task entry". At that point, Siri asks "What do you want to say in your email?" and I can add any relevant notes or just say "no text". Siri reads the email back and asks if I want to send it. I say "yes" and off it goes. When I get home and open up OmniFocus (assuming Mail is open to process the emails), the task should be sitting in my Inbox a few seconds after.

Pros and Cons

I'd love to have native Siri access for OmniFocus but I am assuming that won't exist at least until the Spring. For the time being, having a hack to get the two applications to work together is worthwhile to me. I hate having to use Mail, honestly and it's one of the disappointments of this system. I was happy to have finally transitioned away from it although its nothing against the Mail app per se; in fact I think Apple made great improvements to Mail in Lion. I just like Sparrow as a light email client and most of the mail I manage is Gmail-related at this point. That said, I have an iCloud email account set up now so I can see some logic in running Mail and Sparrow. Almost, anyway...

The other issue is that the tasks don't appear in OmniFocus until they get processed by the Mail rules so this only works when the task can wait to arrive in OmniFocus until I get home and can open my Macbook Air. I am thinking of using the iOS5 Reminders app for critical, location-based reminders and use OmniFocus for stuff that can wait a bit to make it to my Inbox.

Despite needing to work out a few kinks, I love that I've tied my two favorite applications together to make me more productive and forget less stuff which, ultimately, is what all of this is for.