LinuxCommandLibrary

dstask

Git-powered terminal todo manager

TLDR

Add a new task
$ dstask add [task description]
copy
List all tasks
$ dstask
copy
Mark a task as done
$ dstask done [task_id]
copy
View tasks by context/project
$ dstask context [context_name]
copy

SYNOPSIS

dstask [command] [arguments]

DESCRIPTION

dstask is a task manager that stores todos in a Git repository, allowing for version control, synchronization across devices, and offline access. It follows the Getting Things Done (GTD) methodology with support for contexts, projects, and priorities.
Tasks are stored as simple text files in a Git repository, making them portable and avoiding vendor lock-in. The tool provides a clean command-line interface for managing tasks without unnecessary complexity.

PARAMETERS

-c, --context CONTEXT

Set context filter
-p, --project PROJECT
Set project filter
-P, --priority PRIORITY
Set priority: low, medium, high, critical
-t, --tag TAG
Add tag to task
-n, --note NOTE
Add note to task
--due DATE
Set due date (YYYY-MM-DD)
-v, --verbose
Enable verbose output
-h, --help
Display help and exit
--version
Display version and exit

COMMANDS

add TASK

Add a new task
edit ID
Edit an existing task
done ID
Mark task as completed
rm ID
Remove a task
list
List tasks (default command)
next
Show next actionable task
context CONTEXT
Switch to context
project PROJECT
Switch to project view
sync
Sync with remote Git repository
undo
Undo last action

CAVEATS

Requires Git to be initialized and configured. Remote sync requires valid Git remote. Task IDs are internal references, not stable across operations. Complex recurring tasks not natively supported.

HISTORY

dstask was created by Cody Chan as a task manager that embraces plain-text storage and Git for synchronization. It was inspired by todo.txt but adds Git integration and a more modern interface.

SEE ALSO

git(1), todo.txt(1), task(1), org-mode(1)

> TERMINAL_GEAR

Curated for the Linux community

Copied to clipboard