How I Automated Our Monthly Product Updates with Claude Code

From tedious manual work to comprehensive automated analysis in one afternoon
If you're like me, you probably dread writing those monthly product update emails. You know the ones – where you have to comb through dozens (or hundreds) of commits across multiple repositories, trying to remember what actually shipped and what matters to your users.
Today I used Claude Code to turn our product update process from a manual slog into an automated, comprehensive analysis that actually reads every single line of code we've changed.
The Problem: Death by a Thousand Commits
Every month at PromptLayer, we send out a product update email to our users. It's important – our customers want to know what's new, what's fixed, and what's coming. But creating these updates was painful.
My old process:
- Open GitHub
- Go through each of our 5 repositories
- Copy several pages of commit messages
- Paste them into Claude
- Try to make sense of cryptic commit messages like "fix bug" or "update config"
- Hope I didn't miss anything important
Even with a script to help analyze commit messages, I was still just looking at surface-level information. What did "refactor authentication flow" actually mean for our users? What files changed? What features were impacted?
The Inspiration: Beyond Coding with Claude Code
I recently watched Dan Shipper's interview on the Lenny Newsletter podcast (highly recommend it, by the way). Dan talked about using Claude Code for non-coding tasks – things you wouldn't traditionally think of as "programming" problems.
That got me thinking: what if instead of just analyzing commit messages, Claude Code could actually clone our repos, read through every single code change, and write intelligent summaries of what actually happened?
The Solution: A Systematic Commit Analysis Machine
I asked Claude to build this. Here is it's process:

1. Complete Code Analysis
Instead of just reading commit messages, the system:
- Clones all 5 of our repositories
- Analyzes EVERY SINGLE COMMIT in the date range
- Reads the actual code diffs (not just the messages)
- Understands what changed, why it matters, and how it impacts users. Stores this in an intermediary file.
2. State Tracking for Reliability
One challenge I hit early was that Claude Code would sometimes lose track of where it was in the process. Too many commits, too much context. So I had it build in state tracking:
Current Status: PROCESSING
Current Repository: python-sdk
Current Commit: a7f3d21
Repositories Status:
- python-sdk: IN_PROGRESS (15/47 commits)
- js-sdk: NOT_STARTED
- api: NOT_STARTED
If anything interrupts the process, it should be able to pick up exactly where it left off.
3. Repository-by-Repository Processing
The system works through each repository systematically:
- Python SDK
- JavaScript SDK
- Backend API
- Frontend
- Documentation
For each commit, it writes a 2-3 sentence summary explaining what changed and why it matters. No commit is too small – even config changes get documented.
4. Feature-Based Consolidation
Here's where the magic happens. After analyzing all commits across all repos, the system creates a consolidated report grouped by FEATURES, not repositories.
So instead of:
- "Python SDK: Added auth middleware"
- "API: Updated auth endpoints"
- "Frontend: New login UI"
You get:
- "Authentication System Overhaul: New middleware in Python SDK, updated API endpoints, and redesigned login UI providing 2FA support and improved security"
The Results: From Hours to Minutes
What used to take me 2-3 hours of manual work now runs automatically. I just specify a date range and let it go. The output is comprehensive, accurate, and actually useful.
Claude Code for Manual Tasks
This isn't just about product updates. Think about all the manual analysis tasks you do:
- Security audit reports
- Performance optimization tracking
- Technical debt assessments
- Onboarding documentation for new developers
- Compliance reporting
Any task where you need to understand "what changed and why" across multiple codebases is a candidate for this approach.
Claude Code isn't just for programming tasks.