tasklib is a Python library for interacting with taskwarrior databases, using a queryset API similar to that of Django's ORM.
- Python 3.5 or above
- taskwarrior v2.4.x or above.
Older versions of taskwarrior are untested and may not work.
Install via pip:
pip install tasklib
tasklib has a similar API to that of Django's ORM:
>>> from tasklib import TaskWarrior
>>> tw = TaskWarrior('~/.task')
>>> tasks = tw.tasks.pending()
>>> tasks
['Tidy the house', 'Learn German']
>>> tasks.filter(tags__contain='chores')
['Tidy the house']
>>> type(tasks[0])
<class 'tasklib.task.Task'>
>>> tasks[0].done()
>>> tasks = tw.tasks.pending()
>>> tasks
['Learn German']
>>> tasks[0]['tags'] = ['languages']
>>> tasks[0].save()
For more advanced usage, see the documentation.