Added functionality for Todoist.
 
 
Go to file
Hoffelhas cbb4cd45c3
Update README.md
2020-05-09 18:15:46 +02:00
.gitignore Add Heroku support 2020-03-10 19:55:14 -05:00
LICENSE Add copyright to LICENSE 2015-12-12 14:21:45 +00:00
Procfile Change iteration of tasks 2020-03-22 14:31:48 -05:00
README.md Update README.md 2020-05-09 18:15:46 +02:00
autodoist.py Fix of recursive mode parser argument 2020-05-09 18:09:51 +02:00
requirements.txt Update todoist-python to version 8.1.1 2020-03-10 22:00:21 -05:00
setup.py Merge branch 'release/0.5' 2020-03-10 22:27:57 -05:00

README.md

Autodoist

This program adds two major functionalities to Todoist to help automate your workflow:

  1. Assign automatic @next_action labels for a more GTD-like workflow
  2. Enable re-use of subtasks in lists with a recursive date

Requirements

  • Python 3.8
  • todoist-python package.

Automatic next action labels

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.

Projects and parentless tasks can be tagged independently from each other to create the required functionality.

Todoist Premium is required to function properly. Make sure the label exists in your Todoist before running the program.

Sequential list processing

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.

Serial task

Parallel list processing

If a project or parentless task name ends with //, the sub-tasks will be treated as parallel @next_actions. A waterfall processing is applied, where the lowest possible sub-tasks are labelled.

Parallel task

Parentless tasks

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.

See example 1 with a parallel project

See example 2 with a serial project

Recurring lists

The program looks for all parentless tasks with a recursive date. If they contain sub-tasks, they will be restored in the same order when the parentless task is checked.

See example

Executing Autodoist

You can run Autodoist from any system that supports Python.

Running Autodoist

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:

python autodoist.py -a <API Key>

If you want to enable recursive-mode, run with the -r argument:

python autodoist.py -a <API Key> -r

Additional arguments

Several arguments can be provided, for example to change the default label:

python autodoist.py -l <label>

Or to change the suffix tags:

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):

python autodoist.py --delay <time in seconds>

For all arguments check help:

python autodoist.py --help