-
Notifications
You must be signed in to change notification settings - Fork 0
Description
The Problem
Developers often need to catch up on changes in a codebase after being away for a few days or weeks. Manually reviewing git history, reading through commit messages, and understanding the context of changes can be time-consuming and overwhelming. There's a need for a tool that can automatically analyze recent changes and provide a clear, concise summary of what happened in the codebase.
The Idea
Create a CLI tool called "What did I miss" that:
- Takes a time parameter (e.g., "7 days ago")
- Fetches git history and changed files for that period
- Uses an LLM to analyze the changes and generate a human-readable summary
- Provides insights about:
- Major features or changes implemented
- Bug fixes and their impact
- Architectural changes
- New dependencies or tools added
- Breaking changes or migration requirements
The tool would output a well-formatted markdown report that developers can quickly scan to understand what they missed.
Nice to have
- Integration with popular project management tools (Jira, GitHub Issues) to link changes to tickets
- Ability to filter summary by specific directories or file types
- Option to generate different levels of detail (high-level overview vs. detailed changes)
- Support for multiple git repositories in a monorepo setup
- Interactive mode to ask follow-up questions about specific changes
- Customizable LLM prompts for different types of summaries
- Export options (PDF, HTML, etc.)
Audience
Primary audience:
- Software developers who need to catch up after time off
- Team leads who want to stay informed about project progress
- New team members onboarding to an existing project
- Remote team members who need to stay in sync with changes
Reach
This tool could be valuable for:
- Individual developers and small teams
- Large organizations with multiple active repositories
- Open source projects with many contributors
- Remote-first teams that need better change visibility
While this could be a standalone tool, it could also be integrated into existing developer tools or IDEs to increase its reach and adoption.
Level of effort
Low to Medium
Implementation requirements:
- 1-2 engineers
- 1-2 weeks for initial version
- Basic knowledge of git operations and CLI development
- Experience with LLM integration
Experience
Helpful background:
- Python/Node.js for CLI development
- Git API knowledge
- Experience with LLM APIs (OpenAI, Anthropic, etc.)
- Understanding of code review and change management
- Basic NLP concepts for processing commit messages and code changes
Contributing / Open Questions
- What's the best way to handle large repositories with many changes?
- How can we ensure the LLM summaries are accurate and relevant?
- Should we support different LLM providers or stick to one?
- How can we handle sensitive information in commit messages?
- What's the best way to structure the output for different use cases?
- How can we make the tool extensible for different project types?