v0.4.0 — Days as on your profile.
Maintainer v0.4.0 makes lookup, suggest, histogram, snapshot and diff show each day as the contribution calendar on your GitHub profile does, wherever you, your computer and your GitHub account are. Until now a pull request review could land a day off: the commands took the calendar of GitHub’s API, which puts reviews on the dates of the time zone your account was last seen in and moves your whole history when you travel, while the profile puts them on their UTC date. Repeat runs now take about a second. Configuration, state and pins from v0.3.0 keep working, and snapshots keep their format.
The days of your profile
- A pull request review, an opened issue or pull request and a created repository count on their UTC date, and commits on the date they carry.
- A pull request you reviewed more than once in a year counts once, on the day of the latest review, as on the profile.
suggestaims at the busiest day of each week, so a review on the wrong day no longer raises the target of a whole week.- An answer from GitHub that does not add up is an error, never a day of zeros.
See how the days are counted →
Suggest prints UTC
- stdout gets the moment in UTC, such as
2026-01-26T05:51:27Z, sogit commit --datekeeps the chosen day in any time zone; a local time could move a late moment to the next day.
Fast repeat runs
- The commands keep what they read in
~/.cache/maintainer/contributions, or under$XDG_CACHE_HOMEwhen it is set. - A run asks GitHub only for the totals of the months it shows and reads again just the months whose totals changed; the first run of a year takes several seconds.
- Deleting the folder is safe: the next run reads everything again.
Contributions without a date
- GitHub counts some contributions without saying when they happened, such as ones in private repositories your token cannot read. A month with them shows the days of GitHub’s own calendar, where a review may be a day off, and the command names such a month on stderr with
warn:.
Known limitations
- Snapshots taken with v0.3.0 hold the days of GitHub’s API calendar. Comparing one with a new snapshot or a live year can list days where reviews moved although nothing new happened: keep the old files and take a new baseline with
maintainer github contribution snapshot. - A change that keeps the total of a month, such as one contribution removed and another added, is not seen until the folder of fast repeat runs is deleted.
- An issue opened in the browser near midnight keeps the browser’s date on the profile, and the commands may put it a day off.
- The commands count by calendar year, not by the profile’s rolling twelve months.
Upgrade: with Homebrew, run brew update followed by brew upgrade --formula octolab/tap/maintainer. With the install script, pass the tag: sh -s -- -b ~/.local/bin v0.4.0. With Go, run go install go.octolab.org/toolset/maintainer@v0.4.0. For a manual installation, use a v0.4.0 release archive . Run maintainer version to check the installed version. If you use the agent skill, replace it with the new binary’s copy.