Forgejo x Claude Code
Gestern habe ich versucht, mein Forgejo mit Claude Code zu verbinden. Ich hatte es mir ungefähr so vorgestellt, wie der Workflow mit Github Copilot: Ich erstelle ein Issue in Forgejo, assigne es einem Claude-User und das Issue wird dann gelöst, ein Merge Request wird erstellt und fertig.
Ich hab angefangen, das so zu bauen, mit einem Script, dass regelmäßig guckt, ob es neue Issues gibt und dann Claude Code startet, das entsprechend angewiesen ist, das Issue zu lesen, das Repo zu clonen, alles zu bauen, es zu pushen und am Ende einen Merge Request zu erstellen. Für einen sehr einfachen Task funktionierte das auch gut, aber natürlich fehlt dabei auch die ganze Diskussion, wo er erstmal einen Plan macht, den man sich angucken kann. Oder Nachfragen stellt. Wahrscheinlich könnte man das alles noch rauslesen, als Kommentare in das Issue pasten und auf meine Antwort warten, aber so wichtig war es mir auch nicht, sodass mich entschloss, diesen Ansatz nicht weiter zu verfolgen. Soll das doch jemand anderes bauen.

So ganz aufgeben wollte ich den Workflow allerdings nicht. Ich baute das also alles etwas um, behielt die ganzen Skripte und Skills um mit Forgejo zu interagieren und machte es wieder etwas interaktiver. Kann nun weiter meine Issues in Forgejo pflegen und ausformulieren und wenn ich Lust habe, kann ich mich auch von unterwegs auf meinem Server einloggen und kurz über claude-jo [link-zum-issue] lösen lassen. Ist zwar ein bisschen manuell aber dafür auch interaktiv. Und da es im Docker-Container läuft, kann ich es auch problemlos mit --dangerously-skip-permissions laufen lassen und muss nicht alle drei Sekunden etwas erlauben.
Ich habe den Code mal hochgeladen, das spart immerhin einen Prompt kostbarer Tokens.