Feature Request: Dynamic scheduling

Let’s say I have a project which looks something like this:

  • My Project
    • Subtask 1 (Context: Home, est 1hr)
    • Subtask 2 (Context: Home, est 30m)
    • Subtask 3 (Context: Errands, est 30m)

OmniFocus for iOS already knows where my Home context is, as well as how long it may take me to do Subtask 1. However, when I’m home, I won’t know I should do Subtask 1 unless I explicitly look at OmniFocus.

What I’d like is the ability to tell OmniFocus "block out this time on these days, and create a calendar event for whatever the next thing is for my active projects. So, if I have just started My Project, whatever time I have blocked out on my calendar will be filled with an event called “Subtask 1”. And if I manage to accomplish it, then the next block of time will automatically be filled with an event called “Subtask 2”.

The important aspect here is that once I set aside blocks of time, I never have to actually go through and change event names to know what it is I should be focusing on. I’ve already done my reviews, I already know what the most important things are, and I’ve organized my projects so that each step is an atomic unit of work. OmniFocus should be able to figure out what I can work on based on my location and available time, and serve up that task so I can immediately see it on my calendar, without having to fiddle with perspectives, forecasts, or contexts.


1 Like

I love this idea! To add to it I think it should take due dates into consideration when “deciding” my day(s).

I’ve found it too much work if I am scheduling tasks or projects.

I’ve found it easier to just block off time on my calendar as a timeslot where I am busy and should not be bothered unless a fire or some such emergency happens. Let’s say I’ll have 10 am - 12 pm as a WORK time block. I’ll use OmniFocus more as a menu of available tasks for me to work off of.

Currently, I have an advertising campaign going on. I’ll create an appointment on my calendar from 10 am - 12 pm and title it “Work on advertisement project.” I’ll typically print out the entire project from OmniFocus. When 10 am arrives, I’ll have the project task list on my desk. I don’t like to return back to OmniFocus because it might distract me. I might want to start looking for other tasks besides the big project I am working on. It’s just too easy to start rummaging through OmniFocus and look for easier tasks to accomplish. I’d rather just take out what I need and work on those.

I also like to go to my due tasks and start working just from that perspective. The due tasks are more important than anything else. If I finish those due tasks, I’ll look at the flagged tasks for not due but important tasks I want to focus on today.

Just create an appointment in your calendar. Then print out a list or write down a bunch of tasks from OmniFocus to work on. This brings more focus to get the important stuff done first.

If I have to block out each individual task, I’ll spend more time fiddling with OmniFocus instead of working on my actual tasks.

@msnyder this is great, but…feature (and support) requests are only considered by @SupportHumans if submitted via email — the more people who writes, the more importance it gets.

You can find all you need inside the app:

  • HelpContact Omni on macOS
  • SettingsContact Omni on iOS

note for @deturbulence : ,offorum :-)

Whoops, sorry about that.

It’s doable with AppleScript… the tricky part is dealing with recurring events… did something similar where it would hide reminders tasks based on context on calendar app