Skip to content

dstask vs Taskwarrior

We give dstask a 3.2 GPA and Taskwarrior a 3.4, out of 4.0. Taskwarrior grades higher on features. They get the same grade on value for money, the free plan, ease of use and platforms.

Price, platforms and features side by side. The table says where each price was read and when.

dstask

Terminal task tracker with git sync and a markdown note per task

Free

Taskwarrior

Free, open-source to-do list manager for the command line

Free

How we grade them

3.2GPAdstaskVery good3.4GPATaskwarriorVery good
Value for money
AFree and open source under the MIT licence, with no paid edition. It's a single binary for Linux, macOS and Windows from the GitHub releases page. There's no sync service to pay for, because sync runs over your own git repository.
AFree and open source under the MIT license, with no paid edition. The project takes donations through GitHub Sponsors. The only bill you might see is for sync, since the docs say a cloud storage bucket carries a small cost.
Free plan and trial
AThe whole program is free, import tool included. Nothing is locked and there's no account. The only thing you bring is somewhere to host a git repository.
AThe whole program is free. There's no paid edition, so nothing is locked. Filters, reports, hooks and custom fields are all yours from the first command.
Features
BPriorities from P0 to P3, projects, tags, due dates, contexts that filter your list, and a full markdown note per task. Solid for one person. But tasks aren't encrypted, contexts don't sync between machines, and it's personal use only.
AMore than 20 standard attributes per task, filters you combine on the command line, contexts that stay switched on, and an urgency score built from a dozen or more factors. Hook scripts and your own fields bend it to any workflow, and everything moves in and out as JSON.
Ease of use
CNo rating is on record, and it's a command-line tool with a git repository to set up and host yourself. Edit the same task on two machines without syncing and you can get a merge conflict to fix by hand.
CIt's a command-line program, so you learn commands before you add your first task. Sync is more work again: you run a TaskChampion sync server or set up a cloud storage bucket yourself. Fine if you live in a terminal, hard going if you don't.
Platforms and integrations
BLinux, macOS and Windows, all in the terminal, kept in step through git. It can pull in GitHub issues and a Taskwarrior export. There's no GUI, web or mobile app in dstask itself.
BMac and Linux, and Windows only through the Windows Subsystem for Linux or MSYS2. Sync goes through a TaskChampion server or an AWS or Google Cloud bucket. The project ships no graphical, web or mobile app. Those are separate community tools.
Best forterminal tasks synced through gitrunning your to-do list from a terminal

The GPA is the average of the five grades: an A is 4 points, an F is none. The full reasons are on each tool's page: dstask and Taskwarrior. How we grade

Where they differ

  • dstask is free. Taskwarrior is free.
  • Only dstask lists a Windows app.
  • dstask also covers Markdown.
In commonFree planmacOSLinuxOpen sourceLocal-firstKeyboard-firstTasks

At a glance

dstaskTaskwarrior
PricingFreeFree
Starts atFreeFree
Free planThe whole program is free and open source under the MIT license, with no paid edition. Sync runs over a git repository that you set up and host yourself.The whole program is free and open source under the MIT license, with no paid edition. The project takes donations through GitHub Sponsors.
Free trialNone listedNone listed
macOS
Windows
Linux
Made byCal BryantGothenburg Bit Factory
Price read fromgithub.comtaskwarrior.org
CheckedOct 9, 2026Oct 5, 2026

Who each one suits

dstask

  • People who work in a terminal and are comfortable with git
  • Taskwarrior users who want sync without running a sync server
  • Keeping working notes and checklists alongside each task

Taskwarrior

  • People who work in a terminal and want to manage tasks by typing
  • Keeping task data in a local database, with sync as an option
  • Scripting a personal workflow with hooks and custom fields

Worth knowing

dstask

  • Personal use only: the README lists collaboration as a non-feature.
  • There is no GUI, web or mobile app in dstask itself; the FAQ points to a separate, early-stage community web GUI.
  • Editing the same task on two machines without syncing can produce a git merge conflict that has to be resolved by hand.
  • Tasks are not encrypted: the FAQ says encryption is not a design goal. Contexts are not synchronised between machines.

Taskwarrior

  • The project ships only a command-line program. Graphical, web and mobile front ends are separate community tools.
  • On Windows it runs through the Windows Subsystem for Linux or MSYS2; Cygwin is no longer supported.
  • No hosted sync service is included: you run a TaskChampion sync server or configure a cloud storage bucket yourself.
  • Since version 3.0 the docs warn that file-sync tools such as Syncthing or rsync can corrupt task data and are unsupported.

Key features

dstask

Git-based sync and undo
Tasks are stored in a git repository, ~/.dstask by default. The sync command pulls then pushes, and undo reverts the last action with git revert, so there is no sync server to run.
Contexts
A context is a filter of tags and projects that narrows task listings and is also applied to new tasks. It is set with the context command or, per terminal, with the DSTASK_CONTEXT variable.
Markdown note per task
The note command opens a full markdown note for a task in your editor, where a checklist can track subtasks. The open command launches the URLs found in a task and its note in the browser.
Priorities, projects, tags and due dates
Tasks take a priority from P0 (critical) to P3 (low), a project, tags and a due date typed as a weekday, a relative day or a date. The default view sorts by priority, then creation date.
Task states and review commands
Start and stop mark tasks as active or paused. Commands such as show-resolved, show-projects and show-unorganised list completed tasks by week, project completion and untagged tasks.
Import from Taskwarrior and GitHub
The separate dstask-import tool loads a Taskwarrior export, which the docs call lossy, or pulls GitHub issues into dstask one-way using an API token.

Taskwarrior

Task commands in the terminal
Tasks are added, modified and completed with short task commands, and carry attributes such as project, tags, priority and due date out of more than 20 standard ones.
Filters, reports and contexts
Reports list tasks through filters you combine on the command line. A context is a named filter that stays active, for example to show only work tasks.
Urgency score
Each task gets a numeric urgency score summed from a dozen or more factors such as priority, and the next report sorts tasks by it.
Sync between replicas
The task sync command exchanges changes with a TaskChampion sync server, an AWS or Google Cloud storage bucket, a local file or a git repository.
Hooks and user defined attributes
Hook scripts in any language run at set events in the program, and user defined attributes add your own fields that can be stored, sorted and shown in reports.
JSON import and export
Task data moves in and out through a documented JSON format, which the community tools listed on the project's Tools page build on.

Plans

dstask

  • Free$0

    The dstask binary and the dstask-import tool for Linux, macOS and Windows, from the GitHub releases page or unofficial Homebrew, AUR, Nix and FreeBSD packages.

Taskwarrior

  • Free$0

    The full command-line program under the MIT license. Sync needs your own server or a cloud storage bucket, which the docs say carries a small cost.

More comparisons