top | item 41372482

Taskwarrior – CLI Task Management

173 points| httbs | 1 year ago |taskwarrior.org | reply

70 comments

order
[+] t_mahmood|1 year ago|reply
Self plug, I'm developing a minimal gui for Taskwarrior, focused on keyboard navigation.

https://github.com/tmahmood/taskwarrior-web/

Task warrior is the my core of task management, as I've ADHD,I lost track of my task if it's not easily visible, this ui helps me with that. It shows timer for active task on the top.

Future plan is to integrate time warrior too.

[+] atoav|1 year ago|reply
Impressive, I am definitely giving this a test drive.

One observation: one thing people dislike about task warrior is that it can be complicated using it on the go, e.g. on a smartphone. A web interface like yours offers a real chance to make task warrior usable on smartphones and solving the syncing problem at the same time.

Is this within scope of your ideas? Or is the web interface mainly thought for (unauthenticated) local use?

[+] StumpyHamilton|1 year ago|reply
As a fellow ADHDr, I've found that I lose track of the entire task tracking system if it doesn't remind me of its existence. I recently wrapped the taskwarrior CLI with some bash and zenity popups that run on crob jobs to ask me what I'm doing and its proven quite effective at getting me to stay on task and log what I've been doing via timewarrior. Not sure how easy that is to do in a web UI, but if you find a similar struggle, it might be worth a shot.
[+] atlas_hugged|1 year ago|reply
Thank you for posting. I’m of the same mind, so I appreciate you working on this publicly. I’ve bookmarked it to check it out next time I get frustrated haha (I have a “productivity things to try” bookmark folder)
[+] insane_dreamer|1 year ago|reply
Nice! Why not a TUI instead of a Web UI?
[+] simonw|1 year ago|reply
In case anyone else is interested in seeing the schema I ran a few example commands through this and the dumped my ~/.task/taskchampion.sqlite3 database out to SQL: https://gist.github.com/simonw/ab208b18b6c3ab31ea3feb70f6502...

It's mainly JSON data stored in some simple tables, with full historic change tracking modeled as JSON too.

Here's that example loaded into Datasette Lite: https://lite.datasette.io/?sql=https://gist.github.com/simon...

[+] oever|1 year ago|reply
That format could sync well to local-first PWA using indexeddb.
[+] dcchambers|1 year ago|reply
I LOVE taskwarrior but I feel any TODO software that can't easily be synced across devices is a nonstarter these days.

Sure I could throw the sqlite db in Dropbox or something, but there's no good way to manage the TODOs on a phone.

Every 6-12 months I'll give it another try and love it but feel it's just too limiting for most personal tasks.

I do like to use it for work tasks that aren't tracked in Jira...so stuff I generally only care about when I'm at a computer.

[+] shagie|1 year ago|reply
https://taskwarrior.org/docs/commands/synchronize/

> The synchronize command, which first appeared in version 2.3.0, allows your Taskwarrior instance to share tasks with other instances. You can have several instances making local changes all of which sync to a single server, and they will all be kept up to date, with changes flowing from instance to instance.

    $ task sync
    Syncing with foo.example.com:53589

    Sync successful.  1 changes uploaded.
There was a site inthe.am which provided sync service. While that's been shut down, the code is available on https://github.com/coddingtonbear/inthe.am - the local hosting wasn't ever finished or not designed with that in mind ( https://github.com/coddingtonbear/inthe.am )
[+] Enginerrrd|1 year ago|reply
There IS an android implementation on the play store I think. I ended up just running task warrior on a VPS and shelling in though. But that UI sucks on a phone.
[+] PhilipRoman|1 year ago|reply
Don't get me wrong, this is probably great software, but there is a big field of tasks like reminder apps, calendar, note taking apps etc. for which I just use a plain free form text editor. I don't quite see what these tools offer, other than pretty user interfaces. And after taking the time to learn the new tools, there will still be cases when I won't have access to them, while plain text works everywhere
[+] berkes|1 year ago|reply
Same here. I've been using "todo.txt" for years (decade?) now. It's hardly more than a very loosely defined format to present TODOs. Lot's of tools, apps, GUIs and whatnot developed around it.

The format is so easy that anything that can edit txt allows to manage it without hassle, so even if MyFavoriteTool is abandoned in a year, I can continue with my todo system. And synching a text file is a no-brainer too. I now just use dropbox. But used git, rsync and some more in the past.

The only downside I've constantly run against, is that I cannot "share" this with my spouse or colleagues. Guess "team" function could easily be invented, but so far no one has, that I know, and I'm not going to put that task on this todo.txt file either.

[+] Izkata|1 year ago|reply
For me it's dependencies and automatic urgency ordering. Greys out whatever I can't do yet without actually hiding it, helps decide what's most important to do next, and automatically adjusts all of it when a task is completed.

I did only use a text file before fiddling with those two features and finding they did actually help me. Nowadays I use taskwarrior for anything that will last longer than a day, and a temporary text file for only the things I plan to do that day.

[+] matejdro|1 year ago|reply
For me personally, timed reminder is a must have. Being able to give some task a date and then forget about it until its due and gives me proactive reminder. As far as I know, no text-based system is capable of that.
[+] noufalibrahim|1 year ago|reply
I was going to say something similar. Is it ever the case that a single app or something tiny piece of technology has revolutionised a persons discipline and ability to stay on top of things?

While apps might make things easier, unless the individual develops a personal system and follows it in a disciplined fashion, none of these things are going to make a difference.

[+] atoav|1 year ago|reply
I am with you, as of now I use a paper notebook for all that. But in a previous (more predictable) life I was using task warrior and time warrior and was very happy with it. Especially since it also runs on android and you can just sync the data.

If you like Command line applications and need something that is good for many tasks in nested projects and time tracking capabilities (e.g. as happens in software world) it is worth checking out.

[+] 0x008|1 year ago|reply
The only benefit this could provide is time warrior integration.
[+] SkepticalWhale|1 year ago|reply
Yes, every time I start using some GUI software, I eventually find myself returning to markdown.

I spend all day editing in VSCode -- it's nice to use the same tool (and vim keys)

[+] natemcintosh|1 year ago|reply
Been using taskwarrior (and the really great TUI interface https://github.com/kdheepak/taskwarrior-tui) for about 6 months now. My favorite things:

- really fast day-to-day navigation using vim-like controls in the TUI

- automatic sorting using due date, task dependencies (A must be done for B to start), age, etc.

- task dependencies. This is really helpful for me

- decent enough cross-device sync with syncthing (I already had it up and running)

- ability to produce reports. E.g. what tasks did I complete for project X last month?

- whole system has a good set of hooks into it, making it relatively hackable

Downsides: - was slightly intimidating at first. If you're starting out, definitely start on the simple end, and slowly add complexity to your setup (creating tasks -> due dates -> using projects -> creating task dependencies -> using contexts for work/play/study -> ... -> ...)

[+] vstollen|1 year ago|reply
I've used Taskwarrior (and Timewarrior [1]) for some time and one thing they uniquely do is automatically rank your tasks by a number of factors.

For your tasks, you can set priorities, a deadline, dependencies, and more. Using this information, Taskwarrior computes an urgency score so you can see your most urgent task using:

  task next
Sometimes I wonder what a GUI-based app would look like that does such urgency rankings.

[1]: https://timewarrior.net/

[+] f1ay|1 year ago|reply
Love taskwarrior. Looking forward There's a great TUI; https://github.com/kdheepak/taskwarrior-tui

I wish cross-device-sync was feasible, but it's pretty good.

[+] caleb-troyer|1 year ago|reply
I've had good success using Syncthing to keep my tasks in sync between my phone, laptop, desktop, etc. Point it at your Taskwarrior data folder and you're off.
[+] tazu|1 year ago|reply
I wouldn't call it "great". It crashed in 2 seconds (index out of bounds) on my Mac from going to the Calendar page and hitting j twice.
[+] Shank|1 year ago|reply
I love taskwarrior so much on desktop, but hate it so much on mobile that I ended up switching to 2Do. It’s so heartbreaking because the automatic task prioritization you get is really novel and nice. But the iOS client situation is dire, and as much as I found it novel to have working sync and mobile with iSH, it just didn’t cut it for me.

It’s definitely my favorite task manager I can’t really use for this reason.

[+] lelanthran|1 year ago|reply
I think, at this point, there are probably more task management tools that aren't Jira than there are users who don't want to use Jira.

I myself have a few; here's my entry into this particular category (c/line and written in bash): https://github.com/lelanthran/terminal-todo

[+] adius|1 year ago|reply
I wasn't happy with Taskwarrior, so I started to develop my own CLI task manager called "TaskLite" a few years ago. Here is the comparison page:

https://tasklite.org/differences_taskwarrior

I'm about to release a new version with a lot of improvements the coming weeks.

[+] andrewjf|1 year ago|reply
I absolutely love Taskwarrior. I love that it'll just tell you what to do next based on weight, priority, due date, size, etc. I love annotating and adding tags/labels etc and how generic things are.

It's really a pain in the ass that I can't get it on multiple devices so I ultimately never am in the right place to add todo items. I know there's a Task champion sync-server that's rewritten as part of Taskwarrior 3.0 but it seems very early in the development and I haven't gotten to to work and have been using Inkdrop instead; would love to go back to Taskwarrior.

[+] Esras|1 year ago|reply
Bad form to recommend something else...

But I had some of the same issues that people have described about synchronizing across multiple devices with notifications and all that jazz, and ended up landing on Amazing Marvin (https://amazingmarvin.com/).

It is the single, closest thing I've found to the same paradigm of Task Warrior's prioritization systems, and incredibly customizable, which is lovely to see as a web app. No connection to it, other than it being something I love.

[+] aliasxneo|1 year ago|reply
Do you know if this is still being actively developed? I looked at it a few months ago and was worried it looked like it was being abandoned.
[+] lawn|1 year ago|reply
I love the CLI part of taskwarrior but the Android UX sucks compared to other todo managers such as todoist, so that's what I'm running now.
[+] jhspt|1 year ago|reply
Another shameless plug: git-task

Task manager or bug tracker that resides right within git repository and can sync with GitHub.

It's on a very early stage of development, but somehow works. I'd really appreciate any ideas on what can be done/improved (actually, a lot).

https://github.com/jhspetersson/git-task

[+] Izkata|1 year ago|reply
There were several of these in the early/mid-2010s and all had different drawbacks that made them awkward to deal with. Offhand the only one I remember the name of was BugsEverywhere: https://github.com/aaiyer/bugseverywhere

Some issues I remember in general (not all of these applied to all these distributed bug trackers) that caused them to largely be abandoned:

* No single view of cases: At least one of them was tied to the current commit, so a case could be resolved on a branch but not master

* No central view for non-devs

* Updating happened outside normal git operations so it was easy to forget to push/pull case changes

* One of them that avoided the previous issue made heavy use of branches to keep its data in the main repo, so it turned the repo into a mess

* Even if you did push/pull, updates aren't synchronous with a central location so it was totally possible for two people to assign a case to themselves locally and not realize it until later

[+] jxy|1 year ago|reply
How does taskwarrior deal with recurring tasks now? Like tasks that have a due date recur every two weeks, or tasks that have a due date always two weeks after done.
[+] codazoda|1 year ago|reply
This looks pretty nice. I would need to dig in a bit to see if it supports showing only my next most important task and an alternate method of ordering to work for me. Based on the docs I did read, I bet it has this built in. I’m also curious about size.

I recently wrote a little about how I used Bash to hack together my own list.

https://www.makervoyage.com/todo

[+] travisby|1 year ago|reply
Your bet is correct! These are considered `reports`. The default `task` view is called `next` (what are my next tasks), but there's plenty of others, plenty customization (sort order, filters, columns), for those built-in reports, and custom reports as well [1]

[1] https://taskwarrior.org/docs/report/

[+] sigoden|1 year ago|reply
Taskwarrior officially provides bash/zsh/fish completion scripts.

If you're a PowerShell or nushell user and need autocompletion for Taskwarrior, try https://github.com/sigoden/argc-completions.

Argc-completions provides multi-shell completions for over 1000 commands, including Taskwarrior.

[+] 3np|1 year ago|reply
In case you want some form of time-tracking, there is also Timewarrior from the same devs. Works stand-alone and integrates well with Taskwarrior.

https://timewarrior.net/docs/what/