Terminal user interface for Task
What is Task and Taskfile?
Task is a task runner / build tool that aims to be simpler and easier to use than, for example, GNU Make.
Once installed, you just need to describe your build tasks using a simple YAML schema in a file called Taskfile.yml
The tool is a client with a user interface for the Task that makes it easier to run tasks from the terminal.

Features
- List and execute tasks
- Filtering mode to speed up navigation between tasks
- Task summary page to show the description of a task
- Repeating last executed command
Usage
Cli
Task-tui cli supports common Task arguments, see task documentation or --help cli argument.
Example usage
# run for a default taskfile
task-tui
# or specify the taskfile explicitly
task-tui -t ./Taskfile.yml
# ask for help
task-tui --help
# combine with other task arguments
task-tui -xsv -t ./examples -- --command-arg
Repeat last executed command
task-tui -r
Hotkeys
General
Enter - to execute the selected task
/ - to enter the filtering mode (in this mode enter a substring to search for and return to the list by pressing Enter)
s - to show the task summary
Esc - to go back
Ctrl+C - to exit
h - to show the help page
Task list navigation
Key down or tab - select a next task
Key up - select a previous task
end (or fn + Key right on MacOS) - select a last task
home (or fn + Key left on MacOS) - select a first task
Installation
Make sure Task is installed.
Homebrew tap
brew install aleksandersh/task-tui/task-tui
Go install
Requires Go 1.22
go install github.com/aleksandersh/task-tui@latest
Best practice
Use terminal aliases
Improve your productivity by setting up terminal aliases for frequently used taskfiles.
Bash example
$ echo $'alias task-tui-example=\'task-tui -x -t "$HOME/taskfile-tui/examples"\'' >> "$HOME/.bash_aliases"
$ source "$HOME/.bash_aliases"
$ task-tui-example