Aufräumen und Codequatsch mit Claude

Code auf einer Webseite zu Fuß zu maintainen ist völliger Kokolores. Wusste ich, hatte ich aber mit Nachdruck ignoriert. Ergo hatte ich das bis jetzt, vielleicht auch, weil mir niemand erzählt hat, wie blöd ich bin, in mehreren Iterationen meiner Toolsammlung eben so gemacht. Weil ich „frei“ nehmen muss, ist Hausputz angesagt. War längst überfällig Und ich weiß auch nicht, ob genau dieser „Mülleimer“ der richtige für das angestaubte Zeug ist. Ich werde es herausfinden…

tl;dr: Dieser Beitrag könnte als unbezahlte Werbung verstanden werden, ist jedoch ein klassischer Erfahrungsbericht von jemanden, der absolut keinen Plan hat und glaubt, er könne das schamlos ventilieren

Da Python nicht meine „Muttersprache“ ist und meine „Aruba Instant Python Tools“ aus Zeiten vor KI-Agenten kommen, bin ich am Anfang eher gestolpert denn gelaufen. Wesentlich später – etwa ab Tool-Iteration 1.6, glaube ich – habe ich mich mit Gemini drangemacht, als diese Google-KI noch ein „Kontextfenster“ hatte und nicht sofort mit völlig bescheuerten Halluzinationen anfing. Antigravity kam erst zum Schluss dran.

Meiner Meinung nach war der Code aus Antigravity eher extrem schlampig. Weder sicher noch in irgendeiner Form dergestalt nutzbar, dass sich daran bei Nutzung niemand die Finger verbrennt. Mangels Vertrauen habe ich mir immer wieder codex geschnappt, um Lücken aufzuspüren. Was soll ich sagen, es gab derer ’ne Menge.

Ich hatte von einigen immer wieder die Empfehlung bekommen, es mit Claude zu versuchen. Da die Claude Code jetzt in deren App integriert haben, war der Fall eigentlich klar. Es kam, wie es kommen musste: Ich hatte mir zuletzt Claude als Codereviewer zugelegt und…

… bin ab ins Rabbithole. Und kam dann da für mehrere Stunden nicht mehr raus. Teilweise den Code sogar komplett auf links gedreht. Mir gefällt dabei die Art von Claude, „mit mir“ umzugehen. Claude will nicht auf Teufel komm raus „gefallen“, testet vieles vorab, erklärt extrem gut und ist bei allem generell sehr transparent. Transparenz ist sowieso so eine Bezeichnung, von der Gemini gefühlt noch nie was gehört hat.

Ich sehe alle Änderungen und ich kann sie nachvollziehen. Claude hält sich (bislang) an meine Baseprompts und Guidelines, selbst wenn ich in der claude.md auf eine gemini.md verweise oder wenn ich ständig im Text selbst gegen selbige verstoße. Claude weist mich immer wieder drauf hin, etwa sinngemäß wie „Hier steht geschrieben, dass wir das so nicht machen“.

Ein Baseprompt ist auch was, was Gemini in allen aktuellen Iterationen auch in Antigravity wirklich sehr gerne umgeht, besonders wenn es aus lauter Faulheit abkürzen will (z.B. nicht, wie angewiesen, nach Windows/ssh stdin verwendet, stattdessen rüberkopieren und remote ausführen will, trotz Verbot), stets der Meinung, ich würde das Ding so machen lassen. Ergo hätte ich mich auch mit einer Litfaßsäule unterhalten können, denn irgendwem vorher die Spielregeln zu erklären.

Dazu kommt, dass ich die Desktop App gar nicht brauche. Wenn gewünscht, kann Claude direkt in ein Git schreiben, es reicht ein simpler Webchat. Da mir das dann doch zwei, drei Gramm zu unheimlich ist, nutze ich bislang die Desktop App. Die meisten Repos von mir haben draußen ja auch nix zu suchen. Und deren App (leider Electron) bedient sich ähnlich wie der VS-Code Fork Antigravity.

Wenn ich mir jetzt mal ansehe, wie viel Zeit ich für ein paar Zeilen Code noch vor zwei, drei Jahren gebraucht habe, und wo wir heute stehen, wird mir – ehrlich gesagt – echt ganz anders. Das ist alles echt n‘ bisschen sehr schnell. Selbst das Testen ist in Claude virtualisiert. Nach jeder Version testet das Ding gegen selbst entwickelte Testszenarien. Für meine Python Tools hätte ich deshalb heute vielleicht nur ein, vielleicht zweimal einen einzigen Aruba-AP benötigt und nicht permanent für gefühlt jede Codezeile. Ich wäre mit allem, was ich brauche, in höchstens einer Woche fertig.

Auf der einen Seite ärgerlich für die zu viel investierte Zeit, auf der anderen Seite trotzdem sinnvoll, ich will nicht ausschließen, dass ich in der Zeit wenigstens etwas gelernt hätte. Die heutige Performance dieses Agenten ist für mich – und wir sprechen bislang noch nicht mal ansatzweise über Skills oder Konnektoren von dem Ding, absolut unerreicht.

Alles in allem kann ich mit der typischen Claude Desktop-App jetzt erstmal doppelt bis dreimal so schnell Code generieren, wie mit Antigravity. Und vor allem verlässlich. Ich befürchte, dass ich jetzt monatlich beim Drogendealer fürs Vibecoding bin. Sonnet reicht mir auch erstmal, wenigstens für die meisten Aufgaben.

Mein uraltes Maintenance-Script – „Mal eben „umgesetzt in eine GNOME-Extension (Link)

Intern benutze ich ein Gitea, dort landen auch meine Memory-Files und die Base-Prompts zu all meinen Projekten. Erst wenn ich mit einer Iteration durch bin, fliegt das Ganze auch nach GitHub. Pro Projekt habe ich also zwei Gits. Das gefällt mir so noch nicht so ganz, aber ich glaube, das ist verschmerzbar. Ich habe ja auch sonst so keine Ahnung, wie man das tatsächlich so macht.

Ob ich GitHub jetzt mag oder nicht, habe ich noch nicht ganz für mich geklärt. In meiner Blase gibt es eine ganze Menge sehr berechtigte Kritik. Und ich kann ja auch, mangels Zeit, keine Issue-Tracker bedienen. Deshalb habe ich sie erstmal abgeschaltet und eine riiieeesige Warnmeldung in jedes Projekt-Readme geschrieben, dass das hier ein privater Spielplatz ist.

Meine alten „Aruba Instant Python Tools“ sind also jetzt in Version 2.0.x verfügbar, auf GitHub (Link). Gleich dazu gibts auch ein bisschen von meinem Dachschaden, so GNOME-Extensions. Da stehe ich total drauf. Falls ihr sachdienliche Hinweise zur Thematik Sicherheit habt, meldet euch bitte gerne bei mir – ganz konservativ, per E-Mail.

Also befindet sich da oben rechts eben ein Link zu einem uralten Github-Konto von mir, wo ich auch mal eben feucht durchgewischt habe. In der Hoffnung, dass ich mich vor’m Rest der Welt nicht blamiere (wie sonst üblich). Habe ich erwähnt, dass ich keinen Plan habe? Ich glaube, ja…

Titelbild KI-generiert