Multiple Contexts per Task [now in TestFlight]

Am I blind or is this still not / will never be implemented?

I know some people don’t like it, but hey, don’t use it if you don’t like it. I don’t see any reason why this shouldn’t be implemented and it’ll help so much …

please (begging)



… except it’d make the data structure that’s currently shared between 3 platforms (4 if you include OF1) non-backwards compatible and therefore break all other platforms. Omni have stated this on multiple occasions.

Omni stated that the intention of version 2.0 was to revise the user interface and workflow. This becomes the foundation for future features. Tags and/or multiple contexts is one of the feature requests that has been discussed frequently in the forums and will possibly get integrated in a post-version 2.0 update. It’s not a simple matter of “hey, let’s just put tags/multiple contexts in and see how it plays out.” Introducing new features takes time to implement and could become a P.R. disaster if just tossed it without considering the consequences.

Take a look at Mac OS X. It’s taken us years for Apple to get from OS X v10.0 to OS X v10.9. I still ran OS9 until OS X Jaguar was released.

To expand on what @mr_rique mentioned, you can add an extra word with or without a hashtag, which could then be searchable from project view alongside those with the official context. For example, if you have an context for “Email” and then added #email to tasks with other contexts, you could do a search for “email” and both the tasks from the Email context and those with #email would show up. You would have either do a search or create a custom context in order for all of them to show up.

But if you absolutely must have multiple contexts, there’s always Simplenote.

Continuing the discussion from How can I add more than one @context:

I’d like to reiterate what I wrote in the other thread.

1 Like

Maybe I’m not aware of exactly how it would work, so please forgive my ignorance, but it seems to me that if you don’t want to use multiple contexts, you wouldn’t have to. In which case, how would it affect the complexity or friction of your workflow? Why not allow it for others who feel strongly that they need it?

Continuing the discussion from Multiple Contexts per Task:

Sure I’ll explain.

Historical element:
OmniFocus is based off of the Kinkless mod for OmniOutliner and was originally intended to be used in accordance to the GTD (Getting Things Done workflow).

As the GTD workflow was initially for a physical, paper-based workflow, with contexts and projects being stacked trays in physical forms, it means that you can only have one context (can’t really duplicate your paper documents, or if you do (through photocopying, printing another copy, …) it would be hard to keep track of 1) The document 2) Updates to the document (highlighting one portion of the document would entail highlighting the other, wherever it is in the context/project).


To avoid being hypocritical, as I said in another post, OmniFocus (2) is not intended to be just for people who subscribe to the GTD theory, and it should not. It should be extensible. The proof primarily stems from (as I said in the post) about how there are just two mentions of GTD on the OmniFocus page on OmniGroup’s website.

Hence two other arguments following this one as to why multiple contexts per task should not be added to OmniFocus 2.

Practical element:

How would this work in terms of UX?

Workflow element:

Adding multiple contexts would add unnecessary complexity to the system. it would mean that it would appear in multiple places, which, returning back to the paper-based analogy of GTD, would be odd. How would you keep track of a task that straddles multiple contexts?

In terms of user preference – unlike issues like data density (which does warrant user-set options), multiple context radically changes how the application works, and changes the paradigm by which the application operates.


What other major productivity app supports multiple contexts?

Perhaps there is a reason as to why this feature is omitted, for the right reason.

Contexts is a very different concept to tag. To give an example – Evernote has both notebooks and tags. The purpose of tags is identification, whereas notebooks is for sorting. Adding multiple contexts per tags would transfer the function of the tag from being a repository (the notebook, in this comparison) to a tag. Notes in Evernote don’t straddle across multiple notebooks for a particular reason.

1 Like

I’d have to think that the people who want multiple contexts really want tags. Do people really have a need to assign, say, a place context (work), a tool context (phone) and a person context (Joe) to perform a particular action? Requiring more than one fixed context that does not leave other contexts flexible seems more of a hindrance than a help. Tags, on the other hand, can help to temporarily sort and surface actions and should include keyword-types that go beyond contexts (e.g., #quickies, #reference).


Continuing the discussion from Multiple Contexts per Task:

I’m afraid I’m unconvinced as to the merits of tagging actions/tasks/projects in OmniFocus. In other productivity applications (particularly those serving as a note-taking or storage function, or a knowledge database) like DEVONthink and Evernote, tagging does make sense, as it’s for reference purposes.

The sorting and identification in OmniFocus is twofold – firstly through the Projects structure, and secondly through the Contexts structure, with each serving its own purpose.

Interesting conversation and points of view. Clearly this is something that has been debated a great deal already. Maybe tags is the answer. Not entirely sure. For the sake of example, here is a use case: I have contexts for type of work. An example of which is “Documentation”. To this context I have assigned different related items. I also have a “Waiting For” context under which I have different people. I find that I would like to have an item exist under documentation but also in the waiting for context when I am expecting a particular piece from someone. This way when I am looking at documentation that I have to submit I can see that this item exists but also if I am in a meeting with a person I can see that they owe me this specific piece. I might also want it to exist in a “Follow Up” context for mornings when I feel particularly proactive. Not sure if this warrants multiple contexts I feel like it does and I don’t really foresee any added complexity but then I am no expert nor am I a developer. There may be a much better way to handle such a thing. If so i would love to hear about it.

I use to work for several proposes, for example: I am make a document for some university and some person I need to refer it to the university, or tne person or my company. so this item need to have @university + @mike + @mycompany

OmniFocus has never supported multiple contexts on an action, and it’s not on the way for 2.0 as far as I’ve seen.

You could use nested contexts, but you should also consider if there are better ways to find what you’re looking to do. Contexts are not tags.

Continuing the discussion from How can I add more than one @context:

I personally think it’s a great feature of OmniFocus to not have multiple contexts.

Reduces complexity, reduces friction for working.


imagine doing this for all Your 100something tasks, creating gazillions of tags- like not taking care of due tasks, contexts would probably lose their effectiveness allover. For this reason (and in accordance with David Allens “GTD”) Omni decided to have only one context: a location, a tool, something this particular thing can’t be done without.

Enter contexts ;-)

1 Like

All - this thread could quickly devolve into YAMCD (Yet Another Multiple Context Debate). ;)

I think it is more useful to explain how the use case can be managed with OF2 than debate the pluses and minuses of multiple contexts. I personally prefer multiple contexts, however I use them as tags. And OF2 already supports this through perspectives or even the Search filter control in the toolbar.

@valeco, I suggest you check out this topic - Multiple Contexts per Task [now in TestFlight]

In there, I point out - “(I realize this is not a database object “tag” or an application to the current DB object “context” which extends it’s usage beyond just one context) - you can always add your own tags in the title or the
descriptions and include a search for that text string in a custom perspective.”

And @foleymeister more helpfully builds on that - “To expand on what @mr_rique mentioned, you can add an extra word with or without a hashtag, which could then be searchable from project view alongside those with the official context. For example, if you have an context for “Email” and then added #email to tasks with other contexts, you could do a search for “email” and both the tasks from the Email context and those with #email would show up. You would have either do a search or create a custom context in order for all of them to show up.”

Hope that helps you!


If I were to do the add extra word thing and create perspectives based on keyword search…would the perspectives work in IOS? I am increasingly sure that I need some means by which to accomplish multiple context or tags or whatever you want to call it. I also don’t understand why folks seem to think that the world will just descend into anarchy as a result. I find that at the very least I want to assign a few of things (contexts) to a task:

  • the type of work (example. documentation, administration, etc.)
  • peoples names (if I have need something from them or have delegated something to them)
  • status (waiting for, follow up, etc)

Most often I find myself wanting to assign something from each of these. Personally, I think the ability to do so would be invaluable. I mean why wouldn’t I want to be able to ask “What documentation do I have to deal with?” or if I’m going into a meeting with my team be able to pull up and print a context with all of the items I am waiting for or have delegated to them etc. and not miss items in either. I don’t like the either/or thing. I mean am I not just talking about more powerful perspectives? I may have to do the keyword thing, not ideal but if its functional so be it. But if perspectives using these keywords won’t work across IOS devices then I dunno if thats going to work.

While still keeping the simplicity of the single context but recognising that some extra functionality is needed, it would be good to have a seperate location field.

This could be used with the location reminders in iOS and enable the context field to be used for something userful outside of locations.


@msalam, I don’t know how it would work in OF2 on the iPhone or OF1 on the iPad. Although I own both, I am doing all of my testing on the Mac. I will give it a try when I get a chance.

And I agree with what you said. I simply don’t understand why (as you put it) some are concerned that “anarchy” is a short step away from multiple contexts (I am being facetious of course!).

But (playing devil’s advocate to myself) - given I work with databases, I totally understand the complexity of relational databases and many-many relationships. So I don’t much mind supporting this particular use case with keywords instead of another column in the db. As long as it works - and through the support of the search feature in perspectives, AFAIC, it does work just fine.

Someday (I think) Omni will support added metadata in the records and the world will change. :)


By the way, the term “Next Action” has been removed from OF2, so it seems we are leaving the pure path anyway. :^}

… so lets have our meta-data tag field to use as we like.

select * from omniDB where tag like '‘We Want Freaking Tags%’

I’ve been very excited about OF2. Having started managing tasks in Things, graduating to the more robust capability of 2Do, OF2’s clean UI, greater tools for control and forecasting all had me ready to ante up my money. The lack of tags, however, is an absolute deal-breaker for me. I’m so bummed! However you should do it theoretically, I often want to have a task tagged with a type (write a newsletter article), tool (do it in Mail Chimp, a person (need to talk to Beth to make sure I’ve got my facts right), and a general timeframe that I want to remember (NW for sometime next week). With robust tagging capability plus contexts, this would be easy: @mailchimp write Beth NW.

Not having this capability really limits with unnecessary inflexibility what otherwise looks like a wonderful piece of software.

1 Like