whathaveidone - a git-based TUI for forgetful software developers
Note: A German translation can be found below
As a software developer, I keep running into the same problem: the next day, I often have no idea what I actually did just that morning. Maybe it’s just me – but I doubt I’m the only one who, when standup or timesheet time rolls around, suddenly has to play detective. Tickets, commits, calendars – everything gets combed through just to answer that one question: What did I actually do? All I want is to write code, not write reports.
The funny thing is: I’m already tracking my time – with GIT! So I built myself a little tool: whathaveidone. It shows you all your Git commits for any time period right in your terminal, whether for a single project or all at once. Written in Rust and powered by Ratatui for a slick TUI – fully keyboard-controlled and packed with options.
AI summary? Totally optional!
With a single keystroke, you get an AI summary of your commits (Google Gemini). But you don’t have to – if you prefer reading yourself, that’s cool too.
Some Examples & Use Cases
Quick Standup:
whathaveidone today --lang english
Shows all today’s commits and a snappy summary (choose English or German).
Weekly review for multiple projects:
You don't want to writewhathaveidone
all the time? You can just writewhid
.whid week --model gemini-2.0-pro
Switch the AI model for even better summaries.
Custom prompt for personalized reports:
whathaveidone --prompt myprompt.txt --from 2024-07-01 --to 2024-07-07
Use your own prompt templates and pick any date range.
Detailed view:
Hitd
in the commit view for a full "git log"-style overview.
For more examples, check the whathaveidone github repository
What’s next?
- Stats & analytics about your own commits
- Integration with Olama
- Even more default prompts
Feedback? Suggestions? Ideas?
Hit me up on Mastodon, Bluesky, GitHub
If you like the project, I’d also be super happy about a star on GitHub ⭐️
More info & installation:
Als Softwareentwickler stolpere ich immer wieder über dasselbe Problem: Am nächsten Tag habe ich oft keine Ahnung mehr, was ich eigentlich noch am Vormittag gemacht habe. Vielleicht geht das nur mir so – aber ich bezweifle, dass ich der Einzige bin, der beim Standup oder bei der Zeiterfassung plötzlich zum Detektiv werden muss. Tickets, Commits, Kalender – alles wird durchforstet, nur um diese eine Frage zu beantworten: Was habe ich eigentlich gemacht? Ich will doch einfach nur coden, nicht Berichte schreiben.
Das Lustige ist: Eigentlich erfasse ich meine Zeit ja schon – mit GIT! Also habe ich mir ein kleines Tool gebaut: whathaveidone. Das zeigt dir alle deine Git-Commits für beliebige Zeiträume direkt im Terminal an, egal ob für ein einzelnes Projekt oder alle zusammen. Geschrieben in Rust und mit Ratatui für eine schicke TUI – komplett per Tastatur bedienbar und mit jeder Menge Optionen.
AI-Zusammenfassung? Komplett optional!
Mit einem Tastendruck bekommst du eine AI-Zusammenfassung deiner Commits (Google Gemini) – musst du aber nicht! Wer lieber selbst liest, kann das natürlich auch machen.
Ein paar Beispiele & Usecases
Schnelles Standup:
whathaveidone today --lang german
Zeigt alle heutigen Commits und eine knackige Zusammenfassung (auf Deutsch oder Englisch).
Wochenrückblick für mehrere Projekte:
Keine Lust, immerwhathaveidone
zu tippen? Einfachwhid
schreiben!whid week --model gemini-2.0-pro
Wechsle das AI-Modell für noch bessere Zusammenfassungen.
Eigener Prompt für individuelle Reports:
whathaveidone --prompt myprompt.txt --from 2024-07-01 --to 2024-07-07
Nutze eigene Prompt-Templates und wähle beliebige Zeiträume.
Detaillierte Ansicht:
Drücked
in der Commit-Ansicht für einen vollständigen "git log"-Style Überblick.
Für mehr Beispiele schau im whathaveidone GitHub-Repository vorbei.
Was kommt als Nächstes?
- Statistiken & Auswertungen zu deinen Commits
- Integration mit Olama
- Noch mehr praktische Default-Prompts
Feedback? Wünsche? Ideen?
Melde dich gerne auf Mastodon, Bluesky, GitHub – oder schick eine Brieftaube!
Und wenn dir das Projekt gefällt, freue ich mich riesig über einen Stern auf GitHub ⭐️
Mehr Infos & Installation: