step by step
1
agree on the format
Decide whether the client wants hours, outcomes, deliverables, decisions, risks, next steps, or some combination. agree on the reporting week and the detail that must stay private.
2
check capture coverage
Review the week in the timeline. note missing days, unrecorded calls, travel, and work performed on another device so the report does not imply complete coverage.
3
collect authoritative time
Run
/activity-summary for the exact reporting window. use its active-time totals; use AI only to suggest project labels. keep ambiguous blocks unassigned.4
find concrete outcomes
Search the same window for the project code, client name, document titles, pull requests, meetings, and delivery terms. prefer completed artifacts and accepted decisions over app usage alone.
5
separate progress from activity
“Opened the proposal” is activity. “Delivered proposal v2” is an outcome only when the source supports delivery. mark proposals, tentative dates, and inferred next steps clearly.
6
review with private context removed
Check time totals, names, links, commitments, and deadlines. remove unrelated clients, personal messages, internal pricing, and raw transcript text.
7
send from the normal channel
Copy the approved version into email, Slack, or the client’s portal. keep sending separate from generation until several reports are consistently accurate.