DevTodo: a reminder/task program aimed at developers.

August 31st, 2008 edited by Vicho

Article submitted by Raman Pandarinathan.

DevTodo is a simple command-line-based package to keep todo lists. Lists are prioritized and hierarchical. Each task in the list has a priority (very high, low, medium etc.) and a given task can be linked to another todo database, making the list hierarchical. The lists are stored as an XML file (.todo) in the current directory, so if you manage multiple projects, you can have different todo lists and DevTodo will update the information based on your current working directory.

As the Todo list is stored in an XML file, you can use an XSLT template to export it to other formats. In Debian, you can find templates to export to HTML and PDF in /usr/share/devtodo.

Managing your todo lists

DevTodo in action

Basic commands are:

  • todo displays the list of tasks pending in the order of priority.
  • tda adds a task to the list. The optional argument -g links the task to another task (creates a subtask).
  • tdd marks a task as complete (done) with comments.
  • tde edit a task.
  • tdr removes a task completely.

With the use of some small shell scripts, when you cd into a directory with a .todo in it, DevTodo can display the Todo items for that directory. There are scripts for bash and tcsh in /usr/share/doc/devtodo/examples. To enable it under bash, add this to your .bashrc:

if [ -f /usr/share/doc/devtodo/examples/ ]; then
  . /usr/share/doc/devtodo/examples/

Pros and Cons

  • Pros
    • Simple command line interface.
    • Easy storage using XML.
    • Fast and elegant.
    • Oriented towards developers.
  • Cons
    • No GUI.
    • No recent development (last commit was at the end of 2007), upstream seems to be inactive.
    • No calendaring.


DevTodo is available in Debian since Sarge and in Ubuntu (universe) since Dapper.

Posted in Debian, Ubuntu |

8 Responses

  1. Linulin Says:

    Another console todo manager with readline interface is ‘tdl’.

  2. meskio Says:

    There is other comand-line todo manager in debian: ‘tudu’

    It have a ncurses interface, and support for priorities, categories, deadlines, … It is still in quite early state, but with active development.

    PD: sorry for the spam ;-)

  3. Orpheus Says:

    Actually I was sure that I had found a similar tool here on the site months ago. As I did not find it in the history:

    It’s called
    tofu (
    and also provides tagging of todo items which enables the user to monitor categories/groups of tasks. For example you could “heat” up (tofu term for “increase the priority”) of all tasks with the tag “kernel_dev”.

    I’ve been trying to use it for the little daily tasks which could easily be forgotten. Works nearly perfect!

  4. Orpheus Says:

    Oh, I just now noticed that feature with the provided bash wrappers: “when you cd into a directory with a .todo in it, DevTodo can display the Todo items for that directory”. This is something tofu cannot do. And it really opens interesting possibilities of application…

  5. Adam Says:

    Don’t forget the of Gina Trapani:

  6. András Horváth Says:

    Wow, i’m impressed! I love simple console progs like that :) Thanks.

  7. EugeneVC Says:

    There is GUI version this prorgams?

  8. weakish Says:

    So we have devtodo (C++), todo.txt (shell), tofu (perl), and tdl (C). Does anyone review them all and give some comparision?

    (tudu uses a ncurses interface, which is different from others, so it is not included here.)