2020-05-09 12:06:28 -04:00
Autodoist
2014-03-09 23:55:47 -04:00
==========
2020-05-09 12:06:28 -04:00
This program adds two major functionalities to Todoist to help automate your workflow:
2014-03-10 00:09:57 -04:00
2020-05-09 12:06:28 -04:00
1) Assign automatic `@next_action` labels for a more GTD-like workflow
2020-05-09 14:20:01 -04:00
2) Enable re-use of subtasks in lists with a recurring date
2014-07-09 10:51:40 -04:00
2014-11-15 14:58:01 -05:00
Requirements
============
2020-03-30 05:37:10 -04:00
* Python 3.8
2015-04-30 20:02:50 -04:00
* ```todoist-python``` package.
2014-11-15 14:58:01 -05:00
2020-05-09 12:06:28 -04:00
Automatic next action labels
2014-11-15 14:58:01 -05:00
=====================
2014-03-10 00:09:57 -04:00
2020-05-09 12:06:28 -04:00
The program looks for pre-defined tags in every list and parentless task in your Todoist account to automatically add and remove `@next_action` labels. The result will be a clear, current and comprehensive list of next actions without the need for further thought.
2020-03-30 05:37:10 -04:00
Projects and parentless tasks can be tagged independently from each other to create the required functionality.
2020-05-09 12:06:28 -04:00
Todoist Premium is required to function properly. Make sure the label exists in your Todoist before running the program.
2014-03-10 00:09:57 -04:00
Sequential list processing
2014-11-15 14:58:01 -05:00
--------------------------
2020-05-09 12:06:28 -04:00
If a project or parentless task ends with `--` , the sub-tasks will be treated as a priority queue and the most important will be labeled `@next_action` . Importance is determined by order in the list.
2014-03-10 00:09:57 -04:00
2020-03-31 09:27:04 -04:00
![Serial task ](https://i.imgur.com/SUkhPiE.gif )
2014-03-10 00:09:57 -04:00
Parallel list processing
2014-11-15 14:58:01 -05:00
------------------------
2020-05-09 12:06:28 -04:00
If a project or parentless task name ends with `//` , the sub-tasks will be treated as parallel `@next_action` s.
A waterfall processing is applied, where the lowest possible sub-tasks are labelled.
2020-03-30 05:37:10 -04:00
2020-03-31 09:27:04 -04:00
![Parallel task ](https://i.imgur.com/NPTLQ8B.gif )
2020-03-30 05:37:10 -04:00
Parentless tasks
------------------------
2020-05-09 12:06:28 -04:00
Any parentless task can be be given a type by appending `//` or `--` to the name of the task. This works if there is no project type, and will override a previously defined project type.
2014-11-15 14:38:44 -05:00
2020-03-31 09:27:04 -04:00
[See example 1 with a parallel project ](https://i.imgur.com/d9Qfq0v.gif )
[See example 2 with a serial project ](https://i.imgur.com/JfaAOzZ.gif )
2020-05-09 12:06:28 -04:00
Recurring lists
====================
2020-05-09 14:20:01 -04:00
The program looks for all parentless tasks with a recurring date. If they contain sub-tasks, they will be restored in the same order when the parentless task is checked.
2020-05-09 12:06:28 -04:00
![See example ](https://i.imgur.com/CIjB7MC.gif )
Executing Autodoist
2014-11-15 14:38:44 -05:00
====================
2020-05-09 12:06:28 -04:00
You can run Autodoist from any system that supports Python.
2014-11-15 14:38:44 -05:00
2020-05-09 12:06:28 -04:00
Running Autodoist
2014-11-15 14:38:44 -05:00
------------------
2020-05-09 12:06:28 -04:00
Autodoist will read your environment to retrieve your Todoist API key, so to run on Windows/Linux/Mac OSX you can use the following commandline:
2014-11-15 14:38:44 -05:00
2020-05-09 12:06:28 -04:00
python autodoist.py -a < API Key >
2020-05-09 14:20:01 -04:00
If you want to enable recurring re-use mode, run with the `-r` argument:
2020-03-30 05:37:10 -04:00
2020-05-09 12:06:28 -04:00
python autodoist.py -a < API Key > -r
2020-03-30 05:37:10 -04:00
Additional arguments
------------------
Several arguments can be provided, for example to change the default label:
2020-05-09 12:06:28 -04:00
python autodoist.py -l < label >
2020-03-30 05:37:10 -04:00
Or to change the suffix tags:
2020-05-09 12:06:28 -04:00
python autodoist.py --parallel_suffix < tag >
python autodoist.py --serial_suffix < tag >
In addition, if you experience issues with syncing you can change the api syncing time (default 10 seconds):
2020-03-30 05:37:10 -04:00
2020-05-09 12:15:46 -04:00
python autodoist.py --delay < time in seconds >
2020-05-09 12:06:28 -04:00
For all arguments check help:
python autodoist.py --help