nag is a command-line time-blocking tool designed to help you organize your day with time blocks. Add tasks to your schedule, annotate them, and display your timeline — all from the terminal.
- Add time blocks for specific tasks.
- Annotate existing time blocks.
- Display your timeline for a given day.
- Simple and intuitive command-line interface.
pipx is a great tool for installing Python applications in isolated environments, so you don’t clutter your global Python installation.
To install pipx:
python3 -m pip install --user pipx
python3 -m pipx ensurepath
After you have pipx installed, you can install nag:
pipx install nag
This will install nag and ensure it’s available globally on your system.
You can also install nag using pip if you prefer to install it directly into your Python environment.
pip install nag
To add a new task to your schedule:
nag block 09:00 10:00 "Meeting with team"
This will add a task from 9:00 AM to 10:00 AM with the description "Meeting with team" for today by default. You can also specify a date:
nag block 09:00 10:00 "Meeting with team" --date 09/19
To view your schedule for today:
nag show
You can also show the schedule for a specific date:
nag show --date 09/19
To annotate an existing task using its ID (as shown in the timeline):
nag annotate <task_id> "Discussed project progress."
To mark a task as DONE:
nag done <task_id>
To delete a task using its ID:
nag delete <task_id>
You can get help for any command by running:
nag --help
Usage: nag [OPTIONS] COMMAND [ARGS]...
nag 🐍️ - Command-line time-blocking tool.
Options:
--help Show this message and exit.
Commands:
annotate Annotate an existing time block using its ID.
block Add a time block to your schedule with an optional date.
delete Delete a time block using its ID.
done Mark a time block as done using its ID.
show Show the timeline for the given date.
For specific commands, you can also run:
nag block --help
nag show --help
nag annotate --help
nag done --help
nag delete --help
Contributions are welcome! If you’d like to contribute to this project, feel free to open a pull request or submit an issue.
This project is licensed under the MIT License.