Skip to content

Release v1.11.0

Latest

Choose a tag to compare

@github-actions github-actions released this 01 Oct 11:17
05667ba

Summary

workstats can now produce consultant timesheets: suggested hours per day and engagement, rounded the way a timesheet is, with the evidence behind each entry, a ledger for manual hours and locked periods, and CSV exports for Toggl, Harvest and Clockify. Work is attributed to branches, issues and features, and new commands cover the effort behind a branch or pull request, insights, a weekly digest, a prompt-line status, goals, a calendar heatmap and merging several machines.

Added

  • workstats timesheet: suggested hours per day and engagement with evidence, rounding (nearest, up, down, balanced), minimum entry, drop threshold and daily cap; every hour attributed once, reconciled with the report's human time, in table, JSON, CSV, Markdown and HTML. See Timesheet.
  • Engagements in the config: client work matched by project, remote, path, branch pattern or issue prefix, with rate, currency and billable flag; also usable as --group-by engagement.
  • A timesheet ledger: timesheet add, rm, set, unset, entries for manual hours and overrides, and lock, unlock, locks to freeze a submitted period and report drift instead of silently changing it.
  • timesheet --export toggl|harvest|clockify|generic for importing into time trackers.
  • Branch, issue and feature attribution from the branch fields Claude, Codex and Copilot record and from local Git refs, with --group-by branch|issue|feature and configurable issue-key patterns. See Branches and pull requests.
  • workstats branch and workstats pr: the human time, agent time, tokens, list value and commits behind one branch or pull request, with PR-ready Markdown.
  • workstats insights (focus, weekday-by-hour patterns, leverage, models) and workstats digest (this week against the last, with top repositories and features).
  • workstats now: a fast one-line status for a shell prompt or status bar, with templates and background refresh.
  • Goals: weekly and daily hour targets and list-value caps per subscription, shown in reports, the digest and now.
  • A calendar heatmap of human time per day: workstats calendar, the HTML report, Markdown with --daily, and the explorer (c).
  • workstats export and workstats merge (or --import) to combine machines without double counting; bundles carry no prompts, commit subjects, titles or absolute paths. See Merging machines.
  • Opt-in descriptions: --describe commits (subject lines of your own commits), --describe sessions (tool-generated titles, never prompts) and timesheet --summarize-with CMD with --digest to preview what is sent.
  • --daily per-day figures in JSON, and workstats record --branch NAME.

Changed

  • The transcript cache moves to parser version 5 and is rebuilt on first use, now holding branch names and pull-request numbers.
  • New config blocks branches, issues, engagements, timesheet, goals, insights and now are validated when used, naming any bad key.

Fixed

  • Report rows that tie on every figure now come out in the same order on every run.