A lightweight, keyboard-driven task manager built around the simplicity of the todo.txt format.
This project is a spiritual successor to https://github.com/benrhughes/todotxt.net, reimagined in Python with a focus on simplicity and task timing.
- Plain-text
todo.txtstorage - Built-in task timing
- Start and stop timers on tasks
- Automatically records time spent directly into the
todo.txtline
- Keyboard-based workflow
- Fast task creation and editing
- Dynamic priority adjustment
- Archive completed tasks to a configurable
archive.txt - Generate reports from archived completed tasks with OpenAI
- Support for tags and metadata
- Live reload and save
- Python codebase
Tasks remain compatible with the standard todo.txt format, with optional metadata extensions for time tracking.
The app may add fields like these to a task line:
created:YYYY-MM-DD-HH-MM-SSstarted:YYYY-MM-DD-HH-MM-SSlastworked:YYYY-MM-DD-HH-MM-SSspent:HH:MM:SS
Example:
(A) 2026-04-23 Write README +project created:2026-04-23-14-30-00 started:2026-04-23-15-10-12 lastworked:2026-04-23-15-42-08 spent:00:31:56
Field meanings:
createdis when the task was createdstartedis when the current timer was startedlastworkedis when work was last stopped or recordedspentis the total accumulated time spent on the task
python app.py
Or, for a windowed version without a console:
pythonw app.pyw
Use the File menu to open or create an archive.txt file, then choose
File > Archive completed tasks to move completed tasks from the current
todo.txt into that archive file.
Use Tools > OpenAI key to save an API key, then Tools > Generate report to
summarize completed tasks from archive.txt over a selected date range.
- todo.txt by Gina Trapani
- https://github.com/benrhughes/todotxt.net
This project is licensed under the Apache License 2.0. See the LICENSE file for details.