- TimeBox model with explicit recoverable BoxState state machine - Store layer: time_boxes schema, CRUD, active-box recovery - BoxController: start/pause/resume/interrupt/complete/expire with elapsed math - CLI group (start/status/pause/resume/interrupt/complete/abandon/recover/list/focus) - Live ADHD-friendly focus REPL with single-key commands, calm UX, no-shame quit - Interruptions logged with timestamp + reason for pattern recognition - Non-interactive helpers + auto-resume on entry - 65 tests green, strict vertical RED-GREEN TDD
76 lines
1.7 KiB
Markdown
76 lines
1.7 KiB
Markdown
# Agent TODO Tracker
|
||
|
||
Lightweight TODO CLI for agent engineers across repos.
|
||
|
||
## Install
|
||
|
||
```bash
|
||
pip install -e .
|
||
```
|
||
|
||
## Usage
|
||
|
||
```bash
|
||
# Initialize DB
|
||
agent-todo init
|
||
|
||
# Create a TODO
|
||
agent-todo create -t "Implement auth" -p high -r stackchain/stackchain-hackathon
|
||
|
||
# List open TODOs
|
||
agent-todo list
|
||
|
||
# Update status
|
||
agent-todo update 1 -s in_progress
|
||
|
||
# Resolve
|
||
agent-todo close 1
|
||
|
||
# JSON output
|
||
agent-todo list --json
|
||
```
|
||
|
||
## Time-boxing (issue #16)
|
||
|
||
Calm, ADHD-friendly focus sessions with explicit state, interruptions you can
|
||
resume from, and a live focus loop.
|
||
|
||
```bash
|
||
# Start a 25-minute focus box (default)
|
||
agent-todo box start
|
||
|
||
# Custom duration (0.5–240 min)
|
||
agent-todo box start 10
|
||
|
||
# Link a box to a TODO
|
||
agent-todo box start 15 --todo 3
|
||
|
||
# Enter the live focus REPL (auto-starts or auto-resumes)
|
||
agent-todo box focus
|
||
|
||
# Non-interactive helpers
|
||
agent-todo box status
|
||
agent-todo box pause
|
||
agent-todo box resume
|
||
agent-todo box interrupt "meeting popped up"
|
||
agent-todo box complete --reason "made progress"
|
||
agent-todo box abandon --reason "tired"
|
||
agent-todo box recover # after a restart / crash
|
||
agent-todo box list
|
||
agent-todo box list --all
|
||
```
|
||
|
||
Inside `box focus`, single keys drive the loop: `p` pause · `r` resume ·
|
||
`i <why>` interrupt · `c` complete · `q` quit · `h` help · Enter refresh.
|
||
There's no judgment for quitting — your time is saved.
|
||
|
||
### Interruptions are recoverable
|
||
|
||
Pause, interrupt, or even close the terminal — `box recover` or `box focus`
|
||
resumes from where you left off. Interruptions are logged with a timestamp and
|
||
a reason so you can notice patterns later, without being shamed.
|
||
|
||
## Storage
|
||
|
||
Default: `.agent_todos.db` in current directory.
|