pmcli is a production-grade project and task management CLI written in Rust. It is designed for developers and power users who work primarily in the terminal, especially on Termux and Linux environments.
pmcli focuses on simplicity, transparency, and Git-friendly workflows. All data is stored locally in human-readable files — no database, no lock-in.
- CLI-first workflow
- Fast single binary (Rust)
- No database, only files
- Easy to version with Git
- Works perfectly on Termux
- Predictable and scriptable
- Project management
- Task management (add, list, complete)
- Task priorities (low / medium / high)
- Deadlines with date parsing
- Markdown notes per project
- Global configuration (TOML)
- Interactive TUI (Terminal UI)
- Git integration (init / commit / push / pull)
- Export project data
pkg install rust git
git clone https://github.com/djunekz/pmcli
cd pmcli
cargo build --release
cp target/release/pmcli $PREFIX/bin/pmcli create myproject
pmcli add-task myproject "Design architecture" \
--priority high \
--deadline 2026-02-01
pmcli tasks myproject
pmcli done-task myproject 1
pmcli tui myproject- Create a project
- Add tasks with priority and deadline
- Track progress via CLI or TUI
- Store everything locally
- Sync project directory using Git
- Export data when needed
pmcli tui myprojectTUI features:
- Live task filtering
- Split panel (task list + task details)
- Keyboard-driven navigation
- No mouse required
Configuration file location:
~/.config/pmcli/config.toml
Example configuration:
default_priority = "medium"
date_format = "%Y-%m-%d"Each project can be a local Git repository.
pmcli git-init myproject
pmcli git-commit myproject "Update tasks"
pmcli git-push myproject
pmcli git-pull myprojectAuthentication uses standard Git credential helpers or tokens.
All data is stored locally:
~/.pmcli/<project>/
Files inside each project:
- project.json — project metadata
- tasks.json — task list
- notes.md — project notes
All files are human-readable and Git-friendly.
- Task dependencies
- Recurring tasks
- Advanced TUI views
- Plugin system
- Official Termux package
- Documentation website
Does pmcli require internet?
No. Internet is only required for Git sync.
Is my data safe?
Yes. All data is stored locally in plain files.
Is pmcli opinionated?
Yes. It favors simplicity and transparency over complexity.
Contributions are welcome. Please open an issue before submitting large changes.
LICENSEMIT License © 2026