Tsk
Lightweight terminal task app written in Go (Golang)
Install / Use
/learn @kakengloh/TskREADME
Description
tsk allows you to create and manage your tasks efficiently your terminal, so that you can dump your mouse 🖱️
Why
Shiny task management web apps often have tons of unnecessary features causing UI glitches which impact our UX 😵💫 <br> The huge JS chunks loading and network calls on every smallest action causing feedback delay and it is annoying ⌛
Personal task management should be as simple as possible, let's build a snappy cli app that doesn't get in our way ✌️
Features
- Simple and concise commands ✅
- Works without internet connection ✅
- Data stored locally - powered by BoltDB ✅
- Task due reminder via desktop notification ✅
See todo
Installation
Homebrew
brew tap kakengloh/tsk
brew install tsk
Go
# Go 1.16+
go install github.com/kakengloh/tsk@latest
# Go < 1.16
GO111MODULE=on go get github.com/kakengloh/tsk
Ensure that
$GOPATH/binis in yourPATH
Shell completion
Shell completion is supported on bash, zsh, fish, powershell
To enable it, run tsk completion {YOUR_SHELL} -h and follow the steps
Executables
See releases
Example
Create a new task
tsk new 'make coffee'
<img width="600" alt="tsk new output" src="https://user-images.githubusercontent.com/40446720/186668426-a5908430-c1db-4529-9206-6033571cff85.png">
Create a new task with status, priority and due
tsk new 'feed my cat' -s doing -p high -d 1h
<img width="600" alt="tsk new with options output" src="https://user-images.githubusercontent.com/40446720/186668696-6ba2e1b3-d2d2-4db9-953b-ac706876f365.png">
List tasks
tsk ls
<img width="600" alt="tsk ls output" src="https://user-images.githubusercontent.com/40446720/186668844-d73e83dd-e334-403c-b59e-e8410984c994.png">
List tasks with filters (status, priority, due)
tsk ls -s doing -p high -d 1h
<img width="600" alt="tsk ls with filters output" src="https://user-images.githubusercontent.com/40446720/186668966-12b472d3-b38e-449c-b1ad-eec70c86ac42.png">
List tasks with a keyword
tsk ls cat
<img width="600" alt="tsk ls with keyword output" src="https://user-images.githubusercontent.com/40446720/186669061-d20d7a1a-7c75-4225-a0e3-f450dbb193af.png">
List tasks as JSON
tsk ls -f json
<img width="250" alt="tsk ls json format output" src="https://user-images.githubusercontent.com/40446720/186669184-f25cb05d-6625-41db-ac87-3e12b2c03ae0.png">
View tasks in a Kanban board
tsk board
<img width="400" alt="tsk board output" src="https://user-images.githubusercontent.com/40446720/186669288-670f387c-0da8-42cd-a348-502c50853d4c.png">
Mark task(s) as todo
tsk todo 2
<img width="250" alt="tsk todo output" src="https://user-images.githubusercontent.com/40446720/186669381-e5bde5b1-84bd-4cf8-9721-564739930b1e.png">
Mark task(s) as doing
tsk doing 2
<img width="250" alt="tsk doing output" src="https://user-images.githubusercontent.com/40446720/186669448-5eedb3d0-af4b-4074-a42a-d9daf387571c.png">
Mark task(s) as done
tsk done 2
<img width="250" alt="tsk done output" src="https://user-images.githubusercontent.com/40446720/186669471-7ab542ad-ce34-495d-b5cc-8aeb36d086d9.png">
Modify an existing task
tsk mod 2 -s todo -p low
<img width="600" alt="tsk mod output" src="https://user-images.githubusercontent.com/40446720/186669548-1be2b856-5f2a-4e34-8788-bbfdf15f58a9.png">
Add note(s) on a task
tsk note 2 'it still hungry' 'meow...'
<img width="600" alt="tsk note output" src="https://user-images.githubusercontent.com/40446720/186669611-8a7c67aa-ac04-479d-b1c3-46fd2829d24c.png">
Remove task(s)
tsk rm 1
Start task reminder
tsk reminder start
Stop task reminder
tsk reminder stop
Set task reminder time
# Notify on 1 minute, 15 minute and 1 hour before task due
tsk reminder time 1m 15m 1h
Clean your data
tsk clean
Todo
- [x] Task due
- [x] Due reminder (via desktop notification)
Contributing
We welcome all feature requests and pull requests! 🙋
<p> <a href="https://www.buymeacoffee.com/kakengloh" target="_blank"><img src="https://cdn.buymeacoffee.com/buttons/v2/default-yellow.png" alt="Buy Me A Coffee" style="height: 54px !important;width: 217px !important;" ></a> <a href="https://www.producthunt.com/posts/tsk?utm_source=badge-featured&utm_medium=badge&utm_souce=badge-tsk" target="_blank"><img src="https://api.producthunt.com/widgets/embed-image/v1/featured.svg?post_id=357125&theme=light" alt="tsk - Organize tasks right in your terminal | Product Hunt" style="width: 250px; height: 54px;" width="250" height="54" /></a> </p>
Related Skills
node-connect
338.7kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
xurl
338.7kA CLI tool for making authenticated requests to the X (Twitter) API. Use this skill when you need to post tweets, reply, quote, search, read posts, manage followers, send DMs, upload media, or interact with any X API v2 endpoint.
frontend-design
83.6kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
338.7kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
