taskwarrior
Manage and track tasks from the command line
SYNOPSIS
task [<global_options>] <command> [<command_arguments>] [<filters>]
Examples:
task add "Review pull request" project:dev due:tomorrow priority:H
task list project:dev status:pending
task 123 done
PARAMETERS
--version
Displays the Taskwarrior version information and exits.
--rc <file>
Specifies an alternative configuration file to use instead of the default.
--config <name>=<value>
Overrides a specific configuration setting directly from the command line.
--force
Suppresses all interactive confirmation prompts, proceeding automatically.
--verbose
Increases the verbosity of output messages, showing more details.
--debug
Provides extensive debugging information for troubleshooting issues.
--quiet
Suppresses non-essential output messages, providing a minimal output.
--color <mode>
Controls the colorization of output (e.g., 'on', 'off', 'no_pager').
--report <name>
Uses a specific custom report for displaying task data.
--read-only
Prevents any modifications or additions to the task database for the current command.
DESCRIPTION
Taskwarrior is a free, open-source, and cross-platform command-line utility designed for efficient task management. It allows users to add, modify, delete, search, prioritize, tag, and track the progress of their tasks directly from the terminal. Built for speed and flexibility, Taskwarrior supports complex queries using filters, enabling users to quickly find and act on specific subsets of tasks. It embraces the Getting Things Done (GTD) methodology, providing features like projects, contexts, due dates, and recurring tasks. Its plain-text data storage ensures portability and easy integration with other tools. Furthermore, Taskwarrior is highly customizable through configuration files, user-defined attributes (UDAs), and hooks, allowing for extensive automation and reporting capabilities. It also offers synchronization features to keep tasks consistent across multiple devices via a Taskserver. Its robust feature set and scriptability make it an indispensable tool for developers, system administrators, and anyone who prefers a minimalist yet powerful approach to personal productivity.
CAVEATS
Taskwarrior has a relatively steep learning curve for new users, especially when delving into advanced features like custom reports or hooks. Its command-line nature means it lacks a graphical user interface, which might not suit all users. While powerful, its plain-text data storage does not include built-in encryption, requiring external solutions if sensitive task data needs to be secured.
CORE CONCEPTS
Taskwarrior leverages several core concepts for its powerful functionality:
Filters: Used to select specific subsets of tasks based on various criteria (e.g., project, status, tags, UDA values).
Attributes: Properties associated with tasks, including standard ones (project, tags, due, wait) and User Defined Attributes (UDAs) for custom data.
Hooks: Executable scripts triggered by specific Taskwarrior events, enabling extensive automation and integration.
Reports: Customizable views of task data, allowing users to define how tasks are displayed and what information is included.
Synchronization: The ability to sync task data with a Taskserver, facilitating cross-device consistency and collaboration.
HISTORY
Taskwarrior was created by Paul Beckingham, with its first public release in 2008. Written in C++, it has evolved significantly over the years, steadily adding features such as synchronization, hooks, and recurring tasks, while maintaining its core philosophy of efficiency and customizability. It benefits from an active open-source community, ensuring continuous development and support.
SEE ALSO
todo.txt-cli, remind(1), cal(1)