Dev In The Mountain Header
A Developer In The mountains having fun

Task Managers

From GUI back to the terminal

I've bounced between a lot of task managers over the years. For a good while I used Super Productivity, a full featured GUI app, but most of my day is spent in the terminal and in emacs, so having to switch out to a separate window just to check off a task always felt like friction, not to mention having to use the mouse. I've recently switched to Tuxedo, a TUI for plain todo.txt files, and it fits how I work much better.

Below is a rundown of the three tools I've spent the most time with, what each is good at, and who I think each one is for.


Tuxedo — what I use now

Tuxedo is a fast, keyboard driven terminal UI for managing todo.txt files. It's written in Rust and ships as a single binary.

Why I like it

  • Plain text storage -- it reads and writes standard todo.txt, so my task list is just a text file. I can edit it in NeoVIM, grep it, sync it with whatever I want, or track it in git. No lock in.
  • Vim like keybindings -- j/k to move, gg/G to jump, dd to delete, x to complete, u to undo, / to search. It feels like home right away.
  • TUI and CLI -- running tuxedo opens the interface, but there are also subcommands (add, ls, do, pri, archive) that are compatible with the classic todo.txt-cli, so it's easy to script.
  • Natural language add -- you can type things like due dates and recurrence in plain english and it gets rewritten into proper todo.txt syntax for you to review. This runs locally, no AI service involved.
  • Phone capture -- it can show a QR code that points to a small web app on your local network, so you can toss tasks into an inbox.txt from your phone.
  • Safe writes -- changes are written to a temp file and then renamed, and if the file is edited outside of Tuxedo it notices and reloads.
  • Themes -- a handful of built in themes plus custom theme files.

Install

# with cargo
cargo install --git https://github.com/webstonehq/tuxedo

Where your tasks live

Tuxedo looks for the file using TODO_FILE, then TODO_DIR, and falls back to ./todo.txt. Completed tasks get archived to done.txt (or whatever DONE_FILE is set to). Config lives in ~/.config/tuxedo/config.toml and is hot reloaded.

export TODO_DIR="$HOME/notes/todo"

Handy keys

KeyAction
nnew task
e / iedit task
xcomplete task
dddelete task
pcycle priority
/search
fp / fcfilter by project / context
Scycle sort
Aarchive completed
: or Ctrl-Pcommand palette
?help

A quick todo.txt primer

Each line is one task. Everything is optional except the text.

(A) 2026-10-09 Write task manager article +website @computer due:2026-10-10
(B) Renew domain +website rec:1y
x 2026-10-08 2026-10-01 Update NeoVIM config +dotfiles
  • (A) -- priority
  • +project and @context -- tags for filtering
  • due: / rec: -- due date and recurrence
  • x at the start -- completed, followed by the completion date

Taskwarrior (+ taskwarrior-tui)

Taskwarrior is the heavyweight of the command line task managers. It's been around for a long time and is extremely powerful: urgency scoring, dependencies, recurrence, user defined attributes, reports, hooks, and sync. If you want your task manager to be a database you can query, this is it.

task add Write task manager article project:website due:tomorrow
task list
task 1 done

On its own it's purely a CLI, which is where taskwarrior-tui comes in. It gives you a vim keybinding interface on top of Taskwarrior for browsing and editing tasks, while still letting you drop back to the task command for anything advanced.

Pros

  • Incredibly powerful filtering and reporting
  • Urgency calculation helps decide what to work on next
  • Hooks let you script nearly anything
  • Big community and lots of add ons

Cons

  • Steep learning curve, lots of syntax to remember
  • Data isn't a plain text file you'd want to hand edit (Taskwarrior 3 moved to a SQLite based store)
  • Easy to spend more time tuning the system than doing the tasks

Super Productivity — what I used to use

Super Productivity is a free, open source GUI task manager available on Linux, macOS, Windows, Android, and the web. It's aimed at developers and has a lot built in:

  • Time tracking and time estimates per task
  • Pomodoro timer and break reminders
  • Integrations with Jira, GitHub, GitLab, and others to pull in issues as tasks
  • Projects, tags, sub tasks, and a planner / schedule view
  • Sync through WebDAV, Dropbox, or a local file

It's a great app, and if you live in a GUI or want time tracking baked in it's one of the best free options out there. For me though it was more app than I needed, and having it in a separate window outside of my terminal meant I'd often forget to check it.


Quick comparison

TuxedoTaskwarrior + tuiSuper Productivity
InterfaceTUI + CLICLI + TUIGUI (desktop, mobile, web)
Storageplain text (todo.txt)SQLiteapp data / sync file
Learning curvelowhighlow
Vim keysyesyes (tui)partial shortcuts
Time trackingnovia hooks / timewarrioryes, built in
Best forterminal users who want simple and portablepower users who want a queryable task databasepeople who prefer a GUI and want time tracking

Conclusion

There isn't one right answer here, the best task manager is the one you'll actually open. For me that turned out to be the one living in the terminal next to everything else, using a plain text format I can edit with any tool. Tuxedo hits that sweet spot of being simple, fast, and vim friendly without trapping my tasks in a format I can't get out of. If you want more power reach for Taskwarrior, and if you'd rather have a polished GUI with time tracking Super Productivity is still an easy recommendation.

See also

More places to find me
Mental Health
follow me on Mastodon