Requesting Automatic Due Time Assignment!

Setup:
You have an ordered sequence of atomic tasks (i.e. pomodoros which all have the same duration), which you need to assign due times for today (manually!).

Pitch:
What if after we (shift click) highlight them, assign all their durations to that of a pomodoro (e.g. 25 minutes) and their collective due date/time (e.g. when your work day is over). We then had a button which could automagically give everything a due date/time based on order, duration & finish time!

Example:
3 tasks, ordered by priority, collectively due by 1pm.
I could assign their due time (1pm) and individual duration (25 minutes each) as a group and have a button where this automatically pushed back their due dates/times based on their order in OmniFocus & their estimated duration so:

(task 1, task 2, task 3), all due 1pm with 25 min durations; —> “sequential due times” button —>
(task 1, due: 12:10pm; task 2, due: 12:35pm, task 3, due 1pm)

Special Parent Task Logic:
Of course there would have to be special treatment for parent tasks since implicitly they need to be completed after subtasks. So you would have to treat them as being immediately after their subtasks in this ‘due time sequence’, additionally it would be logical to not explicitly allocate them any time if ‘complete with last subtask’ is selected.

Conclusion:
One drawback of OmniFocus as I see it is the difficulty of assigning due times to large amounts of tasks. This is very easy in gtasks since you just drag and drop onto the calendar. But if this feature were to be implemented it would make it even easier than it is in gtasks to assign due times! And all it would require is that you structure your tasks in a way which is already a logical & likely common (sorted by priority & broken down into pomodoros).

This specific workflow could be enabled by an Omni Automation script: all the needed attributes of actions are exposed.

Is this the same as a plugin? Can these be made in a light-weight fashion or is it a serious undertaking? I am a programmer so I don’t doubt I could do it, I just want to know what I’m getting myself into.

Yes, a plug-in. If you know basic JavaScript I think it should be quite straightforward. Study the interface of the Task class. Start by using its properties on the currently selected tasks in the Automation console and then adapt the plug-in action template on omni-automation.com.

1 Like

Thanks, do you think it’s likely this could be adopted as a core feature?

You could send an email to the Omni Support team to make sure your suggestion is taken into account.

My personal and irrelevant opinion: it’s too specific a use case to be added as a built-in feature (in priority relative to a probably very long list of enhancement requests!) and Omni Automation was implemented precisely to allow these types of custom workflows to be supported.

2 Likes

Well I find your personal and irrelevant opinion quite helpful, I guess I’ll make a plugin then unless I find another very convenient way to make this workflow work.

1 Like