| Crates.io | backlog-cli |
| lib.rs | backlog-cli |
| version | 0.3.0 |
| created_at | 2025-12-18 02:27:38.503443+00 |
| updated_at | 2025-12-18 09:55:46.665413+00 |
| description | A simple, fast backlog manager for your git repos with an interactive TUI |
| homepage | https://github.com/edanisko/backlog-cli |
| repository | https://github.com/edanisko/backlog-cli |
| max_upload_size | |
| id | 1991604 |
| size | 75,711 |
A simple, fast backlog manager for your git repos. Track todos per-project with a beautiful interactive TUI.
┌─────────────────────────────────────────────────────────────┐
│ Backlog │
├─────────────────────────────────────────────────────────────┤
│ 1. [ ] Implement user authentication with OAuth │
│ 2. [ ] Add dark mode support for the dashboard │
│ 3. [x] Fix memory leak in websocket handler │
│ 4. [ ] Write integration tests for payment flow │
└─────────────────────────────────────────────────────────────┘
.todo/backlog.json~/.backlog/j/k navigation, dd to delete, and morea to add new todos without leaving the interfacecargo install --git https://github.com/edanisko/backlog-cli
cargo install backlog-cli
git clone https://github.com/edanisko/backlog-cli
cd backlog
cargo install --path .
cd your-project
backlog add Fix the login bug
backlog add "Add unit tests for auth module"
backlog # show pending items
backlog cli # interactive mode
| Command | Description |
|---|---|
backlog |
Show pending items in current repo |
backlog add <text> |
Add a new item |
backlog list |
Show all items (including done) |
backlog list --all |
Show backlogs across all repos |
backlog next |
Show the next item to work on |
backlog done <n> |
Mark item #n as done |
backlog remove <n> |
Remove item #n |
backlog cli |
Open interactive TUI |
Launch with backlog cli for a full-screen interactive experience.
| Key | Action |
|---|---|
j / k / ↑ / ↓ |
Navigate up/down |
Enter |
Select item and output to stdout |
a |
Add new item |
x |
Toggle done/undone |
e |
Edit item text |
h |
Hide/show completed items |
K / J (shift) |
Move item up/down |
dd |
Delete immediately |
Delete / Backspace |
Delete with confirmation |
q / Esc |
Quit |
.todo/backlog.json in each git repository~/.backlog/index.json tracks all repos with backlogsAdd .todo/ to your global gitignore if you don't want to commit backlogs:
echo ".todo/" >> ~/.gitignore_global
git config --global core.excludesfile ~/.gitignore_global
Or commit them to share with your team - your choice!
Quick task capture while coding:
# You notice something while working
backlog add "TODO: refactor this ugly function"
# Keep coding, deal with it later
Start your day:
backlog list --all # What's on my plate?
cd important-project
backlog next # What should I do first?
Interactive session:
backlog cli # Review, reorder, clean up
Pipe to other tools:
# Select a task interactively and pass to another tool
task=$(backlog cli)
echo "Working on: $task"
MIT
Contributions welcome! Please open an issue or PR on GitHub.