daily_summary
Generate a comprehensive daily changelog for the current project — reads Issues.md, CHANGES.md, git history, and the conversation to produce a thorough report, then converts to Word
Daily Summary Generator
Generate a comprehensive daily changelog for any git project.
CRITICAL: Git commits alone tell less than 50% of the story.
Step 1 — Run the Data Collectors
# Git + project data
python3 ~/.claude/tools/generate_daily_changelog.py
# TODAY's session — reads live /tmp task files (current session, not yet archived)
python3 ~/.claude/tools/session_agent_report.py --markdown
# HISTORICAL trend — reads persisted log from prior sessions
# (today's data appears here only after this session ends and Stop hook fires)
# Use --project to filter to THIS project only (get project name from git remote or directory name)
python3 ~/.claude/tools/r2_stats.py --week --markdown --project <current-project-name>
Step 2 — Read Key Sources Before Writing (MANDATORY)
- ✅ Session summary at the top of this conversation — if the context was compacted, this summary contains hours of work not visible in git. Always read this first.
- ✅
docs/Issues.md— read the full file; every issue is a story about what went wrong and how it was solved - ✅
CHANGES.md— read the full file; every user-requested change with its status - ✅ Full git commit details — commit bodies, not just subject lines
- ✅ The conversation — look for debugging sessions, rejected approaches, and decisions that never made it into a commit
If unsure whether anything was missed, ask: "Did we do anything else today I should include?"
Step 2b — Read Today's Time Blocks
Read ~/.claude/time/blocks/$(date +%Y-%m-%d).json and filter to the
current project (git repo basename for the cwd, with project_names.json
variant map applied).
Also read matching entries from ~/.claude/time/siri_time.log for today.
Add a "Time Logged Today" section to the changelog listing every matching
block with its start–end time, hours, and summary. Tag Siri-sourced rows
with 📞 siri. Example:
## Time Logged Today
- 09:12–11:30 2.30h Fixed login redirect loop; added session tests.
- 14:05–16:00 1.95h ⚠ unattended — Refactored template partials.
- 📞 siri 0.75h Voice config tuning (retroactive).
Total: 5.00h
If the blocks file is missing, skip this section silently — it just means the tracker hasn't yet run for today.
Step 3 — Generate the Changelog
Include ALL of these sections:
- Executive Summary — 2-3 sentences covering the entire day
- Change Requests — from CHANGES.md with status (✅ / ⚠️ / ❌)
- Issues Logged & Resolved — problem → solution for each
- Technical Details — HOW things were implemented, with code snippets
- Problems Encountered — what failed, what was tried, what finally worked
- Testing Results — results and coverage
- Metrics — commits, files, lines, build times, repo size, etc.
7a. Agent Usage (Today) — paste the FULL raw table from
session_agent_report.py --markdownverbatim. Top 10 by cost, session total, total tokens. If no task files were found, write "No agent task data available (tmp files cleared)" — do NOT omit the section. 7b. Token Trend (Week) — paste the FULL raw table fromr2_stats.py --week --markdown --project <name>verbatim. This project only — do NOT include other projects' token usage. Note: today's row appears after session ends. This section is MANDATORY — always include it even if session agent data is missing. - Architecture Decisions — why certain approaches were chosen
- Outstanding Work / Tech Debt — incomplete items
- Next Steps — clear, actionable items
Step 4 — Save, Convert, and Archive
- Save to
docs/md/[PREFIX] CHANGELOG_YYYY-MM-DD_v1.0.md - Run
/md_to_word --files <file> --open - Run
python3 ~/.claude/tools/archive_old_docs.py - Run
python3 ~/.claude/tools/archive_session.py— snapshot current session to R2 and write token log. (The Stop hook will re-run this when the session eventually closes, overwriting with the complete final archive.)