██████╗██╗ ████████╗
██╔════╝██║ ╚══██╔══╝
██║ ██║ ██║
██║ ██║ ██║
╚██████╗███████╗██║
╚═════╝╚══════╝╚═╝
▸ command line tasks
▸ file-backed · rust · tui
clt
A simple, file-system-backed CLI task management app written in Rust. It uses Markdown files for persistence and provides both a command-line interface and a TUI Kanban board.
Features
- File-based Persistence: Tasks are stored in
tasks/todo.md,tasks/doing.md, andtasks/done.md. - Kanban TUI: A visual board view powered by
ratatui. - Simple CLI: Easy commands to add, move, and list tasks.
- Smart Root Detection: Automatically finds the git repository root to keep tasks centralized, or uses the current directory.
- Agent Support: Includes a
clt-skill.mdfile to help AI agents usecltfor task tracking.
Installation
Ensure you have Rust and Cargo installed.
Usage
Initialization
Initialize the task directory structure:
Note: By default, clt looks for the root of your git repository to store the tasks/ folder. To force use of the current directory instead, use the --local flag:
Kanban View
Open the interactive TUI Kanban board:
(Press 'q' to quit the TUI view)
Adding Tasks
Add a new task to the To Do list:
Metadata: You can optionally add metadata (tags, priority, or IDs) which will be stored in parentheses:
Moving Tasks
Change the status of a task:
Alternatively, mark a task as done quickly:
Deleting Tasks
Remove a task from a specific list:
Listing Tasks
Get an overview of all tasks, or filter by status:
Development
If you want to contribute or build from source: