Skip to content
Very simple todo list CLI app
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


Very simple todo CLI app

  tofu [options] [filters...]
  tofu [options] command [args...]

    -f, --file FILE                  Specify todo file
    -d, --done                       Run command on done items
    -h, --help                       Display this help

  add       Create todo, text from args or STDIN, one per line
  archive   Archive all done items and sort remaining items
  count     Count words beginning with prefixes from args
  do        Remove todo, add to done, row numbers from args
  edit      Open file in editor

List items without command, filter on args


sudo curl > ~/usr/local/bin/tofu
sudo chmod +x ~/usr/local/bin/tofu


The default location for the todo file is todo.txt in the home directory. If another location is preferred, create a file called ".tofuconfig" in the current directory or the home directory, such as:

echo "todo_file: ~/Dropbox/tofu/todo.txt > ~/.tofuconfig"
touch ~/Dropbox/tofu/todo.txt

Tips and tricks

To handle multiple lists, add an alias with a defined todo file:

alias w=/usr/local/bin/tofu -f ~/Dropbox/tofu/work.txt

To work on done todos, add the --done option. To add an item and mark it as done:

tofu add --done @buy shirt

To list all done items marked with @buy

tofu --done

To edit the done items file:

tofu edit --done

To handle a todo list for a development project, add a todo file and a local .tofuconfig. Any tofu command used in that directory is now using the local todo file.

echo "file: todo.txt" > .tofuconfig

You may wish to add context for items with the character @, such as "Call mom @phone". When you have some time next to a phone, issue this command to list your items:

tofu @phone

You can later get an overview of all your contexts with the command:

tofu count @

Likewise the character + may be used for projects, adding things like "Order flowers +wedding".

You may then get a summary of both contexts and projects with:

tofu count + @


Developed by Jan Andersson

Heavily influenced by Todo.txt by Gina Trapani

Licensed under the MIT License

Something went wrong with that request. Please try again.