2 releases
Uses new Rust 2024
new 0.1.1 | Apr 17, 2025 |
---|---|
0.1.0 | Apr 17, 2025 |
#2 in #key-press
123 downloads per month
46KB
853 lines
whathaveidone
A terminal tool to summarize your Git commit history for daily standups, using AI (Gemini API).
Features
- Summarizes Git commit history for one or more projects
- Groups changes by day and topic
- Supports multiple repositories
- Customizable summary prompt (see
prompt.txt
) - Copy summary to clipboard with one keypress
Installation
Prerequisites
- Rust (for building)
- A Gemini API key
Build & Install
cargo install whathaveidone
Usage
-
Set your Gemini API key:
export GEMINI_API_KEY=your-key-here
-
Run the app in your commandline with
whathaveidone
or justwhid
. It will look relative from the folder you started the app. -
Use the keyboard to navigate:
- Arrow keys: Move between projects/commits
a
: Show AI summary popupc
: Copy summary to clipboardq
: Quit
Customizing the AI Prompt
Edit the file prompt.txt
to change how the summary is generated.
The default prompt includes instructions for grouping by day, topic, and handling ticket numbers.
Example from prompt.txt
:
Overall summary: Summarize all changes in the Git history in short, concise bullet points by grouping similar changes and highlighting their main topics and functions.
- Breakdown by day: Provide a summary of the changes for each day in a single line, highlighting the most important changes and features.
...
Publishing
To let others use your app, push your code to GitHub and share the repository.
Optionally, publish to crates.io for easy installation via cargo install
.
Dependencies
~14–31MB
~485K SLoC