A simple, fast command-line task manager built with Go, using Bubble Tea for the TUI and LipGloss for styling. Data is stored locally in SQLite.
Note: This is a hobby project for personal use. Feel free to use, fork, or learn from it, but don't be surprised if things break over time. See branches for iterations.
go install github.com/mkaz/tasks/cmd/tasks@latestOr build from source:
git clone https://github.com/mkaz/tasks.git
cd tasks
go build -o tasks ./cmd/tasks# Open interactive task manager
tasks
# Add a task from command line
tasks add "Buy groceries"
# Add a task with a URL
tasks add "Review PR https://github.com/example/repo/pull/123"
# Mark a task as done
tasks do 5
# View tasks completed this week
tasks week
# Show help
tasks helpLaunch with tasks to enter the interactive TUI.
| Key | Action |
|---|---|
↑ / k |
Move up |
↓ / j |
Move down |
alt+↑ |
Move task up in list |
alt+↓ |
Move task down in list |
r |
Refresh |
q |
Quit |
| Key | Action |
|---|---|
a |
Add new task |
e/enter |
Edit selected task |
d |
Mark as done |
delete |
Delete task permanently |
| Key | Action |
|---|---|
/ |
Start filtering |
Enter |
Apply filter |
Esc |
Clear filter / Cancel |
Filter is live/type-ahead: results appear after typing 3+ characters. Matches against both task title and state.
Examples:
/now— Show only tasks in "Now" state/groceries— Find tasks containing "groceries"/back— Match "Backlog" state or titles with "back"
| Key | Action |
|---|---|
↑/↓ |
Navigate fields |
enter |
Edit field (or cycle state) |
s |
Save changes |
Esc |
Cancel editing |
| Command | Description |
|---|---|
tasks |
Open interactive TUI |
tasks add "text" |
Add a task (supports URLs in text) |
tasks do <id> |
Mark a task as done |
tasks week |
Show tasks completed in last 7 days |
tasks --init <db> |
Create a new empty database at path |
tasks help |
Show help information |
Data is stored in a SQLite database. The program looks in this order:
tasks.dbin current directoryTASKS_DBenvironment variable~/Documents/tasks.db
MIT License - An mkaz contrivance.