Deine Meetings, committet in dein eigenes Repository
Liegt dein Transkript-Ordner in einem Git-Repository, committet Earkeep die Datei jedes Tages dorthin: wenn der Tag endet, wenn sich ein Meeting ändert, oder beides. Gepusht wird auf die Remotes, die dein Repository schon hat. Jeder Teil ist eine Einstellung, und das Repository bleibt deins.
Das Problem: Die Aufzeichnung hat keine Historie
Die Aufzeichnung von Earkeep besteht schon aus einfachen Dateien: eine JSONL-Datei pro Tag, in einem Ordner deiner Wahl, oft im Repository, in dem auch deine Notizen liegen. Ein Ordner ist aber nur versioniert, wenn jemand committet, und von Hand committen hört spätestens am Mittwoch auf. Deshalb macht Earkeep die Commits und überlässt den Rest des Repositorys dir.
So funktioniert es
Es schaltet sich nur in einem Repository ein. Ist der Transkript-Ordner oder einer darüber ein Git-Repository, bietet Settings → Storage & Git die Funktion an. Andernfalls gibt es einen Button, der git init ausführt, und das ist der einzige Weg, auf dem Earkeep je ein Repository anlegt.
Du bestimmst, wann committet wird: wenn ein Tag endet, wenn sich ein Meeting ändert, beides (Standard) oder nie.
- Wenn ein Tag endet heißt fünf Minuten nach Mitternacht. Ein Laptop, der um Mitternacht schläft, committet den gestrigen Tag, sobald er aufwacht.
- Wenn sich ein Meeting ändert heißt gespeichert, beendet, in der Länge angepasst, umbenannt oder gelöscht, wenige Sekunden nach der letzten Änderung. Das Ziehen an einer Kante ergibt also einen einzigen Commit. Der Beginn eines Meetings löst keinen Commit aus, neue Transkriptzeilen allein auch nicht.
Ein Commit pro Tagesdatei, sonst nichts. Was du selbst gestaged hast, bleibt aus den Commits von Earkeep heraus, und eine Tagesdatei, die deine .gitignore ausschließt, wird übergangen.
Nur auf einem Branch, den du erlaubst: main (oder master), der jeweils ausgecheckte Branch oder einer, den du benennst. Auf jedem anderen Branch wird nichts committet, und Settings sagt dir, warum.
Commit-Nachrichten, die sagen, was passiert ist
Jede Nachricht nennt den Tag und das Meeting, sodass git log --oneline sich liest wie deine Woche:
$ git log --oneline -- meetings/
4e1c0a7 Earkeep 2026-10-12: transcript of the day
9b2f61d Earkeep 2026-10-12: Roadmap review
51d8e3a Earkeep 2026-10-12: update Weekly sync
c07a9f2 Earkeep 2026-10-12: Weekly sync
8a44b1e Earkeep 2026-10-11: transcript of the day
Jede Nachricht ist eine Vorlage, die du in Settings umschreiben kannst, eine pro Ereignis, mit {date} und {meeting} als Platzhaltern.
Pushen ist eine eigene Entscheidung
Pushe auf alle Remotes (Standard), auf die Remotes, die du auswählst, oder gar nicht. Dann bleibt jeder Commit auf deinem Gerät.
Das ist der einzige Weg, auf dem ein Transkript dein Gerät verlässt, und zwar nur zu einem Remote, das du eingerichtet hast, unter deinem eigenen Konto. Earkeep hat in diesem Pfad keinen Server.
Es ist dein eigenes git, also gelten dein SSH-Agent, deine Credential-Helper und deine Hooks wie im Terminal. Ein Push, der nach einem Passwort oder einer Passphrase fragen würde, schlägt sofort fehl und nennt den Grund, statt auf eine Eingabeaufforderung zu warten, die niemand sieht.
Ein Remote, das weitergezogen ist, wird gepullt, nicht abgelehnt. Earkeep tut, was git pull --rebase --autostash tut, und pusht dann. Die Aufnahme läuft weiter; das Bearbeiten eines Meetings ist für diesen Moment pausiert und sagt das auch.
Konflikte löst ein Agent, du musst es nicht tun
Widersprechen die Commits des Remotes deinen eigenen, übergibt Earkeep den angehaltenen Rebase an einen der ACP-Agenten auf deinem Rechner, etwa Claude Code oder Codex. Danach prüft es das Repository, nicht die Antwort des Agenten: Der Rebase ist abgeschlossen, die Commits beider Seiten sind da, kein Konfliktmarker ist übrig. Erst dann pusht es.
Alles, was dahinter zurückbleibt, wird rückgängig gemacht: Der Rebase wird abgebrochen, dein Branch und deine uncommitteten Änderungen kehren so zurück, wie sie waren, und Earkeep zeigt dir, was der Agent gesagt hat. Der Agent ist dein eigenes Werkzeug mit deinem eigenen Schlüssel, was er liest, geht also dorthin, wohin dieser Agent normalerweise sendet.
Schlägt ein Push fehl, erfährst du es
Ein Fehler erscheint über dem Transkript in klaren Worten (das Remote hat deinen Schlüssel abgewiesen, der Host war nicht erreichbar, ein Konflikt braucht dich), darunter die Originalmeldung von git. Earkeep versucht es alle fünf Minuten erneut, sodass der Push durchgeht, sobald die Ursache behoben ist.
Siehe auch
- Privat von Grund auf: die Dateien, die hier committet werden.
- Agenten und MCP: die Agenten, die deine Protokolle schreiben und deine Konflikte lösen.
- PKM für Entwickler: Notizen als Git-Repository.
- Das LLM-Wiki: was aus einem versionierten Ordner voller Meetings wird.
Häufig gestellte Fragen
Braucht Earkeep ein Git-Repository, um zu funktionieren?
Nein. Ohne eines liegen die Transkripte als einfache Dateien in einem Ordner; mit einem committet Earkeep sie zusätzlich, und das lässt sich abschalten.
Committet es auch meine anderen Dateien?
Nein. Jeder Commit enthält die Transkriptdatei eines Tages und sonst nichts; was du selbst gestaged hast, bleibt außen vor.
Verlassen meine Transkripte mein Gerät?
Nur zu den Remotes, die du selbst eingerichtet hast. Schaltest du das Pushen aus, bleibt jeder Commit auf deinem Gerät.
Synchronisiert es meine Meetings zwischen Computern?
Nein. Earkeep committet und pusht, und pullt nur, um pushen zu können. Was auf deine anderen Rechner gelangt, hängt von deinem Repository ab.
Was, wenn ich am Tagesende auf einem Feature-Branch bin?
Dort wird nichts committet. Settings zeigt, dass der Tag wartet, und der Commit erfolgt, sobald du wieder auf einem erlaubten Branch bist.
Wird ein Meeting committet, wenn es beginnt?
Nein. Es wird committet, wenn es endet oder du es änderst, nicht solange sein Transkript noch geschrieben wird.
Was passiert, wenn der Konflikt-Agent es falsch macht?
Earkeep prüft das Ergebnis, bevor es pusht. Stimmt etwas nicht, wird der Rebase abgebrochen, dein Repository kehrt in den früheren Zustand zurück, und du siehst, warum.
Kann ich meine eigenen Commit-Nachrichten schreiben?
Ja: eine Vorlage pro Ereignis in Settings → Storage & Git, mit {date} und {meeting} als Platzhaltern.
Eine Historie jedes Meetings, in einem Repository, das dir gehört
14 Tage voll nutzbar, kein Konto nötig.