Topydo is a command-line based program for Todo.TXT

A good way to get things done, is to set reminders for tasks. I’m a fan of Todo.TXT, it is an efficient, offline note-taking system which works with plain text editors like Notepad. And since it is cross-platform compatible, I can use an Android app like Markor on the go, which I’ve been using for a couple of years.

If you’re new to Todo.Txt, check out my tutorial to learn how to use it. Topydo is a command-line tool that lets you manage your Todo.TXT. To install it open a Command Prompt window and type,

pip install topydo

If you want to use columns use the following command.

pip install topydo[columns]

Unfortunately, the Windows version of topydo does not support columns. So, we’ll be sticking with what we have. Start the program by typing topydo (in CMD). Nothing happens, that’s because the to-do list is empty.

Let’s add a task with the following command:

topydo add TASK.

Replace TASK with whatever you want. e.g. topydo Buy bread

And just like that, we have created our first task. That was easy wasn’t it. Try starting the tool by typing topydo or use topydo ls. Now the tool will show you the tasks that you’ve added. Each task is assigned a number, along with the date when the task was created.

To delete a task use,

topydo del TASKNUMBER.

E.g. topydo del 2.  This will delete the 2nd task from the list.

Let’s create a priority task. topydo add (A) Get cash from ATM.  This set’s the task priority to A, which if you didn’t know, is the highest in Todo.Txt. You can change the priority by using the pri command, followed by the task number and the priority you want to assign to it.

E.g. topydo pri 2 B.

Topydo priority task

Topydo has some special tags such as due, start date which you can assign to your tasks. You can use these to set appointments, due dates for bills, rent, etc. For instance, topydo add bill due:9d will create a new task with a due date tag that is set to expire in 9 days. The tool uses the current date/time to calculate when the due date is.

Topydo add tag

Mark as a tag as completed by using do followed by the task number, like so. topydo do 1

Topydo mark as completed

Now for the most important part, saving the contents to a Todo.Txt file. This can be very handy if you want to use it with a mobile app like Markor. The lscon command is useful to export your list. It is worth noting that the first letter is an L, not an I. This command saves the content to a Todo.TXT file that will be placed in your USER folder. Similarly, completed tasks are saved in the done.txt document.

topydo todo.txt

Oddly, topydo cannot edit documents directly and relies on external text editors. You may as well export the list and open it with Notepad to make a quick change. There are a lot more options available in Topydo. To view a list of supported commands, type topydo help in the command window, or check the official wiki.

Topydo is an open source application, it is written in Python. The program has a learning curve which can deter beginners away. So, why should you use this instead on TodoTxt.Net or Notepad? Because most of the commands provide a quick way to add/mark items such as due date, do, etc, which you may have to otherwise type manually.

Author Rating

no rating based on 0 votes

Software Name


Operating System

Windows, Linux, Mac

Software Category




Landing Page