| name | pushup-log |
| description | Log push-ups (or any reps) for The Push-Up Challenge. Use when the user says they did push-ups/reps, wants to add to their count, or check their challenge standing. Examples - "/pushup-log 20", "/pushup-log 10 each set", "log 30 pushups", "add 30 to my challenge", "pushup status". |
| user_invocable | true |
pushup-log
Log reps for The Push-Up Challenge (https://www.thepushupchallenge.com.au), or check
where the user stands. This is personal logging + a running scoreboard only — it does
not submit anything to the official website. The user still banks their reps there
themselves.
Tracker script (installed by this kit):
python3 ~/.config/pushup-challenge/tracker.py
Logging reps
Parse the rep count from the user's message and run:
python3 ~/.config/pushup-challenge/tracker.py --log <reps> --note "manual /pushup-log"
Rep parsing:
- A plain number is the total reps:
/pushup-log 20 → --log 20.
- "N each set/side/round" or "N x M" means multiply:
/pushup-log 10 x 3 → --log 30.
- "skip" / "rest" / "0" →
--log 0.
- If no number is given, treat it as a status check (see below) — do NOT log anything.
Then relay the standing the script prints (it already uses encouraging, no-guilt
framing). Keep the tone light: the daily number is just the minimum; the real goal is
overachieving toward the comfy-max when it feels good. Skipping is always fine — never
guilt-trip.
Status check
If the user just wants to see where they stand (no reps to add):
python3 ~/.config/pushup-challenge/tracker.py --status
Relay the output.
Notes
- If there's no config yet, the script will say so — run the
pushup-setup skill first
(or python3 ~/.config/pushup-challenge/tracker.py --init --challenge half|full).
- The full scoreboard lives in
~/.config/pushup-challenge/progress.md (rebuilt on every log).
- To fix a bad entry, edit
~/.config/pushup-challenge/log.jsonl directly, then run
python3 ~/.config/pushup-challenge/tracker.py --render to rebuild the scoreboard.
$PUSHUP_DIR overrides the data folder if the user installed it elsewhere.