The terminal-native task manager and Pomodoro timer built for developers who refuse to leave the command line.
Every developer knows the feeling. You're deep in the zone — three terminals open, a debugger running, your editor split into four panes — and then you remember: you have a task list somewhere. But it's in a web app. Or a phone app. Or worse, a sticky note. So you leave your flow, switch context, lose focus, and it takes twenty minutes to get back into the zone.
Stakly exists to end that.
Stakly is a complete task manager and Pomodoro focus timer that lives inside your terminal — right where you already spend your day. No browser tabs. No context switching. No accounts. No noise. Just you, your tasks, and the keyboard.
| Stakly | Web todo apps | Other CLI task tools | |
|---|---|---|---|
| Speed | Instant — native Go binary | Depends on browser + network | Varies |
| Focus | Keyboard-first TUI | Mouse + clicks | Often bare text |
| Pomodoro | Built in | Add-on or separate app | Rarely included |
| Privacy | 100% local | Your data on their servers | Depends |
| Install | One binary, no runtime | Browser | Often needs runtime |
| Platforms | Windows, macOS, Linux, Android | Any | Varies |
Stakly combines what you love about the terminal — speed, focus, and simplicity — with everything you need to manage work and deep-focus sessions, all in one tool.
- Add tasks in seconds — from the TUI or directly from the command line
- Priorities — low, medium, high, color-coded so important work stands out
- Projects — group related tasks and filter by project
- Tags — categorize tasks for easy discovery
- Due dates — set deadlines with automatic overdue detection
- Status tracking — pending, in progress, and done states
- Instant search — list and filter with a keystroke
- 25/5/15 cycle — work, short break, long break
- Auto-advance — modes switch automatically when time runs out
- Live progress bar — see your session at a glance
- Session counter — track completed pomodoros
- One-key controls — start, pause, reset, skip
- Single binary — no Node, no Python, no runtime required
- Cross-platform — Windows, macOS, Linux, and Termux (Android)
- Scriptable — every command works in pipelines and cron jobs
- JSON output — plug Stakly into your own tooling
- Local-first — your data never leaves your machine
- Embedded ownership bytecode — every build cryptographically proves who created it
- Tamper detection — modified binaries refuse to operate
- Instant verification —
stakly verifyconfirms authenticity
Works on macOS, Linux, and Termux. Automatically detects your OS and architecture:
curl -fsSL https://raw.githubusercontent.com/donrich99/stakly/main/install.sh | bashGrab the pre-built binary for your platform from the Releases page:
| Platform | Binary |
|---|---|
| Linux x64 | stakly-linux-x64 |
| Linux ARM64 | stakly-linux-arm64 |
| Linux ARM32 | stakly-linux-armv7 |
| macOS Intel | stakly-darwin-x64 |
| macOS Apple Silicon | stakly-darwin-arm64 |
| Windows x64 | stakly-windows-x64.exe |
| Termux (Android) | stakly-termux-arm64 |
Requires Go 1.21+:
git clone https://github.com/donrich99/stakly.git
cd stakly
go build -o stakly ./cmd/stakly
sudo mv stakly /usr/local/bin/pkg install golang git -y
git clone https://github.com/donrich99/stakly.git
cd stakly
go build -o stakly ./cmd/stakly
chmod +x stakly
mv stakly $PREFIX/bin/- Download
stakly-windows-x64.exefrom the Releases page - Rename it to
stakly.exe - Move it to a folder, e.g.
C:\stakly\ - Add the folder to your PATH:
- Press
Win + R, typesysdm.cpl, press Enter - Advanced tab → Environment Variables…
- Under User variables, select
Path→ Edit → New → enterC:\stakly - Click OK on all windows
- Press
- Open a new terminal (cmd or PowerShell) and run:
stakly --versionThe binary is not notarized, so macOS may warn:
“stakly” cannot be opened because the developer cannot be verified.
That is expected for free open-source tools. To open it anyway: right-click the file → Open → Open (once). Or remove the quarantine tag:
chmod +x stakly-darwin-arm64
xattr -d com.apple.quarantine stakly-darwin-arm64 # Apple Silicon
./stakly-darwin-arm64# 1. Launch the interactive interface
stakly tui
# 2. Press "a" to add your first task, type a title, press Enter
# 3. Start a focus session: press "t", then Space to start the timer
# Or skip the TUI entirely — everything works from the shell:
stakly add "Ship stakly v1.0" --priority high --project stakly
stakly add "Write docs" --due 2026-08-15
stakly listThat's it. You now have a task manager and focus timer in your terminal.
stakly tuiThe TUI is where Stakly shines. Full-screen, keyboard-driven, zero mouse needed. Everything you see is one keystroke away.
From the TUI, press a to enter add mode. Type a title, choose a priority
with 1, 2, or 3, and press Enter to save. Press Esc to cancel.
From the command line:
# Basic task
stakly add "Fix login bug"
# With priority
stakly add "Deploy to production" --priority high
# With a project
stakly add "Update API docs" --project docs
# With a due date
stakly add "Prepare quarterly report" --due 2026-09-30
# With tags
stakly add "Refactor auth module" --tags backend,security
# Everything at once
stakly add "Release v1.1" --priority high --project stakly --due 2026-08-20 --tags release,urgent# Pending tasks (default)
stakly list
# Include completed tasks
stakly list --done
# Filter by project
stakly list --project docs
# Machine-readable output (perfect for scripts)
stakly list --json# Find the task ID first
stakly list
# Mark as done (prefix of the ID works too)
stakly done 4f2a1b9cstakly delete 4f2a1b9cLaunch the TUI and press t to open the timer, or run:
stakly timerThen:
- Space — start or pause the session
- R — reset the current session
- N — skip to the next mode (work / short break / long break)
- Esc — return to the task list
The timer follows the classic Pomodoro rhythm: 25 minutes of work → 5 minute short break → repeat → 15 minute long break after every 4 sessions.
stakly verifyEvery build ships with an embedded ownership signature. Verify that your binary is genuine and untampered:
Stakly Ownership Verification
Signature: STAKLY-BC-v1
Fingerprint: 090E1B111603261A3E...
Owner: @dvc
GitHub: donrich99
Repository: https://github.com/donrich99
Status: AUTHENTIC
stakly help # All commands
stakly --version # Version + ownership
stakly info # Storage location + statistics
stakly support # How to support the project| Key | Action |
|---|---|
↑ / k |
Move up |
↓ / j |
Move down |
? |
Toggle help screen |
q |
Quit Stakly |
| Key | Action |
|---|---|
a |
Add a new task |
space |
Toggle pending / done |
d |
Delete selected task |
r |
Refresh the list |
| Key | Action |
|---|---|
1 |
Set priority to low |
2 |
Set priority to medium |
3 |
Set priority to high |
enter |
Save the task |
esc |
Cancel and go back |
| Key | Action |
|---|---|
space |
Start / pause |
r |
Reset current session |
n |
Skip to next mode |
esc |
Back to task list |
Launch the interactive terminal user interface.
Add a new task. The title is everything after the command name.
Flags:
| Flag | Description |
|---|---|
-p, --priority |
Priority: low, medium, high (default: medium) |
-P, --project |
Group under a project name |
-t, --tags |
Comma-separated tags, e.g. backend,security |
-d, --due |
Due date in YYYY-MM-DD format |
List tasks.
Flags:
| Flag | Description |
|---|---|
-P, --project |
Filter by project |
--done |
Include completed tasks |
--json |
Output as JSON for scripting |
Mark a task as completed. Accepts full IDs or unique ID prefixes.
Delete a task permanently. Accepts full IDs or unique ID prefixes.
Launch the Pomodoro timer in the TUI.
Show version, build date, ownership, storage location, and statistics.
Verify the embedded ownership signature and binary integrity.
Show ways to support the project from the terminal.
Show the full command help.
Show version and ownership information.
Stakly is a citizen of your terminal — it plays well with everything else:
# Automate task creation from other tools
stakly add "Deploy failed: $SERVICE" --priority high --tags deploy,alert
# Count open tasks
stakly list --json | jq 'length'
# Export tasks for reporting
stakly list --done --json > completed-tasks.json
# Cron reminder — check your day every morning
stakly listBecause everything is local and scriptable, Stakly integrates cleanly with your existing workflow — cron jobs, CI pipelines, shell aliases, anything.
Every Stakly binary carries an embedded ownership bytecode — an obfuscated, checksum-protected signature (Fletcher-16) that permanently proves who built the tool:
Owner: @dvc
GitHub: donrich99
Repository: https://github.com/donrich99
Signature: STAKLY-BC-v1
stakly verifyprints the full ownership proof for any build.- Tamper protection — if anyone modifies the binary or attempts to claim authorship, the checksum fails, the tool detects the modification, and it refuses to operate — displaying an "UNAUTHORIZED COPY" notice with the original author's information instead.
This isn't a license restriction — Stakly is MIT licensed and free to use, modify, and share. The signature simply makes sure the real author always gets credit for their work.
Stakly is free and open source (MIT). It was built by a solo developer who believes developers deserve fast, focused tools. If Stakly saves you time, here's how you can give back:
- ⭐ Star the repository — it's the simplest way to show support and help others discover the project: donrich99/stakly
- ☕ Sponsor the author via GitHub Sponsors (button on the repo page) — every donation funds development time and keeps the project alive
- 📣 Share it — tell a developer who lives in the terminal about Stakly
- 🐛 Contribute — open issues, suggest features, submit pull requests
- 💬 Give feedback — report what works and what doesn't
Run stakly support to see this from the terminal.
Thank you for using Stakly!
Stakly stores everything locally — no accounts, no servers, no telemetry, no tracking:
| Platform | Location |
|---|---|
| Linux | ~/.config/stakly/tasks.json |
| macOS | ~/.config/stakly/tasks.json |
| Windows | %USERPROFILE%\.config\stakly\tasks.json |
| Termux | ~/.config/stakly/tasks.json |
Your tasks are plain JSON. You can read them, back them up, or move them between machines. Your data is yours — always.
Planned features, in rough order:
- Task editing inside the TUI
- Recurring tasks
- Due date reminders / notifications
- Tag-based filtering in the TUI
- Fuzzy search across all tasks
- Export to Markdown / CSV
- Optional GitHub Issues sync
- Themes and color customization
- Shell completions (bash, zsh, fish, PowerShell)
Have an idea? Open an issue — the best features come from users.
Contributions of all kinds are welcome — code, docs, bug reports, feature ideas. Please open an issue first to discuss significant changes.
git clone https://github.com/donrich99/stakly.git
cd stakly
go mod download
go run ./cmd/staklyMIT © @dvc
Free to use, modify, and distribute. Attribution appreciated.
Built by @dvc
GitHub: @donrich99
Stakly — because your to-do list should be as fast as your editor.