Ich wollte eine Schleife bauen, in der eine KI Code schreibt und in die Versionsverwaltung pusht, ich ihn reviewe, und der Agent diese Reviews liest und darauf reagiert. Gerrit fiel mir dabei ein: ein Code-Review-Tool auf Basis von Git, das pro Commit reviewt statt pro Pull Request. Dieses commit-zentrierte Modell ist ungewohnt, und ich wollte es ausprobieren.
Ehrliches Fazit vorweg: Die Agenten-Schleife wurde dadurch für mich nicht spürbar runder. Aber es hat Spaß gemacht, das aufzusetzen, und unten steht die kleinste Variante, bei der ich gelandet bin.
Gerrit in Docker starten
Ein Container, zwei Ports: die Web-UI auf 8080 und SSH auf 29418.
docker run -ti -p 8080:8080 -p 29418:29418 gerritcodereview/gerritSSH-Key hinzufügen
Die REST-API nimmt einen Public Key direkt entgegen:
curl -u admin:secret \ -X POST \ -d '{"ssh_public_key": "'"$(cat ~/.ssh/id_rsa.pub)"'"}' \ http://localhost:8080/a/accounts/admin/sshkeysBei mir hat das nicht funktioniert, also trage den Key stattdessen von Hand unter
http://localhost:8080/#/settings/ssh-keys ein.
Projekt anlegen
ssh -p 29418 admin@localhost gerrit create-project vibecode --branch mainLegt ein Projekt namens vibecode mit einem Standard-Branch main an.
Über SSH klonen
git clone ssh://admin@localhost:29418/vibecodecommit-msg-Hook installieren
Gerrit identifiziert eine Änderung über eine Change-Id-Zeile in der
Commit-Nachricht. Der commit-msg-Hook fügt sie automatisch hinzu.
curl -Lo `git rev-parse --git-dir`/hooks/commit-msg http://localhost:8080/tools/hooks/commit-msg && chmod +x `git rev-parse --git-dir`/hooks/commit-msgCommit zum Review pushen
Der entscheidende Refspec ist refs/for/main - er leitet den Push in ein Review
statt direkt auf den Branch.
git push origin main:refs/for/mainDas Review zurück an den Agenten geben
Frage eine Änderung samt Kommentaren über SSH ab, gib die Ausgabe an deinen Coding-Agenten und lass ihn die Verbesserungen selbst herausarbeiten.
ssh -p 29418 admin@localhost gerrit query --comments --current-patch-set 27eac4ed28b66d45e0ad30e795dda14ba70925d3Genau das ist der Kern: Das Review wird zu strukturiertem Text, den ein Agent lesen und beantworten kann. Gerrit war nicht der Durchbruch, den ich erhofft hatte, aber die Idee "Review als Text, den der Agent konsumiert" lohnt sich unabhängig vom darunterliegenden Tool.