Es wurde eine überarbeitete Pipeline mit sieben spezialisierten Agenten zur Automatisierung der Softwareentwicklung vorgestellt. Kern der neuen Architektur ist eine klare Trennung der Aufgaben: von der Recherche über die Implementierung bis hin zu mehrstufigen Reviews. Ein zentraler Aspekt ist die Integration von Test-Driven-Development (TDD), um Regressionen effektiv abzudecken und die Qualität des generierten Codes zu sichern. Ziel ist es, den menschlichen Aufwand zu minimieren und einen autonomen Entwicklungsprozess zu etablieren.
Begrüßung und Projektübersicht
00:00:0000:00:00 Oh, sind wir schon live? Haben wir das hingekriegt, dass es direkt funktioniert? Mensch, das war ja super. Soweit ich sehen kann, sieht das super aus. Hallo zusammen, einen wundervollen guten Nachmittag. Ja, das hat geklappt, schön. Ich brauche erstmal ganz kurz unseren Chat wieder.
00:00:26 Der Spawn leider immer erst danach, das ist ein bisschen ärgerlich. Jetzt so. Schreibt gerne, wenn das bei euch alles soweit funktioniert. Ich sehe das natürlich. Darum geht es ja immerhin. Und...
00:00:44 Cool, perfekt. Alrighties. Hallo zusammen. Hi. Freut mich. Ja, sehr gut. Das heißt, ich weiß, es funktioniert. Ja, es tut mir erst mal sehr, sehr leid, dass ich so lange nicht da war. Ich versuche momentan irgendwie 50 verschiedene Verantwortlichkeiten hin und her zu jonglieren.
00:01:02 Aber genau, ja, ihr werdet vieles davon wahrscheinlich noch kennenlernen, beziehungsweise manches davon habt ihr auch schon kennengelernt. Genau, das Video letzte Woche hat mich ein bisschen aus der Bahn geworfen, da habe ich drei Tage dran gearbeitet, geschrieben, dreieinhalb Tage sogar. Und ja, das war dann am Ende für die Tonne. Ich will heute mit euch über was reden, und zwar, ich baue gerade an zwei Tools. Jetzt lasst mich kurz ausholen. Und zwar, ähm...
00:01:31 erstmal muss der hier noch ganz kurz fertig laufen der agent hier der macht gerade noch dinge was heißt einer das machen 50 stück gleichzeitig was sagt gut das machen wir auf dem server ok perfekt dann lasst uns das auf dem server laufen lassen
Entwicklung von Autonom-Tools
00:01:5900:01:59 Genau, was machen wir? Also folgendes. Wir hatten schon ein paar Projekte angefangen. Wir haben die Bootstrap Academy Version 2 angefangen. Wir haben The DMZ angefangen. Und ich habe von mir selber noch ein paar Projekte, die ich einfach so nebenbei laufen lasse. Wir hatten ja auch mal über so eine Gesundheits-App gesprochen. Ähm, Claude Mythos. Ich mache nächste Woche ein richtiges Video drüber. Das ist ein richtiger Deep Dive. Ich habe die ersten paar Paper und die ersten paar Sachen gelesen. Aber eben noch nicht alles davon.
00:02:28 Also nur den halben Bericht quasi gelesen, der relevant wäre. Dementsprechend muss ich da nochmal ein bisschen drüber lesen. Deswegen kann ich dir dazu noch gar nicht so genau was sagen. Was ich machen möchte ist folgendes. Wir haben schon relativ viele Projekte. Ich habe diese Gesundheits-App angefangen, die Bootstrap, The DMZ und ich habe noch drei interne Projekte quasi, beziehungsweise Morphi, der kennt ihr ja. Und die Frage, die ich mir stelle gerade ist, beziehungsweise gestellt habe,
00:02:56 Was ist das? API Kosten. Starting at 150 Dollar pro Million Tokens. Was? Warum? Ach du Scheiße, warte mal. Was? Hä, wieso ist jetzt auf einmal Claude so teuer geworden? Mid-Screen, das ist der hier. Das hat mir gerade jemand geschickt. Claude Opus 4.6 Fast. Released am 7.4. Ähm, warum ist das so teuer? Hä, das ist doch fast. Die Fast-Versionen sind doch normalerweise immer günstiger.
00:03:46 Der ist ja komplett utopisch. Das kann sich ja niemand leisten. Jesus. Muss irgendwie falsch sein. Oder sie haben halt intern irgendwas bekommen. Ähm, nee. Lassen wir mal. Machen wir nicht. Ich muss hier einmal ganz kurz das hier stoppen. Das frisst zu viel Leistung. Das kann ich gerade nicht erlauben. Das kann ich auch nicht erlauben. Der darf auch sterben. Die?
00:04:18 Ah, die Orphans, okay. So, wenn ich lagge, einer von den Agents läuft noch. Ich habe ein paar Agents gleichzeitig am Laufen. Fast ist immer teurer. Ah, gut, fair. Weil es halt, ja, stimmt, Fast nicht die schnelle Version Mini, sondern Fast, ja. Wenn du es ganz eilig hast. Nee, Mann, machen wir nicht. Okay, also, die Idee ist, ähm...
00:04:45 The DMZ lief das regulär oder ist das getilt? Also es läuft einfach nebenbei. So, jetzt folgendes. Ich habe folgendes schon gemacht bei dem ganzen Projekt. Also bei The DMZ haben wir das angefangen. Ich glaube, ich brauche dazu ein Paint-Krita. Wir malen heute ein bisschen. Weil ich brauche euch zum Denken. Ich habe mir was vorgenommen für heute.
00:05:13 Ein neues Imagebild, das hört sich wundervoll an. So, kriegen wir das hin. Wir machen mal wieder die berühmten Morpheus Malt Sessions. So, perfekt. Ist zwar ein fetter, aber ist egal. Das kriegen wir hin. Also, was wir gemacht hatten ist, bislang hatten wir ja schon The DMZ zum Beispiel mit, ich hol's mal kurz hier runter.
00:05:39 hier mit arbeiten lassen. Ihr seht gleich warum ich hier 567 offene Issues habe, keine Sorge. Und zwar hier. Wir hatten benutzt AutoCreateIssues.sh, das war ein Shell Script, das wir erstellen lassen haben, das haben wir nicht selber erstellt, wo wir quasi sagen können, ey mach das mit Cloud oder mach es mit Codex, Codex habe ich nicht mehr, das ist jetzt ausgelaufen, das Abo, das funktioniert quasi nicht mehr. Oder OpenCode, wo ich das Minimax-Abo habe.
00:06:04 dass wir da quasi permanent neue Issues erstellen lassen. Und es läuft dann einfach durch und nimmt sich quasi aus einem Dokument, was wir mitgeben, einen Milestone und erstellt dann
00:06:21 Und er stellt dann quasi neue Issues dafür. Das haben wir gesehen. Wir hatten auch noch einen Special Milestone, was eigentlich echt miese Code-Qualität ist. Aber 1337 war unser Milestone für, wenn wir Bugs gefunden haben, dann kommen die da drüber. Und dann können wir sagen, okay, nimm mal hier bitte dieses Dokument. Zum Beispiel unsere Requirements-Dokumente, die wir hier in Docs drin hatten. Und da waren ein Haufen, Haufen Dokumente drin. Hier alles Mögliche war definiert. Und dann haben wir gesagt, okay, nimm einfach mal die Dokumente.
00:06:49 und erstellen neue Issues davon. So. Und dann haben wir die einfach mit Auto-Develop laufen lassen, was im Endeffekt nichts anderes tut als, jo, nimm mal einen Research-Agent, zum Beispiel OpenCode, und mach eine Recherche. Schreib die dann als Issue in unseren Issue rein auf GitHub, als Kommentar quasi. Dann spawnen einen Implementierungs-Agent, implementieren das ganze Ding.
00:07:17 Dann zwei Reviewer, einmal Reviewer A, der auf Qualität achtet und Reviewer B, der auf Richtigkeit achtet, glaube ich, oder andersrum. Und dann, wenn die beide sagen, ja passt, dann mach weiter, ansonsten mach normal Implementierung. Und wenn die beiden sagen, jo passt, dann kommt der Finalisierer und sagt, okay, wir pushen das Ganze jetzt, beziehungsweise wir committen und pushen dann. Und das machen wir entweder für einen Issue oder für einen speziellen Issue oder einfach für alle Issues durch.
Probleme mit Code-Qualität und Skalierung
00:07:3800:07:45 beziehungsweise für eine gewisse Anzahl an Issues durch. Und das war soweit in Ordnung, aber ich habe an dem Prozess noch ein bisschen gesessen, weil das alles nicht so gut funktioniert hatte. So, und jetzt werdet ihr wahrscheinlich hier bei den Issues von The DMC, werdet ihr was sehen. Da lief das ganze Tool nämlich schon drüber. Und zwar hier. Ich habe hier ein Audit drüber laufen lassen. Das geht so ein bisschen in die Richtung von dem, was gerade bei Claude Mythos rumgekommen ist.
00:08:12 Claude hat ja jetzt angefangen, neue Security-Schwachstellen zu finden für alles mögliche, ja auch für OpenBSD und alles. Wie gesagt, mache ich noch ein separates Video dazu. Aber ich habe gedacht, beziehungsweise davor hatte ich mir schon gedacht, was, wenn wir einfach tatsächlich mehrere Verantwortlichkeiten übergeben an einen Issue-Finder, der sich den Code durchliest und dann quasi Whitebox alles mal durchliest und überprüft, was da läuft und was gut läuft und was nicht so gut läuft.
00:08:41 Und ihr seht hier die ganzen Labels, die ich anlegen lassen habe, die wirklich, wirklich ordentlich sind. Wir haben hier API Dokumentation, API Edempotency, API Versioning, Request Validation, Response Consistency, also alles nur fürs API Design. Dann haben wir hier Architektur, sowas wie zirkuläre Abhängigkeiten oder Coupling oder Dependency Direction oder Extensibility oder auch sowas hier wie Single Responsibility, was...
00:09:08 mitunter der wichtigste Faktor war, den ich je hatte, sodass der Code nicht nur funktioniert, sondern halt auch qualitativ hochwertig ist. Und heilige Scheiße, ich habe so viele Bugs bekommen, ich habe einige wieder gelöscht, aber die sind wirklich alle ziemlich valide. Ich habe hier zum Beispiel, das sind jetzt alles nur noch Medium Bugs, die High Bugs habe ich glaube ich die meisten sogar schon. Hier haben wir ein High zum Beispiel, Edge Cases. Der ist getaggt als Testing Edge Cases.
00:09:36 Also quasi, dass wir nach Edge-Cases suchen. Und dann hat wirklich ein Agent nur danach gesucht, was ein Edge-Case sein könnte, den wir noch nicht getestet haben. Also zum Beispiel GetLevelFromXP, das ist in der DMZ, produziert eine Infinite-Loop, wenn XP NAN ist. NAN ist ein Edge-Case, ein ganz klassischer. Und den haben wir noch nicht getestet.
00:09:59 Und dann spawns hier quasi ein GitHub-Issue, den wir dann fixen können. Das Problem ist, Issues erstellen funktioniert ziemlich gut. Ich kann das laufen lassen und ich kriege wahnsinnig viele Issues. Und dann hatte ich das nächste Problem. Was mache ich, wenn ich über 1000 offene Issues habe? Also ich meine, wir haben schon 497 hier geschlossen. Dazu, wie wir die geschlossen haben, habe ich sogar schon ein Video gemacht. Das kommt dann, glaube ich, müsste diese Woche noch kommen. Aber es fehlen noch ein paar.
00:10:26 Nämlich mehr als die Hälfte. Einfach, also das ist nicht mal irgendwie jetzt ein Hey, wir wollen die Software erweitern, sondern einfach nur Wartbarkeit. Also, dass die Software einigermaßen funktioniert. Und genau, in wirklich, wirklich vielen verschiedenen Arten das Ganze zu lesen. Also hier so Edge-Cases war jetzt hier relativ viel. Dann haben wir aber sowas wie Pattern-Consistency. Pattern-Consistency, Consistency insgesamt, Code-Quality.
00:10:57 Dann haben wir hier noch mehr. Consistency, Consistency, Duplication, also quasi doppelter Code. Hier 32 mal denselben Code neu geschrieben.
00:11:08 Das war eine Art Master Auditor, der Sachen einfach nur eingetragen hat, genau. Weil es sein bzw. meinen Anforderungen nicht entsprach. Das heißt, der guckt mit genau einer einzigen Brille da drauf, nämlich in dem Fall hier Code Quality Duplication, guckt nur wegen Duplication auf den gesamten Code drauf und wenn er was findet, schreibt er das rein und geht wieder, ist fertig. Und das läuft und läuft und läuft und läuft eben mehrfach. Und ich habe das wirklich auf einige meiner Projekte laufen lassen, auch auf dem Warfare zum Beispiel.
00:11:37 wo wir dann, ich glaube, auch so 100 irgendwas Issues bekommen, die ich natürlich nicht alle bearbeiten kann. Aber ein paar davon musste ich auf jeden Fall bearbeiten, weil die halt ausmachen, wie gut der Code wartbar ist. Und das ist halt genau dieses Problem von wegen AI produziert Garbage-Code und wir können den nicht mal benutzen. Und was ich dann gemacht habe ist, okay, jetzt haben wir richtig viele Issues, die zum Großteil auch wirklich valide sind. Also ich meine, wir kennen das Ding, dass manche von den Issues einfach Quatsch sind.
00:12:07 Aber selbst die muss ich ja identifizieren und dann kann ich die einfach wieder schließen. Und jetzt haben wir hier 23 Seiten Issues, die werde ich nicht alle durchgehen. Und wenn nur die Hälfte von denen, das waren mehr tatsächlich, also das, was hier gefixt wurde, ohne, beziehungsweise mit Code gefixt wurde, war schon deutlich mehr als die Hälfte. Ich glaube, wir hatten das... Ach Quatsch, da wollte ich nicht hin.
00:12:35 Wo ist denn der Commit verlinkt hier? Wir hatten einige, die... Ich glaube, fast alle hatten irgendwie wirklich was, wo man was machen musste dabei. Es war nur eine Handvoll oder sowas, die dann am Ende nicht relevant waren. So, das heißt, wir brauchen jetzt irgendwie was anderes, was wir vernünftig schließen können. Also, wo wir vernünftig wirklich sagen können, okay, wir fixen das jetzt. Hat mir da gerade jemand einen Pull-Request gemacht? Geil. Nice.
00:13:02 Ähm, genau. Jetzt müssen wir halt gucken, wie fixen wir das möglichst autonom, weil wir wollen ja das DMC-Projekt und auch die anderen Projekte so ein bisschen als, hey, wie weit kommen wir, wenn wir das Ganze autonom entwickeln lassen. Ähm, das ist so ein bisschen mein, mein persönliches Ziel, da zu gucken, was geht denn eigentlich und wann geht was genau. Und mit was geht was, da kann ich auch andere KIs einfach draufwerfen. Ich habe ja hier OpenCode als Agent drin. So, ähm, genau, wie filter ich Müll raus, genau. Ähm,
00:13:32 Die Antwort ist ganz einfach. Ich lasse einfach den Agent, den ich hier bei AutoDevelop benutzt habe, den habe ich auch ein bisschen weiterentwickelt, habe ich drüber laufen lassen. Und wenn hier der Research Agent sagt, da musst du nichts machen, dann sagt der Implementer, okay, muss ich nichts machen. Dann sagt der Review, okay, ist nichts gemacht worden, das ist in Ordnung. Und dann sagt der Finalisierer, okay, dann schließe ich den halt einfach. Dementsprechend, die Pipeline an sich funktioniert schon relativ gut. Ich will aber auch den Code für die Sachen haben, wo es wirklich funktioniert.
00:14:01 Und da habe ich jetzt auch dran gesessen. So, und das ist das, was ich heute so richtig mit euch machen möchte. Ich habe angefangen mit dem, was wir hier hatten. Und jetzt müssen wir einmal kurz wieder zu Krita rüber. Jetzt, wo ihr so ein bisschen das Drumherum verstanden habt, was ich meinte. Also, wir haben den Issue. Ich male den jetzt hier einfach mal so als Kasten hin. Das ist unser Issue. Und sagen wir einfach mal GitHub dazu.
00:14:32 Ich kann hier scheinbar nicht richtig schreiben. Also male ich G, H. Das steht für GitHub. So. Der liefert uns ein Issue. Und jetzt kommt hier der Researcher, der R. Und der schreibt uns eine Recherche. Dann kommt der Implementer, I.
00:14:53 Der implementiert das Ganze. Dann kommen die Reviewer. Danach kommen zwei Reviewer. Das war so meine erste Version. R1 und R2. Die beiden Reviewen. Und wenn in Ordnung, dann kommt der Finalisierer. Und dann loopt das Ding wieder hier nach oben.
00:15:24 Das ist das hässlichste Flow Diagramm, was ich jemals gemalt habe. Ist egal, ihr habt ja meine Tonspur dazu. So, das ist quasi mein Flow. Wenn hier die sagen, nee, ist nicht in Ordnung, dann gehen wir zurück zum Implementierer. So, das war so am Anfang das, was ich gemacht habe. Also quasi erstmal den Reviewer, dann den Implementierer, dann zwei Reviews, einmal auf Korrektheit, also dass wirklich der Code keine Regressions erzeugt und nichts kaputt macht. Und einmal den...
00:15:52 den Auditor, dass der Code, den wir geschrieben haben, auch wirklich den Issue löst. Weil es kann ja sein, dass wir einfach mit dem Code, den wir geschrieben haben, halt eine Zeile in den Logs ändern. Und, ähm, naja, das bringt mir relativ wenig, wenn wir in den Logs einfach gar nichts drin haben. Oder halt nur die Logs ändern, aber der Fehler war eigentlich ein Riesending. Also was wir machen, ähm, ist wir prüfen, ob der auch korrekt am Ende... Ups.
00:16:21 ob der auch korrekt den Issue löst. Das heißt, der hier prüft den Issue, der hier prüft die Korrektheit des Codes und wenn die beide sagen, das passt, dann finalisieren wir. So, und was dabei rausgekommen ist, hat einigermaßen funktioniert, aber nur in zwei Fällen und zwar nur für die relativ leichten Issues.
00:16:42 Also wenn du es anstatt wieder nach oben mal in ein anderes KI-Modell schickst, jein. Das Ding war, ich habe hier tatsächlich die Reviews einfach mit reingegeben. Also der Implementer hat dann die Reviews einfach lesen können. Der hat dazu gesagt bekommen, ey, hier schau mal, die Reviews kannst du lesen. Und genau, das ist einfach tatsächlich zusätzlich Information gewesen, sodass er wusste, was er fixen soll. Das war schon mal ein guter Anfang. Was jetzt allerdings...
00:17:10 passiert ist, dass wir dem Implementer ein bisschen viel zugemutet haben, weil der ja sehr, sehr viel machen muss. Und deswegen habe ich mal so überlegt, wie wir im Team gearbeitet haben. Nach der Prüfung nochmal Prüfung durch eine andere KI. Warte kurz, kommt sofort. Was ich also gemacht habe ist, ich mache nochmal eine neue. Könnte ich das in Breitbild haben? Das wäre super hilfreich tatsächlich. Breitbild, so.
00:17:34 Was wir gemacht haben war dann folgendes oder was ich dann versucht habe zu machen, wie gesagt das ganze Ding wird noch open sourced, ich baue das noch gerade aus, so dass wir dann auch wirklich eine Art Software as a Service haben, so dass wir das auch wirklich machen können. Schaffen wir uns nicht haufenweise unsichere Software? Hintergrund, die Tools können ja auch von Anfängern oder auch Coding nutzen, ja auf jeden Fall. Wir schaffen extrem viel.
00:17:59 Unsichere Software. Deswegen versuche ich die Software. Wir schaffen auch wahnsinnig viel Legacy Software. Also Legacy, bevor wir sie überhaupt angefasst haben. Der Code ist ja komplett Bullshit. Ich habe ein Projekt geschrieben, oder schreiben lassen besser gesagt, von Minimax, dem M2.5 Modell war das. Da hatte ich eine Datei, das war das Kernstück von dem ganzen Ding. Die hatte, und das ist jetzt kein Scheiß, 20.000 Zeilen JavaScript Code. 20.000 Zeilen einer Datei. Die war komplett unwartbar. Die konnte man nicht benutzen.
00:18:28 war aber trotzdem das Herzstück von der ganzen Software.
00:18:32 Und da sind noch mehr Dateien da drin gewesen. Wir hatten mehrere Dateien, die noch 5000, 3000, 7000 Zeilen hatten. Das kannst du nicht benutzen. Das ist halt alles mit diesen Agenten, die übel einfach reinscheißen und dann halt nichts mehr drin haben. Und deswegen, was wir jetzt gemacht haben, weil es einfach sonst zu viel geworden wäre für die Agenten. Ich mache ordentlich, also das war halt wirklich nur, ey, mach ein neues Feature, mach ein neues Feature, mach ein neues Feature. Und dabei kommt auch...
00:19:01 wenn wir das entwickeln als Softwareentwickler, wir Menschen, wenn wir keine Zeit haben, um unseren Code zu refactoren, dann kommt da ja was ähnliches bei raus. Ich kenne das von mir, wenn ich mir nur vornehme, ich mache das Projekt, einfach nur, dass es fertig ist, dann mir keine Zeit nehme zum Bessermachen und zum Improven vom Code an sich, dann kommt bei mir auch Spaghetti-Code raus. Und deswegen habe ich angefangen, extra diese Refactoring-Tickets reinzuschreiben, die wir ja schon gerade gesehen haben bei The DMZ.
00:19:30 Hier, die Dinger. Hier, sowas hier zum Beispiel. Audit Testing Edge Cases. Das müsstest du nicht machen, wenn du nicht einfach auf Code-Qualität achten würdest. Oder sowas wie hier Code-Quality Pattern Consistency. Oder generell Code-Quality Consistency. Oder wie gesagt, Single Responsibility ist das groß wichtigste Ding gewesen, was ich überhaupt gefunden habe. Deswegen...
00:19:53 mehr Issues einfach nur auf die Code-Qualität und nicht mehr nur auf die Features geplant, sodass das Ding auch wartbar bleibt. Nicht nur Bugfixes oder Improvements, sondern dann doch wirklich einfach nur Wartbarkeit für uns als Entwickler, beziehungsweise für die KI, die ja auch dann besser dran entwickeln kann. Und was ich dann gemacht habe, ist, wir haben immer noch den Issue, also ich nehme den jetzt einfach mal als gegeben an, der liefert uns quasi die Rohdaten. Da fangen wir sozusagen an.
00:20:22 Und den Researcher, R, da fangen wir auch dann einfach an. Also die passieren einfach immer. Das ist quasi so ein Fundament, das wir haben. Und jetzt habe ich aktuell eine andere Struktur und die habe ich jetzt gerade nochmal überdacht gehabt. Die habe ich jetzt erst seit ein paar Tagen, weil ich da eben auf Probleme gestoßen bin. Sodass wir nicht mehr direkt einfach sagen, ey, Implementierer, mach mal bitte alles. I.
Neue Pipeline-Architektur mit 7 Agenten
00:20:4600:20:46 sondern ich habe jetzt einen Implementierer-Agent, danach habe ich einen Linter und eine Code-Qualität, schön mache, also dass er sich halt an die Gegebenheiten anpasst. Ich nenne ihn jetzt einfach mal Linter, dass er einfach nur schaut, dass alles richtig okay ist. Danach habe ich einen Tester-Agent, also einen Test-Development-Agent, der nur für die Tester ist. Und ich sage dem Implementierer-Agent, ey yo, du machst keine Tests.
00:21:15 Ich sage dem Tester-Agent, ey jo, du änderst keinen Code. Die machen das quasi jeweils nur für sich. Die beiden arbeiten dann zusammen. Und wenn der letzte hier fertig ist, dann kommen nicht eine, sondern fünf Reviews. R1, R2, das wird eng, R3, R4 und R5.
00:21:50 Das ist live so, also du meinst das Projekt ist live? Also wir sind auf jeden Fall gerade live, aber das Projekt ist so noch nicht ganz live. Das ist Work in progress. Das ist mein Denken, wo ich quasi euer Feedback brauche dafür gerade. Müssten die Reviewer nicht ein anderes LLM sein als das Coda LLM? Ne, tatsächlich nicht. Das ist das Tolle dabei, weil die LLMs starten einfach immer mit einem Blankface. Die wissen nicht, was davor passiert ist. Deswegen kannst du sagen, ey, mach mal.
00:22:16 Und das hilft so ein bisschen, dass die einfach blank starten und dann einfach mit einem anderen Dings drauf gucken, mit einem anderen Blickwinkel drauf gucken können. Lach nicht, ich programmiere mittlerweile per Grafik. Funktioniert das? Vorgaben, Verdrahtung, Logik, sogar wie ich mir das Menü wünsche. Gut, UI, UX kann ich mir gut vorstellen, dass das gut klappt. Das kann ich mir gut vorstellen.
00:22:39 Von Sherlock? Nee, Sherlock habe ich noch nicht gehört, tatsächlich. Ich habe mich in den letzten paar Tagen da drin ein bisschen, oder am Wochenende, während Ostern, habe ich mich da drin verloren. So, also jetzt habe ich hier fünf Reviewer-Agents. Der eine prüft, scheiße, ich weiß es nicht auswendig, lasst mich kurz nachfragen, ich weiß es wirklich nicht auswendig. Lasst mich KI fragen, wie KI coded. In was für einer fucking Welt leben wir eigentlich? Ich bring die immer durcheinander.
00:23:21 Lasst mich da einmal eben gucken, dass ich da euch nicht murks erzähle. Ich habe sie nicht Reviewer 1 bis 5 genannt, sondern ich habe sie Reviewer A bis E genannt.
00:23:36 Jetzt hier, genau, richtig. Und danach, also erstmal, ich mache hier einmal ganz kurz, danach kommt der Controller-Agent, ein neues Ding, Controller, der uns entscheidet, was davon man nochmal neu machen muss, weil die Reviewer stürzen gelegentlich auch mal ab. Das passiert bei den günstigeren KI-Modellen, dass ich da einfach mal keine Antwort bekomme, also bei Minimax zum Beispiel. Kann es erst mal vorkommen, dass ich...
00:24:04 nichts zurückbekommen, dann sagt der Controller einfach, ey, wir lassen den hier nochmal neu laufen. Die schreiben alle in eine Datei einfach rein. Also quasi, die schreiben in Logs, in ein Logs-Directory für genau den Issue, also zum Beispiel Issue 128, schreiben die ihr Log für Reviewer A Bodenstrich 1, also quasi die erste Review. So. Reviewer A macht Correctness, also quasi, ob der Code korrekt ist.
00:24:35 Wie schreibe ich das? Ich probiere es mal hier mit. Kriegen wir das hin? Correctness. Hallo? Ah ja, perfekt. Schön, schon mal. So, der macht Correctness. Reviewer 2 macht Issue Coverage. Also quasi, ob der Issue gelöst wird. Das sind die beiden, die wir davor schon hatten quasi.
00:25:08 Ob der issue korrekt gelöst wird nicht dass einfach der agent sagen kann ich mache einfach leeren code lehrer code ist ja immer korrekt da sind ja keine neuen probleme reingekommen Und dann haben wir reviewer 3
00:25:24 Der schaut uns speziell nach Security, ob da zum Beispiel irgendwelche Injection Attacks, Hardcoded Secrets, Cross-Site Scripting, irgendwelche Evaluationen oder Dependency Vulnerabilities, ob irgendwas neu dazugekommen ist, damit wir nicht einen Haufen, Haufen unsicheren Code bei uns bekommen.
00:25:43 Also ich meine, klar können wir das dann auch finden mit dem anderen Ding, was Probleme finden, aber ich will ja keine neuen Reihe haben. So, der dritte macht Tests, also Test Coverage und Test Quality. Der macht beides. Der überprüft, ob die Tests sowohl, nur die neuen, also nur die neuen Komponenten korrekt und gut und vollständig getestet werden. Und der letzte...
00:26:10 macht architecture und design das ist zu eng so die review quasi quasi alle verschiedene aspekte davon und das geile ist dass das perfekte hier dran ist einfach ich kann ja diese reviewer hier parallel ausführen das heißt die laufen alle gleichzeitig so weil speed ist auch noch so eine sache kommen wir gleich noch dazu
00:26:43 Ich muss hierher. So, die laufen alle gleichzeitig und produzieren alle jeweils nur eine einzige Log-Datei. Ich kann noch Pin und ist leer. Warum nicht? Background. So, dann halt nicht Pin-Lehr. So.
00:27:00 Die produzieren alle eine Logdatei und wenn diese Logdatei da ist, sind sie fertig. Die müssen ja nichts am Code ändern. Und wenn ich alle fünf Logs oder alle fünf Reviews habe, dann geht es zurück in den Controller. Der Controller entscheidet, starten wir nochmal einen von den Review neu. Der Controller selber codet nicht. Oder starten wir den Implementierer nochmal neu. Oder starten wir den Linter nochmal neu oder den Tester nochmal neu. Und wenn alle fünf sagen, jo passt, dann...
00:27:29 machen wir den finalisieren f wie vorhin auch der sagt dann einfach passt wir committen und wir pushen wir oft machen bei dir die modelle nicht genau das was sie sollen bei meinen versuchen werden zum beispiel oft ein label nicht zu issue hinzugefügt obwohl das in der anleitung eigentlich drin stand das ding ist die die schreiben keine issues hier also die lesen wirklich einfach nur den issue und machen sonst nichts und das funktioniert eigentlich in den allermeisten fällen relativ gut
00:28:02 lohnt es sich für security beispielsweise auch direkt zwei laufen zu lassen also bei wichtigen themen weil ich spawne manchmal mehrere review und einer findet was und einer ein anderer findet findet nichts genau das sind reine prüf pipelines genau man kann hier das ganze theoretisch so hart hoch skalieren wie man möchte vor allem bei den reviewern kann man ja nicht nur ein sondern halt wenn ihr wollt 100 stück reinschreiben das ist halt dass das krasse dabei
00:28:28 Also das Ganze ist jetzt aktuell wirklich, das ist aus diesem ersten Shell-Skript gewachsen.
00:28:35 Wo sind wir? Moment, ich bin verwirrt. Hier. Am Anfang hatte ich buchstäblich nur genau dieses eine AutoDevelop.sh-Skript. Nichts anderes hatte ich. Und aus dem raus ist dieses Shell-Projekt da gewachsen. Das wir jetzt hier benutzen, dieses riesige, komplexe Flow-Diagramm-Teil. Und theoretisch habe ich mir überlegt, eigentlich für Test-Driven-Development würde man es ja theoretisch andersrum machen. Das ist mir jetzt gerade vorhin gekommen.
00:29:04 Eigentlich müsste man ja, also ich würde jetzt das mal kurz speichern. Können wir hier irgendwie so eine zweite Layer aufbauen? Egal. Ich wechsle mal die Farbe zu dem, was ich eigentlich haben wollen würde. Also eigentlich würde ich das gerne hier vertauschen. Also dass wir, warte mal, nee nicht mal. Die Tests müssen ja auch gelintet werden. Eigentlich will ich, dass die Tests zuerst entwickelt werden.
Fokus auf Test-Driven-Development (TDD)
00:29:3400:29:34 Als erstes, dann der Implementierer als zweites und dann der Linter als drittes. Oder? Meint eigentlich Issue in GitLab mit einem Label taggen, zum Beispiel Reviewed Label. Hatte versucht, die... Gut, bei mir ist einfach so, wenn ich quasi eine Review finde, dann überspringt er die. Und die hier müssten skalierbar sein. Mit einer Custom Anweisung, also quasi einer Custom Domäne. Das ist eine gute Idee. Danke dafür.
00:30:09 Weil die kann man theoretisch hoch skalieren, je nachdem wie wichtig einem ein Issue ist, kann man sagen, okay, ich wähl's hier für meinen...
00:30:22 Für diesen einen wichtigen Use Case, also in dem Prototyp ist es mir relativ egal, ob jetzt irgendwie vielleicht irgendwas davon nicht super geil ist. Aber Reviewer 1 und 2 sollten wahrscheinlich trotzdem drin sein. Aber dass man das hochskalieren kann, dass man sagen kann, okay, ich hätte gerne nicht nur 5 Reviewer, sondern halt 20. Weil die kann ich extrem gut parallelisieren. Der juckt mich null, wie viele ich drin habe. Die laufen gleichzeitig durch. Klar, die verbrauchen API-Tokens.
00:30:48 kommt da mega drauf an, was ihr für einen Tarif habt, aber bei den günstigen Tarifen ist das jetzt nicht wirklich teuer. Und am Ende kann man trotzdem dann einfach sagen, okay, mit dem Feedback spawnen nochmal den Implementierer. Das kann dann bei Production Sachen, kann das schon echt was ersparen. Weil, was mir aufgefallen ist, also Claude zum Beispiel, kommt fast immer im ersten Anlauf durch alle Reviewer, oder zumindest im zweiten oder dritten Anlauf durch alle Reviewer durch. Ich habe jetzt allerdings zwei, drei Fälle gehabt,
00:31:16 wo ich nicht durchgekommen bin, wo es quasi gesagt hätte, okay, hier haben die Reviewer sagen, äh, einer von den Reviewer und sagt, nö. Warte, lass mich nachgucken. Das war im, welchem Reviewer? Bist tatsächlich schon bei Versuch 7 gewesen. Also grundsätzlich, ich hab das Ganze natürlich auch ein bisschen limitiert. Das heißt, man kann nicht mehr als 10 Versuche brauchen, um hier wieder zurückzukommen. Dann gilt der Issue einfach als nicht lösbar und dann muss ich von Hand ran. Ähm.
00:31:54 Wir haben Regression Detection drin, wenn quasi neue Tests fehlen. Die sind einfach hardcoded. Also quasi, wenn ein Test fehlt, der davor nicht gefailt ist, dann gilt es auch als, jo, reicht nicht oder wird nicht geschafft. Also so quasi noch ein paar Extras drin, die alle so nach und nach gewachsen sind. Ne, tatsächlich, die Reviewer haben alle gesagt, es ist in Ordnung. Das ist das Verrückte dabei.
00:32:29 Ja, also ich liess kurz vor, mir passiert es mit Claude Sonnet Opus und GBT 5.3, 5.4 sehr oft, dass Reviewers etwas finden und dann aber auch fixen, aber dann bei der nächsten Iteration finden sie wieder was Neues, was sie bemängeln. Das, wie gesagt, das ist ja auch so, also das passiert schon regelmäßig, dass dann irgendwie Correctness sagt, ey, das musst du fixen, dann macht er das und in dem nächsten Anlauf findet er dann nochmal was, was gefixt werden muss und dann macht er das eben nochmal.
00:33:02 Das ist einfach nur tatsächlich, um das zu reduzieren. Und dadurch habe ich quasi, also für Production muss ich natürlich trotzdem nochmal selber drüber gucken, dass alles wirklich am Ende läuft. Aber ich habe weniger, was ich dann nochmal bemängeln muss. Das hier wird eine Tokenverbrennerbombe. Das ist ein, also das ist halt, das kann man einstellen, wie viel man das möchte. Ziel ist ja, alle Probleme zu finden und zu fixen. Genau.
00:33:32 Nutzt du Skills, um den Agenten bestimmte Abläufe beizubringen? Nee, tatsächlich ist das ein Shell-Script. Also das läuft alles komplett ferngesteuert. Ich bin nicht in Cloud-Code bei dem Ding hier drin. Also ich lasse das einfach laufen. Das ist wirklich ein Shell-Script, das ich starte und dann läuft das im Hintergrund. Die kennen einander nicht. Ich kann nicht mit denen live interagieren. Die machen einfach tatsächlich.
00:33:56 Weil, also das ist jetzt auch ein Thema für das Video, was wir diese Woche machen, dass ihr im besten Fall morgen schon bekommt, heute ist Donnerstag, dass wir Menschen einfach nicht für sowas gemacht sind, dass wir permanent einfach aufpassen, dass nichts schief geht. Und deswegen ist das so ein bisschen meine Herangehensweise, dass ich nicht komplett abstumpfe, sondern selber noch irgendwie was dran denken kann, beziehungsweise das, was ich nicht, was ich aufpassen müsste, will ich halt nicht aufpassen. Ich will nicht warten auf den Agenten.
00:34:27 Ich bin aktuell bei Claude Code für die schweren Sachen. Ja, genau. Und ich benutze halt Open Code mit Minimax, weil es halt ein saugutes Angebot ist, beziehungsweise recht günstig ist. Ich habe mir da ein recht starkes Abo geholt. Das Ding ist jetzt nicht das stärkste, aber es ist halt einfach günstig. Ich kriege alle fünf Stunden meine vollen Credits wieder voll und gelegentlich fällt es aus, aber es ist halt sehr viel günstiger. Deswegen das. Das 20 Euro Gemini-Abo ist schlechter geworden.
00:35:01 Macht Dummheitsfehler, ja, ist mir auch aufgefallen. Ich glaube, das liegt am Systemprompt. Ich weiß nicht genau, was da los ist, aber ich habe das Gefühl, auch Claude Opus 4.6 ist wieder ein bisschen schlechter geworden, weil sie wieder was am Systemprompt schrauben mussten, damit es halt nicht angegriffen wird. Das ist echt so eine Krankheit von diesen KI-Modellen. Dann wird das nächste wieder halt übel stark und dann wird es wieder über die Zeit ein bisschen schlechter. Das ist echt mies.
00:35:31 Ich habe bei Minimax das M2.7, jetzt seit es draußen ist, habe ich das quasi in Benutzung. Beziehungsweise das M2.7 Highspeed sogar, damit es noch ein bisschen schneller geht. Okay. Also was ich mir noch überlegt hatte ist, habt ihr hierzu noch...
Modell-Auswahl und Kostenoptimierung
00:35:5100:35:51 noch Ideen, was man da machen kann. Also ich meine, klar, natürlich kann man die Reviewer irgendwie noch aufteilen, sodass die möglichst im ersten Anlauf alles finden. Aber manchmal sind die Reviewer halt auch einfach stuck. Und dann komme ich einfach nicht vorwärts. Das Problem ist, dass ich aber trotzdem natürlich guten Code haben möchte.
00:36:10 Deswegen, ich weiß nicht genau, ob ich den Prozess noch irgendwie verbessern kann. Und da wollte ich halt mal wissen, wie ihr wirklich bei euch an euren Projekten arbeitet, ob ihr da auch irgendwie sowas habt. Weil im Grunde ist es ja, also wenn wir was entwickeln, ist es ja so ähnlich wie das, was wir hier machen. Also wir suchen einen Bug. Lass mich das noch in einer anderen Farbe machen. Und ich will das Ganze auch umschreiben, dass es kein Shell-Skript mehr ist, sondern dass es halt wirklich autonom läuft, vernünftig.
00:36:38 mit beiden am besten damit ich das halt selber auch besser warten kann doku schritt das ist fair du die ich ganz vergessen scheiße ist gut danke doku
00:37:00 Also was ich normalerweise immer gemacht habe, war hier eben die Recherche, die habe ich quasi immer als Bugfinden drin gehabt. Dann habe ich eigentlich angefangen, Tests zu entwickeln. Das hier ist organisch gewachsen. Aus einem Implement daraus sind halt diese drei Schritte entstanden. Und der Implementer startet einfach als erstes. Aber normalerweise habe ich mit Test Driven Development gearbeitet. Das heißt, der hier kam als erstes, deswegen will ich den auch vorziehen. Dann kam der...
00:37:27 Dann kommt das Implementieren und dann kann man halt so Sachen wie Lin-Checks und überprüfen, ob alles in Ordnung ist. Und dann halt einfach mal formatieren und sowas. Und dann macht man ja normalerweise sowas wie Vier-Augen-Prinzip. Das heißt, jemand anders guckt drüber, ob die Lösung vielleicht nicht überkomplex ist oder ein Komplexitäts-Reviewer. Oh, das wäre nicht schlecht. Ich bin auch theoretisch bei Twitch. Soll zumindest. Also ich kann auch ein paar Leute bei Twitch lesen.
00:37:59 genau docker umgebung läuft auch und darin läuft auch der code dann darin wird er auch getestet genau bei mir steht und fällt das mit sehr detaillierten kriterien für die für das review ich erzeuge den prompt für den review oft mit gbd 5.4 ja genau von der logik her nicht chemisch mehr okay also doku auf jeden fall noch und hier komplexität ist oftmals um thema
00:38:40 Vielleicht muss ich die reviewer wirklich noch skalierbarer machen, dass ich da einfacher sagen kann okay das muss runter. Oh das ist smart.
00:39:09 Weil er die KI auf keine Bibliotheken oder so, sondern Custom-Lösungen baut, meiner Erfahrung nach zumindest. Je nachdem. Genau, Consistency, Code, Doku, Anforderungen etc. Die Consistency sollte eigentlich in dem hier drin sein, weil der ja quasi das Übereinstimmen im Issue versucht wiederherzustellen. Also das ist zumindest die Idee dahinter. Okay.
00:39:39 Okay, probieren wir mal. Also warte. Das gehen wir doch hin. Wir arbeiten jetzt einfach mal mit dem Ding. Das machen wir doch mal hier so.
00:39:59 im AI-Manager, den ich mir schreibe, habe ich Tasks automatisiert erstellen lassen. Hab da nicht vorgeschrieben, was da gebraucht wird. Das ist das Ding. Also wenn ich quasi die KI einfach machen lasse und die gar keine Guidelines hat, dann funktioniert es meistens überhaupt nicht. Tokenoptimierung wäre noch so ein Thema, ja. Aber ich weiß nicht, ob wir das so einfach einbauen können. Dann benutze ich lieber einfach ein günstigeres Modell, weil Tokenoptimierung ist halt so, wenn du an Tokens sparst, kommt meistens wieder schwächerer Code raus.
00:40:27 Das könnte man schon machen, das ist aber halt immer ein bisschen risky. Habe ich eigentlich den anderen Vorgang jetzt abgebrochen? Nein, habe ich nicht. Warum habe ich den nicht abgebrochen? Doch, ich habe ihn abgebrochen. So. Mal kurz gucken, ob die jetzt alle tot sind. Okay. So, ich würde eigentlich ganz gerne das so machen. Okay. Also grün ist das, was wir haben wollen. Wir haben aktuell... Okay. Und ja, ich habe mir das mit den sieben Agenten angewöhnt.
00:42:18 Das mit dem Skalieren und mit dem Dokumentationsagenten würde ich noch danach reinpacken. Vielleicht kann ich das auch noch ins Ding reinschrauben, dass ich Dokumentation noch reinbaue. Mensch, das habe ich noch gar nicht. Warte mal.
00:42:35 Repulenz hieß das. Das ist auch noch nicht öffentlich, das will ich erst vernünftig machen. Nicht, dass es irgendjemand benutzt und sich beschwert, dass dann am Ende irgendwas broken dabei ist. Deswegen beide von diesen Projekten sind noch nicht öffentlich, weil ich euch nichts Kaputtes geben möchte, okay? Nicht, weil wir sie nicht Open Source machen wollen, sondern ich will euch einfach keinen Shit-Code geben. Und aktuell schäme ich mich vielleicht noch ein bisschen dafür, dass es einfach so Shell-Skripte sind, die gewachsen sind. Ihr seht überhaupt nichts. Das ist ein sehr guter Punkt.
00:43:04 Wir switchen die beiden. Wo ist Krita? Da ist Krita. So. Dann seht ihr, ich glaube, das Farbrad braucht ihr nicht unbedingt sehen. So sollte es besser sein. Okay. So. Erstmal hier kurz rein. Okay.
00:43:47 Also das Ganze steht und fällt natürlich mit den Issues. Das heißt, wir packen einfach Issues drauf und lassen die dann automatisch lösen. Das ist quasi die Idee davon. Und Refactoring Issues, muss ich sagen, hatte ich bisher die beste Erfahrung. Also quasi alles.
00:44:01 Denkt an tanken? Warum tanken? Achso, weil der Spritpreis gerade wieder... Ich bin so sauer, ne? Ich musste tanken vor ein paar Tagen, Wochen. Aber es ging nicht anders, weil wir irgendwo hinfahren mussten. Und jetzt fahre ich halt wieder so gefühlt drei Monate quasi gar nicht. Und jetzt ist wieder günstig. So. Okay. Also, excellent. All seven agents have reported back. Here's my analysis. So, research, implement, lintfix, typefix, testfix.
00:44:28 mit QG. QG sind bei mir die Quality Gates, die sind wirklich hardcoded, also sowas wie Tests. Linter darf keine Fehler rausschmeißen und es muss halt grundsätzlich lauffähig sein. Dementsprechend, die sind einfach nicht übern Agent, sondern wenn die failen, dann fails halt einfach.
00:44:48 Wenn die fehlen, dann geht's halt sofort zurück zum Implementer. So, Implementer ist explicitly told, do not write tests. Testfixer runs last. After Lint and Typefixes, Testfixer ist told, do not change implementation logic. Must conform. So, tests are reactive after fault, not proactive specification. Okay. Research test dev, implement clean code, mid QG reviews.
00:45:17 TestFixer writes tests after implementation is logged in. Again now it sees code causing retry loops.
00:45:26 Test dev rights from the issue requirements, not from implementation. Test define the behavioral contract given x expect y. This produces specification driven tests that catch actual bugs rather than just mirroring implementation. Strong win for TDD first. Okay.
00:45:49 Implementer focus and effectiveness Implementer has no concrete definition of done. It reads the issue, interprets requirements, and hopes the test fixer plus reviewers agree. Target make the test green. This is unambiguous. Agent can run tests iteratively and know exactly when it's done. Less guesswork, more focused, implement a strong win. So retry loop efficiency Implement tests don't exist yet.
00:46:30 TestDev detects no testable behavior and writes no tests. Pipeline skips to implementer. Gut, das wäre akzeptabel. Refactoring no behavior change. TestDev writes regression tests for... Das wäre auch gut. TestDev writes implementation couple tests. Prompt must enforce behavioral blackbox star. ReviewD catches violations. Okay, das sieht doch gut aus.
00:47:14 Was passiert wenn man einen Agenten seine Pipeline gestalten diese nachdem man ihnen Bücher zum Thema gegeben hätte Clean Code und Clean Coder? Das ist eine sehr gute Frage Wenn dann würde ich die eher in die Reviewer reinstecken ehrlich gesagt
00:47:34 aber sie also normalerweise polluten volle bücher einfach dass das memory bzw den kontext zu sehr das heißt das denkt dann zu sehr anders weil das ja auch andere codebeispiele drin so was deswegen wäre ich damit vorsichtig grundsätzlich haben die die wahrscheinlich auch in den trainings daten und safe so jetzt lass uns mal kurz nach den lenses gucken wegen documentation das ist auch ein wichtiger punkt
Integration von Dokumentationserstellung
00:47:5900:47:59 All 7 agents have reported back. Here is the synthesized picture. What we have. Dedicated Documentation Domain. Code docs. Doc string. JavaScript doc. Parameter return docs. Outdated comments versus code signatures. Architecture docs. ADRs. C4. Dataflow deployment topology. Technology. Onboarding docs. Contributing testing. FAQ.
00:48:28 Okay, das ist doch vorhanden eigentlich. Hier, ChangeLog Release Notes Management. Actually, ich weiß nicht. Ich weiß nicht, ob wir die überhaupt reinmachen sollten. Also ChangeLog Release Notes, wobei, ja, GLM 5.1 habe ich auch schon gesehen. Das ist insane. Das ist gerade, ich glaube, gestern rausgekommen oder sowas, ne? Okay. So.
00:49:38 Dann wäre das hier auf jeden Fall schon mal erledigt. Dann will ich noch die Reviewers skalieren und schauen wir mal ob das funktioniert. Ich würde es einfach mal auf dem auf Dings laufen lassen.
00:50:19 Wenn man Mistral oder halt irgendein Open-Modell laufen lässt, ja, das würde schon, also es ist auf jeden Fall sehr viel günstiger. Das Ding ist, also ja, jetzt für den ganzen Prozess, den wir jetzt hier gerade so durchgegangen haben, dadurch findest du relativ viel. Das Problem ist, dass die Modelle irgendwann ab einem Schwellwert werden sie quasi so nützlich. Und was ich jetzt momentan mache, ist eben, ich habe das Minimax M2.7 so als dauerhaft.
00:50:44 Dauerhafter Einsatz. Das heißt, so ein Mistral Small 4 ist meistens ein bisschen zu schwach. Für fast jeden Issue eigentlich. Aber das Minimax M2.7, ich kann mal ganz kurz aufmachen. Das ist halt in einem Plan relativ günstig verfügbar. Also es wäre natürlich geiler, wenn ich es irgendwie selber hosten würde. Aber ich habe die Rechenkapazitäten einfach dafür nicht, dass es schnell genug ist. Und fairerweise, hier, das M2.7 ist schon echt krass.
00:51:15 Ich zeige euch das sofort, wenn ich es gefunden habe. Grafiken neu im Tabf öffnen hier. Hier, das ist ungefähr auf dem, also Multi-SWE-Bench soll es besser sein als Opus 4.6, ist es nicht. Aber die Benchmarks geben dir so eine Richtung, wie gut es ist. Es ist schon so auf dem Level, würde ich sagen, von Sonet. Vielleicht Sonet 4.5 eher als 4.6, aber es ist wirklich, wirklich ein gutes Modell. Und das Coole ist halt,
00:51:43 Pricing? Nein? Kein Pricing? Nein? Ah, Token Plan. Das war's. So. Dein Ernst. Pricing. Token Plan. Hier.
00:52:03 Genau. Du kriegst für einen Zehner, kriegst du halt 1500 Model Requests alle 5 Stunden. Model Requests heißt, du kannst eine Anfrage hinschicken. Das heißt, wenn du halt quasi sagst, ey, implementier das mal, dann ist es eine Anfrage. Beziehungsweise, ich weiß nicht genau, wie sie es rechnen, ehrlich gesagt.
00:52:21 Aber das ist wahnsinnig viel, vor allem in 5 Stunden. Das heißt nämlich, also hier, ich glaube sie haben garantiert ungefähr 50 Tokens pro Sekunde drin. Und die refreshen sich wirklich alle 5 Stunden. Es gibt kein wöchentliches Limit hier bei dem ganzen. Bei Claude hast du ein wöchentliches Limit, an das ich eigentlich jede Woche stoße. Und bei dem hast du wirklich alle 5 Stunden resettet sich das und die haben vergessen, wie viel du gemacht hast.
00:52:48 Und ich habe mir tatsächlich das hier geholt, das Ultra High Speed, was arschteuer ist leider. Aber dafür habe ich hier einfach 30.000 Model Requests alle 5 Stunden. Du kannst da hinwerfen ohne Ende.
00:53:04 Ja, und die machen einfach. Also die sind schon extrem gut geworden. Es gibt Openweight-Modelle, die mit Opus 4.6 mithalten können? Nein. Ehrlich gesagt nicht. Momentan, meine Erfahrung sagt mir, auch selbst ein GLM 5.1 kann noch nicht richtig mithalten mit Opus 4.6. Aber...
00:53:26 die sind verdammt nah dran gekommen. Also das ist jetzt wirklich auf dem Niveau, wo vielleicht Opus 4.5 war oder Sonet 4.5, so irgendwo dort, würde ich sagen. Wenn nicht sogar bei Sonet 4.6. Und das ist immer noch ein wirklich, wirklich gutes Modell. Manchmal gibt es ein bisschen Drift, manchmal macht es ein bisschen mehr Murks. Das Opus 4.6 macht deutlich weniger Murks. Aber es ist halt deutlich günstiger. Für 150 Dollar im Monat, dort zahle ich 180 Euro im Monat.
00:53:55 Und ich habe ein Limit, was ich wirklich sehr stark erreiche. Ich habe zwei Claude Max 20 Abos, zwei davon, weil ich halt ständig am Limit bin. Und das hier kann halt einfach die ganze Zeit im Hintergrund durchlaufen. Und es juckt die nicht mal. Also ich kriege immer mal wieder Timeouts fairerweise, was irgendwie lustig ist, weil ich das Limit an sich nicht sprenge. Aber trotzdem ist es halt ein No-Brainer für mich geworden. Ja genau, also Coding Performance, da sagen viele, dass GLM 5.1 in manchen Benchmarks Claude Opus 4.6 übertrifft.
00:54:27 Also ja, das soll ein krasses Modell sein. Es ist noch nicht ganz da und GLM ist auch ein bisschen teurer als Minimax, deswegen das ist so ein bisschen Preis-Leistung her. Minimax wird auch bei Minimax 3 oder sowas rausbringen, dann ist es auch wieder multimodal und dann hast du das auch mit drin. Dementsprechend, wenn es für die Aufgabe reicht, nehme ich das Minimax, wenn es nicht schafft, dann nehme ich halt Clot dafür. Das ist dann immer so ein...
00:54:50 Ich lasse die Issues durchlaufen, wenn es die halt mehrfach nicht schafft, dann lasse ich einen Claw drauflaufen und ansonsten lasse ich es halt über Minimax machen. Und die Sachen, die bei mir wirklich in Production sind, beziehungsweise die ich aktiv benutze, also sowas wie der Morphreder zum Beispiel, wo ich halt selber immer wieder wirklich prüfen muss, was kein Testobjekt oder Projekt von mir ist, da lasse ich halt nur Claw drauflaufen. Aber ganz ehrlich, das ist also...
00:55:15 Es ist halt auch token-effizienter. Also gerade so ein Claude Opus 4.6 ist extrem token-effizient. Das heißt, es kann mit sehr wenigen Anfragen sehr viel lösen. Also es braucht weniger Tokens für dieselbe Sache sozusagen. Und ich bin ein bisschen verschwenderisch, bin ich ehrlich. Gerade mit sowas hier. Aber zum Beispiel hier Repulenz lasse ich fast immer mit Minimax laufen. Das läuft dann einfach drüber und Minimax schaut, ob es irgendwo Fehler im Code findet und pusht die dann einfach. Also jetzt zum Beispiel der DMZ.
Evaluierung von KI-Modellen und Workflow-Strategien
00:55:4400:55:44 unser Projekt hier. Es ist fast, ich glaube, nur, abgesehen von ein, zwei Issues, habe ich das nur mit Minimax entwickelt. Und die ganzen Sachen hier gerade, die noch drin sind, sind eigentlich alles Clean-Code-Sachen, damit das Ding vernünftig funktioniert. Also hier viel Coupling, Single Responsibility, Test-Maintainability, so all diese Sachen. Modularität, damit es halt besser maintained werden kann.
00:56:10 Okay, also die Lens sind da. Die brauchen wir dann nicht mehr. So, jetzt will ich das hier nochmal sehen. Ah, GLM ist... Was kostet GLM 5.1 in dem Abo? GLM 5.1 war es letztes Mal, als ich geguckt habe, noch ein bisschen recht teuer. Gibt es das... Es gibt doch eine Subscription hier. Der Coding Plan, genau, das war es. Vielleicht hole ich mir den auch noch, mein Gott. So, ah genau, hier. 45,3. Aber es ist schon extrem gut geworden, also... Was ist denn Fick?
00:56:50 Okay. Warum? Warum kann ich das bewegen? Ah, okay. Geil. Und das ist halt genau der Punkt. Es kostet halt sehr viel weniger. Aber ein Drittel ist halt nicht so viel wie bei Minimax. Bei Minimax ist es halt ein Zehntel so. 80 pro Monat. 4 mal Pro Plan Usage. 5 mal Light Plan Usage. Und das ist 3 mal... Wow. Danke. Können wir mal ausprobieren. Ich meine...
00:57:31 Schadet nicht. Geht sicher auch über OpenCode, oder? Ja, geht über OpenCode. Perfekt. Dann hole ich mir das mal für einen Monat und gucke mal durch, ob das auch was taugt. Ich wollte die eh mal testen. Vielleicht machen wir das im nächsten Stream, ha? Ja, okay. Website mit der R geschrieben. Mit Sicherheit. Ganz ehrlich, ich würde es nicht anders machen. Das ist doch die beste Werbung, wenn deine eigene Website mit deinem eigenen Tool geschrieben wurde. Also, sind wir ehrlich. Ich weiß, ich bin nicht mehr eingeloggt. Das ist halt funny.
00:58:36 Also GLM 5 hatte ich damals viel positives gehört, bis dann die Leute gesagt haben, na, es ist shit geworden. Und jetzt soll es ja wieder ganz gut sein. Naja, mal gucken. Halt dich offen. Vielleicht kann ich dann so irgendwie so ein Mittelding machen, dass es irgendwie so die, für die einfach, oh, vielleicht können wir da noch so einen Agent dazwischen hängen, der quasi entscheidet, wie schwer der Issue ist.
00:59:01 Und dann je nachdem wie schwer der Issue ist, benutzt er halt das GLM-Abo oder das Minimax-Abo oder das Claude-Abo, wenn er richtig hart ist. Das wäre cool tatsächlich, so eine Art. Das ist halt dann abhängig von dem, was man als Abo hat. Ah, schwierig. Das ist dann halt wieder auf mich so angepasst, das will ich eigentlich auch nicht unbedingt. So, all changes implemented. Hier ist a summary of what was done. Okay. Edit, test, death stage. Wait.
00:59:34 Okay. Ah, ich weiß nicht, was ich offen habe. Einmal kurz, Sekunde, ich muss kurz zurück auf mein Face. Ich glaube, ich starte jetzt einfach mal mit PyCharm hier. PyCharm ist eh noch offen. Gebt mir kurz. Hier, das ist es. Mittlerer Screen, der hier. Das ist das Projekt. Okay. Ich will die Changes sehen können, sonst funktioniert das nicht richtig. Ja. PyCharm mag mich momentan nicht. Okay.
01:00:31 Schau mal hier, das ist wieder Spaghetti-Code hier. Das ist alles Spaghetti-Shell-Code. Bäh. Deswegen will ich das neu schreiben. Das war nicht von diesem Mal her. Wobei, so schlimm ist der Shell-Code. Oder der Spaghetti-Code nicht. Einfach Refact anlassen. Kann das ein Modell gut einschätzen? Die Schwierigkeit eines Issues. Also im Allgemeinen, ohne dass man Schwierigkeit definiert, beziehungsweise Kriterien festlegt, die zur Bewertung dienen. Das funktioniert tatsächlich recht gut. Also, was ich...
01:01:23 mache, um Komplexität festzulegen, ist, ich frage nach der Zeit, wie lange ein Mensch dafür brauchen würde. Das kann natürlich variieren, also jetzt ein Modell kann sagen, hey, es braucht eine Stunde oder ein Mensch braucht dafür eine Stunde. Ich frage speziell nicht nach, wie lange braucht eine KI, weil das ist ja mega abhängig von der KI, die man fragt. Und die haben meistens noch in den Trainingsdaten drin, KI ist GPT-4O und GPT-4O schafft grundsätzlich gar nichts. Was ich deswegen mache, ist, ich frage, wie lange würde ein
01:01:50 einen Softwareentwickler dafür im Schnitt brauchen. Was ich dann bekomme, ist meistens sowas wie, hey, du als Mensch würdest vielleicht zwei Stunden brauchen oder eine Stunde brauchen. Und dann nehme ich, warte kurz, wir machen ganz kurz hier fertig. Das sieht eigentlich gar nicht so schlecht aus hier. Das war, glaube ich, die größte Änderung hier. Lass mich erst ganz kurz das fertig machen, dann erzähle ich dir, was ich meine. Hier ist der Test. Genau, das ist das Prompt für den TDD.
Automatisierung in der Softwareentwicklung mit Autodev
01:02:2001:02:20 Hast du den alten TDD entfernt? Oder wo ist der? Ah ja, hier. Da war er. Ja, genau. Perfekt. Okay. Warte. So. Und was ich dann mache ist, also nachdem ich diese Einschätzung habe, wie lange ein Issue braucht, ist Meter... Danke, Tastatur. Irgendwas stimmt mit meiner Tastatur nicht. Hier. Nimm ich diese hier ganz grob. Wobei die Arc hinten dran hängt.
01:03:05 Um...
01:03:07 Und leider echt viele Modelle gar nicht testet. Also sie testen nur die von den amerikanischen Anbietern. Also zum Beispiel Cloud Opus 4.6 schafft mit einer 50%igen Wahrscheinlichkeit, dass es Erfolg hat, Aufgaben mit so circa 14 Stunden. Hier, wenn ich auf 80% Erfolgswahrscheinlichkeit gehen möchte, darf die Aufgabe nicht länger für Menschen sein. Also 26 Minuten bis 2 Stunden 50. Ich nehme dann meistens so diese 2 Stunden 50 und sage, okay, bis 2 Stunden 50 geht das.
01:03:36 Das kann ein...
01:03:39 Kann ein Mensch, also ein ich als Softwareentwickler darf zwei Stunden 50 brauchen für ein Issue, dann schafft ihn Claude auch. So, wenn ich länger brauchen würde, dann schafft Claude Opus 4.6 ihn ziemlich sicher nicht. Und dann schaue ich, kann ich ihn vielleicht unterteilen, also kann ich ihn aufschneiden, kann ich sagen, wir machen zwei Issues draus oder vier oder wie auch immer wie viele. Und dann machen wir genau das. Und für sowas wie, also die günstigeren Modelle.
01:04:07 Minimax oder sowas schaue ich, wie stark sind die so in den Benchmarks. Hier zum Beispiel O3 kann eine Stunde machen. Claude Opus 4.6 kann zwei Stunden 50 machen. Ich habe alles davon zwischendrin benutzt. Das heißt, ich probiere so ein bisschen einzuschätzen und dann sage ich einfach, wie lange würde ein Mensch brauchen? Bei einer Stunde, also wenn der Mensch eine Stunde braucht, gibt es Minimax. Wenn der Mensch von mir aus...
01:04:30 Ich weiß noch nicht genau, wie gut GLM 5.1 ist. Wenn er von mir aus eineinhalb Stunden braucht oder zwei Stunden braucht, schieb es in GLM rein. Und wenn er mehr braucht, das heißt zum Beispiel unter drei Stunden, dann gibt es Claude. Das wäre meine Einschätzung dafür. In der Praxis mache ich das so natürlich noch nicht, aber das könnte man auf jeden Fall machen. In der Praxis mache ich es einfach so, dass ich auf die Aufgaben...
01:04:58 Oder dass ich einfach probiere, Minimax draufzuwerfen und wenn das halt funktioniert, dann okay. Und wenn es das halt mehrfach nicht schafft, dann werfe ich halt Cloud drauf. So. Das macht eine Review hier. Das finde ich gut. Dann können wir das tatsächlich mal laufen lassen. Da sind sechs neue Dateien. Gehtignore. Gut, die wollen wir auch alle ignoren. Jetzt habe ich es verkackt, ne? Wo ist es denn? Ne, eben nicht dahin. So.
01:05:57 Klingt nach einer guten Art, die Schwierigkeit einzuschätzen. Danke, danke. Ja, also es macht einfach keinen Sinn zu fragen, wie lange brauchen eine KI. Die sind alle unterschiedlich. Nutzt dein Shell-Skript einen Harness wie Cloud-Code, Open-Code-Pi oder direkt die LLM-API mit Custom-Prompts und Tools? Ne, ich habe tatsächlich Cloud-Code und Open-Code in Verwendung. Die machen einfach so viel, weil gerade so Tool-Aufrufe oder sowas will ich nicht selber benutzen oder nicht selber schreiben.
01:06:37 Habe ich schon mal versucht, das Ganze mit einem kleinen Robber zu verbinden? Ne, tatsächlich nicht. Ich bin auch ehrlich gesagt in Hardware nicht so tief drin. Ich kenne mich da nur bedingt gut aus mit.
01:06:52 Arbeite ich Storys von einem Board ab oder wie strukturiere ich Projekte? Kommt mega drauf an. Also ich mache gerade erst mal für, ich glaube, vier Projekte machen wir gerade erst mal den MVP einfach. Also quasi einen Prototypen basierend auf dem, was wir uns überlegt haben, was es sein soll. Und haben dafür quasi Issues schreiben lassen und die lassen wir sozusagen implementieren. Und dann gerade sehr, sehr viel so Clean-Code-Stuff. Also quasi eine Vision, die ich habe.
01:07:20 versuche ich auszuarbeiten in Anforderungen und die versuche ich dann einzubauen. Ich habe ja das große, große Privileg, dass ich meiner eigenen Vision in meinen Projekten folgen darf. Das heißt, wenn ich sage, boah, das klingt geil, das will ich haben oder boah, ich habe den Need dafür, dann kann ich das machen. Bei mir sind ja die Projekte zum Glück hauptsächlich zum Lernen da sozusagen oder zum Evaluieren, wie gut sind die Sachen, nicht für die Projekte an sich. Also ich meine, der RSS-Feed und der Moff Reader sind ja auch alle nur entstanden wegen...
01:07:48 Ich will es ausprobieren. Ich will wissen, wie gut das wirklich funktioniert bzw. wie schlecht es funktioniert. Der Stream läuft gleichzeitig auch auf Twitch. Ich versuche hier so ein bisschen beide Chats vorzulesen. Entwickler müssen jetzt ganz schnell gute PMs werden. Also ich meine, viele machen schon genau die Arbeit.
01:08:13 So, genau, das ist so ein bisschen, glaube ich, die Zusammenfassung von dem. Ich will aber tatsächlich diesen Workflow ganz gut machen, weil ich glaube, wenn wir den Workflow gemeinsam recht gut ingeniert haben, dann kann man da auch echt viel mitmachen. Also, ich meine, momentan machen wir ja sehr viel, ey, ich starte Cloud, dann hoffe ich drauf, dass es irgendwie das Ganze richtig macht. Und am Ende...
01:08:37 war es bei mir immer so, dass ich sehr, sehr häufig reviewen musste und dann selber testen musste und sagen musste, boah, das war schlecht, das war gut, das war schlecht, das war gut. Und wenn das halt irgendwie so 90% oder sowas einfach findet und ich für die letzten paar Prozent dann einfach nur mal schreiben kann, ey, das hat nicht geklappt, das hat nicht geklappt, fix das mal, dann habe ich mir halt von, also wenn ich von 10 Issues nur noch...
01:09:00 einen wirklich nochmal überarbeiten muss, aber ich kann trotzdem alle 10 machen sozusagen, kann ich quasi einfach nochmal an einen rangehen, dann habe ich mir halt 10 mal Reviewen erspart und das ist eigentlich die Hauptaufgabe, die ich gerade habe, deswegen komme ich dann sehr viel schneller vorwärts. Wo wir bei Bugs wären, ne? Sorry, ich habe, unsere Katzen haben gerade Haarausfall, beziehungsweise Fährwechsel und ich bin überall voll mit Haaren, die fliegen mir die ganze Zeit in die Nase, das ist echt ätzend.
01:09:33 so wie implement mode bug auf der implement fix account gleich null ist set next iteration attempt größer 1 fix account von null kleiner enders fix mode instead of implement test devs gibt ja das wäre nicht so gut
01:10:02 Ja, Paperclip. Ich hatte vor, es zu testen. Ich weiß, dass es ein bisschen viral gegangen ist. Es trifft nicht so ganz das, was ich machen möchte, aber ich hatte eine andere Idee, die ich mit Paperclip ausprobieren wollte. Weil Paperclip ist ja eigentlich so eine Art, nicht unbedingt Coding Agents orchestrieren, sondern eher ein, ich orchestriere Unternehmensmitarbeiter, wenn du so möchtest. Deswegen, das wollte ich auch noch ausprobieren.
01:10:31 Ich wollte das hier erstmal halt wirklich professionalisieren und dann machen. Hat das jetzt geklappt? Hier ist Wave 3 Summary. Gut.
01:10:50 Hat überlegt, mir einen KI-Server für eine komplexere Research-Aufgabe im Nistra laufen zu lassen. GPT-Research ist leider mehrfach gescheitert. Jetzt bin ich da am Limit, ziemlich kompliziert. Probier mal tatsächlich die Gemini-Research. Die Chat-GPT-Research ist oftmals ein bisschen schwierig. Ich glaube, Gemini hat auch ein paar Free-Researches dabei.
01:11:19 Matrix? Ne, hab ich tatsächlich nicht mitbekommen. Ich hatte in den letzten zwei Wochen einfach so null Zeit. Ich hab irgendwie 90 Stunden oder sowas gearbeitet, deswegen hab ich noch nicht auf Matrix geguckt in der letzten Zeit. Nein, ich hab mich tatsächlich für ein Shell-Skript entschieden, weil es historisch gewachsen ist. Ich hab... Warte. Hier mit angefangen. Hier, das da.
01:11:45 Autodevelop.sh. Es war ein einziges Skript, was auch wirklich nur für dieses Projekt war. Und dann habe ich dieses Projekt quasi, oder dieses Skript immer angepasst und in jedes Projekt reinkopiert. Und überall war dann so eine andere Version davon. Und dann habe ich immer mal wieder Learnings gehabt, die ich in einem Skript aktualisiert habe. Und das war dann irgendwann natürlich so, warum mache ich nicht ein gemeinsames Skript? Und dann ist das schneller gewachsen, weil ich da alle Learnings auf einmal reingetan habe. Und weil ich dann gemerkt habe, boah, ich kann das nochmal verbessern und so weiter und so fort. Und dann war das irgendwie so ein...
01:12:15 Ja, plötzlich ist es halt ein richtiges Projekt geworden. So, das hier. Das hat auch seinen eigenen Origin mittlerweile. Das ist ganz furchtbar. Aber wenn das läuft, ist es gut. Das wäre schon cool. Ist halt dann Linux-only, aber ich meine, die meisten von euch sind ja Linux-only. Ich hatte...
01:12:44 Ja, mein ChatGBT-Abo, zumindest das, was ich Pro hatte, ist mittlerweile ausgelaufen bei mir. Ich habe noch das Business-Abo, das läuft glaube ich noch bis Juni oder Mai, aber ich benutze es nicht wirklich gerade. Zum Reviewen ist Codex schon immer echt gut gewesen, aber zum Coden war ich bisher ein bisschen unzufrieden, aber es ist immer so eine Geschmackssache. Aber ja, tatsächlich, also gerade so zum Reviewen, ja.
01:13:19 ja, das infamous historically grown, aber ich mach's noch, also ich möchte es noch irgendwann in ein richtiges Projekt embedden, in ein richtiges Software-as-a-Service-Projekt und dann kann das auch wirklich funktionieren, weil das ist jetzt momentan, es ist ja nicht mehr irgendwie Dockerized oder sowas, also es ist Dockerized, aber halt nicht die Entwicklung an sich ist Dockerized, das ist halt komplett einfach nur, es macht. Ähm, heißt Claude bringt mir einen Implementierungsplan auf Version 10, bis er nichts mehr findet und Codex geht dann auf Version 20, sozusagen.
01:13:52 Was denkst du darüber, als IT-Dienstleistung KI-Lösung für andere Unternehmen mit KI-Hardware plus OLAMA plus Open Web UI einzubieten? Ich meine, es ist auf jeden Fall gerade etwas, was gebraucht wird, glaube ich, bei vielen. Weil wenn du gerade self-hosted bieten kannst, dann ist das etwas, was viele Firmen dir mit Handkurs abnehmen. Das Problem ist, du musst immer schauen, dass du up-to-date bleibst, also mit dem neuesten Modell. Und das kann ganz schön schwierig werden, weil du musst ja die Compliance-Sachen...
01:14:21 immer mal wieder machen. Also ich weiß nicht, ob du es wirklich bei jedem Update machen musst, aber regelmäßig musst du es machen. Aber gleichzeitig willst du ja das Modell auch wirklich auf den neuesten Stand immer bringen. Das ist schon echt nicht ohne. Aber wenn du das stemmen kannst, geil. Modell hängt mega von der Hardware ab. Wobei nicht unbedingt. Also jetzt gerade kam, das hat mich eh umgehauen. Ich weiß nicht, ob ihr es mitgekriegt hattet. Gamma, Gamma 4 kam raus.
01:14:47 Gemma 4. Das ist ein arschkleines Modell.
01:14:55 Und hier, 31B Thinking, so gut wie Qen 3.5, 397B. Oder fast so gut wie GLM 5 oder Kimi K2.5. Das ist insane, aber es hat gerade mal 31 Milliarden aktive Parameter. Das Ding läuft auf deiner Grafikkarte und ist halt so gut wie ein Modell, was davor irgendwie einen richtigen Server gebraucht hat. Für Kimi brauchst du...
01:15:21 eine Trillionen, also das hat eine Trillionen Parameter. Da brauchst du einen richtigen Grafikkartenserver für. Und das läuft jetzt halt einfach auf einer normalen Consumer-Grafikkarte. Das ist schon wild. Ähm, also, je nachdem eben, was du alles, äh, was du machen möchtest, ist es halt hammergeil, wenn du jetzt zum Beispiel das hinnimmst. Aber wenn ein Unternehmen wirklich so das Krasseste haben will, dann wäre es jetzt halt wahrscheinlich momentan GLM 5.1, glaube ich. Ähm, ist es, das ist open, oder? Oder haben sie das nicht veröffentlicht?
01:15:51 Ich hab noch gar nicht geguckt. Doch, es war auf Hugging Face drauf. Ich meine, ich hab's da gesehen. Dementsprechend, also das hier ist, das kann man sogar wirklich zum Coden benutzen. Ja, Gamer 4 gibt's kleinere Modelle hier. Das hier ist ja Gamer 26b mit vier aktiven. Das kannst du, ich hab vorhin ein Video gesehen, das kannst du auf der Switch laufen lassen, auf der Switch 1. Das ist so krass. Also, eben, das ist, ja.
Hardware-Entwicklung und KI-Modelle
01:16:2401:16:24 Die sind und das ist jetzt dieses Jahr da kommt wahrscheinlich noch mal ein Gemma 5 dieses Jahr raus was dann halt die Performance wahrscheinlich von einem Claude Opus 4.6 so das krasseste Modell jetzt gerade einfach auf die eigene Grafikkarte bringt Und dann das ist halt komplette Eskalation also wenn ich das bei mir auf der Grafikkarte ausführen kann dann kann ich meinen PC nicht mehr benutzen weil der einfach nur noch durchlaufen wird Wahrscheinlich habe ich dann trotzdem noch das Claude Abo weil das halt noch krasser ist Ich meine das ist halt so das wo wir gerade hingehen
01:16:54 Jesus, diese Katzenharrer. Ach, da ist es. God bless. Vor allem hat der Kater die Angewohnheit, er ist gerade der, der am schlimmsten haaht, hat die Angewohnheit, sich einfach auf mich draufzulegen, beziehungsweise hier neben mir zu stehen und so lange zu miauen, bis ich ihn hochnehme. Also ich meine, es ist ultra süß, aber es ist halt leider auch sehr haarig.
01:17:18 Hast du mal schon darüber nachgedacht? UI-Testing, was aktuell oft ein Human-Bottleneck ist, durch ein multimodales Modell zu ersetzen? Das ist eine gute Idee. Also ich habe überlegt, beziehungsweise ich habe es in Repolence drin, dass man UI als Modalität hat, also quasi als Tester hat, also quasi, dass UI getestet wird. Das Problem ist, das liest halt nur den Code.
01:17:46 und steuert nicht. Also das Ende-zu-Ende-Testen, das ist noch nicht drin. Man könnte das machen, indem man das Ganze über einen Headless-Browser steuert, beziehungsweise einfach so End-to-End quasi steuert. Über API geht es wunderbar. Oh, über API, das könnte man auch noch einbauen. Aber das müsste man dann halt hosten. Es gibt eine Hosted-Version von dem Repulents. Also ich habe zum Beispiel jetzt drin, dass es Docker-Container starten kann und dann sogar einzelne Pentesting-Tools ausführen kann. Aber das baue ich auch gerade noch aus.
01:18:19 Du hast durch den Linux Berater die Initialzündung für mich und einen Freund zu wechseln. Hey cool! Das freut mich, vielen vielen Dank. Übel geil. Krass. Das mit dem Bot schau ich mir an. Dankeschön. Ich will meinen Arbeitgeber überzeugen in Hardware zu investieren, um lokale Modelle selbst zu hausen. Kann ich mega verstehen. Macht doch echt Sinn. Also gerade jetzt wird lokales Ausführen sogar machbar.
01:19:01 Wir geben gerade 15k im Monat an einen Drittanbieter für Chat-PT und diese bieten uns nur 4.1 und O4 mehr nicht kein Reasoning, also O4 wäre Reasoning, aber holy shit. Mit 4.1 was zu coden fühlt sich halt für mich so an wie, keine Ahnung, ich kann es gleich selber machen, das ist halt einfacher. Boah.
01:19:22 Ey, da musst du wirklich ran. Also das ist halt 15.000 Euro dafür zu zahlen, dass man basically lieber alles von Hand macht, weil man da weniger Probleme mit hat. Wow. Also ich meine, wenn es nicht klaut ist, dann holt euch ein self-hosted GLM 5.1 oder sowas.
01:19:40 Ja und dann noch OpenAI, aber also allein das ist halt so ein uralt Ding ist, boah. Also gerade da ist es extrem wichtig, dass man immer die neuesten Modelle hat, weil ansonsten hast du verloren. So, Zero-Sale References, das ist schon mal gut. Gut, gut, gut, gut, gut. Key Bugs fixed, gut. Gut. Show me. Da hat sich nichts geändert. Das ist Dokumentation. Ah ne, warte, das ist nicht Dokumentation, das sind die Promts.
01:20:15 Das hatten wir gesagt, genau. Gut. Das ist der Decompose... Okay, Pipeline. Oh ja, die ist... Ah ja, stimmt. Das waren die Rewrites, genau. Das ist auch in Ordnung. Okay. Das sieht doch schon mal gar nicht so schlecht aus. Gut. Gut. Gut. Let's try. Alright. Tatsächlich. Das ist deine Chance, aufzusteigen. Beschäftige dich mit Hardware und mach sie abhängig von dir.
01:20:53 Ja, ohne Scheiß, also ich glaube mittlerweile sind gerade mal noch so ein bis zwei Prozent der Leute überhaupt ansatzweise in dem Kosmos, was alles gerade möglich ist. Selbst, also ich habe auch zeitweise einfach gesagt, ich kann nicht mehr, viel zu viel. Und habe jetzt auch bei sowas wie Videomodellen, habe ich den Anschluss verloren. Es gibt wahnsinnig viele Videomodelle, es gibt sogar mittlerweile mehrere Musikmodelle. Google hat sein eigenes Musikmodell. Im Minimax-Album ist ein Musikmodell dabei.
01:21:19 Im Minimax-Album ist sogar ein Videomodell dabei. Ich habe die nicht einmal benutzt, weil ich einfach ausgestiegen bin, weil das einfach...
01:21:26 Mir reicht es zu wissen was da das krasseste ist das benutze ich nicht produktiv das benutze ich damit ich wissen kann was für gesellschaftliche probleme wir bekommen damit ich darüber videos machen kann damit ich quasi also ich weiß ja was passieren wird und damit ich zeigen kann okay das sind die gefahren schaut her wir müssen darauf als gesellschaft achten aber so coding sachen will ich halt dabei sein da will ich wissen was los ist und das mal die lms die lms haben halt den größten impact für uns auch einfach
01:21:52 Seedance ist aber noch nicht wirklich oder ist es mittlerweile richtig draußen. Weil Seedance war sehr, sehr lange gesperrt bei uns, beziehungsweise insgesamt, glaube ich, weil sie ja die Probleme mit Hollywood bekommen haben. Geil. Mega cool. Also zum Matrix-Community-Server mega cool, dass das so gut klappt. NWDR H-225k, aber dann halt nichts mehr. Ich weiß nicht, ob eine H-200 reicht, ehrlich gesagt. Also es kommt aufs Modell drauf an. Sora, ja gut, Sora ist ja weg.
01:22:29 ist seit letzter euro draußen okay dass wir haben also meine katerin hat eine cap cut lizenz dementsprechend schaue ich da vielleicht morgen mal rein wenn ich kann wir benutzen es nicht das machen wir sowieso meistens nicht aber damit wir wissen was los ist sehr cool kommt für ist auch sehr cool das ist sehr gut okay so jetzt lasst uns das mal laufen hier
01:23:04 auto die wir lobser wir wollen minus minus project welches neben mir punkt punkt slash firewall ich hasse immer noch dass ich dann leerzeichen reingetan habe die eben sie wir wollen agent open code und das ist eigentlich auch schon alles max issues wir ein mit
01:23:32 So, ihr seht, was hier passiert. Also das ist Autodelft jetzt gerade. Wir haben jetzt hier quasi mit Minus Minus Agent habe ich einfach gesagt, was laufen soll. Also für alles einfach Open Code. Ich kann theoretisch einsetzen für Review A, einen anderen Agent als Review B, für den Implementer, für den Researcher kann ich jeweils andere Agents einsetzen. Das geht theoretisch schon. In der Praxis mache ich es aber meistens einfach alles mit demselben Agent. Das ist in Ordnung. Und Max Issues definiert halt einfach maximal einen. So, Logging.
01:24:01 ist die datei die gucken wir uns nachher gerade an ich weiß gar nicht wie die brauchen und dann eben die timeouts sind die retries die kann man alle separat setzen
01:24:12 Baseline Quality Gates, äh, Baseline Quality Gates, muss ich auch kurz erklären, ist quasi, ich hatte ein paar Flaky Tests, ähm, also Tests, die quasi, äh, beim ersten Mal funktionieren und dann beim zweiten Mal nicht mehr. Was doof ist, weil ich sage, die Tests, die am Anfang fehlschlagen, müssen am Ende nicht funktionieren. Ähm, wenn am Ende aber neue Tests fehlschlagen, dann sage ich, das ist eine Regression, also quasi ein neu eingeführter Fehler und dann akzeptiere ich die Änderung automatisch einfach nicht.
01:24:40 dementsprechend hatte ich da Schwierigkeiten mit, weil am Anfang halt die Tests durchliefen, beim zweiten und dritten Mal aber nicht mehr. Deswegen musste ich die dreimal jetzt laufen lassen. Genau, Docker. Wir migraten in dem Fall bei der DMZ mit Drizzle. Okay. Und wir arbeiten mit PNMP. So.
01:24:58 Und weil ich nix OS habe, brauche ich hier noch was, was in LDLibraryPath rein muss, sonst funktioniert das ganze Ding nicht. Grafana hat natürlich erstmal, also es ist alles keine Production Values hier drin, deswegen das ist in Ordnung. Und genau, dann werden die beiden Container gestartet, einmal Redis und einmal Postgres, damit die auch was zum Arbeiten haben. Dann lassen wir dreimal die Tests laufen, das ging sehr schnell.
01:25:25 in 13 Sekunden, okay. Wir schaffen die Tests offenbar in 13 Sekunden. Also wir lassen alle Tests 13 Sekunden durchlaufen, damit wir wissen, welche nicht funktionieren. 19 Stück sind direkt kaputt gegangen, aber keine sind beim zweiten und dritten Mal mehr kaputt gegangen. Also quasi alle, die irgendwann mal fehlschlagen, die ignorieren wir. Das ist dann unsere Baseline. Die dürfen weiter fehlschlagen, alle anderen dürfen nicht neu fehlschlagen. Und dann fangen wir an hier.
Demonstration des Autodev-Workflows und Herausforderungen
01:25:5101:25:51 zu gucken, das ist jetzt der Research Agent, der geht erstmal her und holt sich den nächsten Issue. So, das ist dann in dem Fall GitHub-Issue 1570. Ihr seht, wie viele Issues wir hatten. Wir sind irgendwie bei über 2000 Issues mittlerweile, die wir eingetragen haben. Ich habe 1000 oder so was wieder rausgelöscht.
01:26:11 das sind viele so und dann sagt es hier immer wieder alles gibt mir auch die kommentare darauf titel heiser ist record utility duplicated in nine files also quasi dieselbe logik ist in neun dateien wir einfach sind das ist auch ein automatischer stellte issue dann gehen wir hierher und fertig
01:26:46 Okay, es hat schon direkt alles researched und ist schon fertig. Wir sind langsam am Lesen. So, aha. So, und genau das ist das Problem. Du sollst auch nicht in Projects reinschreiben, du Arsch.
01:27:05 So und genau das also der hat automatisch einfach keine berechtigung außerhalb seines projekt ordners reinzuschreiben weswegen das hier gerade automatisch fehlgeschlagen ist weil das auto rejecten wir einfach also der darf halt in die dmc reinschreiben aber nicht in project weil das noch andere projekte von mir drin dementsprechend ja habe ich das automatisch abgelehnt und aha research file missing or empty gut das macht nichts
01:27:40 Weil es geht auf den issue und liest dort die comments und da müsste es trotzdem drin stehen Ja genau da steht es trotzdem drin ok es liest also bei github issues die comments liest automatisch trotzdem ich mach mal kurz den issue auf Dass wir auch sehen können dass die dass es da ist das sollte immer der erste issue behandelt werden genau hier das ist genau der hier Da ist trotzdem kein kommentar drin das hat nicht funktioniert das müssen wir noch mal überarbeiten das funktioniert nicht
01:29:02 Das ist kein Buddy. Ich habe tatsächlich keinen Buddy. Bei mir hat es definitiv... Gib mal einen Prompt von vor einem halben Jahr und lass es die Aufgabe erläutig lösen. Das funktioniert gar nicht mehr. OpenClaw habe ich auch noch ein spannendes Video. Das kommt jetzt wahrscheinlich diese Woche. Ich habe da auch versucht, das Ganze noch ein bisschen reinzupacken. Das hat auch was mit heute zu tun. Jede Kompanie hat KI. Keiner hat ihre KI gescheit eingepflegt. Firmen. Ja. Ja. I mean. Ja.
01:29:40 Warum nicht? So, okay. Dann schauen wir mal kurz, was hier der Dev-Agent sagt. Das ist jetzt der Test-Dev-Agent. Das ist super. Ähm. Ach so, haha. Äh, warte mal. Ich muss erstmal kurz WebStomp aufmachen. Sonst funktioniert hier gar nichts. Und das Problem ist, dass ich bei WebStomp fünf Projekte gleichzeitig aufhabe. Das darf einmal zu sein. Das ist auch nicht das Richtige. Und das hier, ist das das Richtige? Es dauert. Ich lecke vielleicht auch ein bisschen. So, jetzt haben wir es.
01:30:32 Machst du das bitte zu? Das wäre super. Danke. Und das auch zu. So, jetzt können wir wieder hier rüber. Nein, das war... Das seid ihr. Der hier, den brauchen wir. Okay. Damit ich hier auch sehen kann, was gemacht wird. So. Gut. Also wir definieren... Wir haben hier unsere Tests.
01:30:59 Wieso bist du so arsch schnell? Jesus!
01:31:33 No test files found, das ist nicht gut.
01:31:38 Aha, let me check the vtest configuration in the API app. Vtest run, aha. Failed suits here. So, okay, now ein fail test, okay. The tests are discovered and fail as expected because the implementation doesn't exist yet. This confirms the TDD approach is working correctly. Tests define a behavioral contract before implementation. Let me write the summary file. Good, I've created a test file.
01:32:08 type guards punktes punkt tsch type guards punktes punktes das ist die hier das sieht nicht so scheiße aus valid cases okay so okay dementsprechend danach den implementer implementer funktioniert funktioniert funktioniert
01:32:41 Summary. Is record is defined nine times across. Blabla. So, das haben wir jetzt schon ein paar Mal gehört. Evidence. Search. Showing all nine occurrences. Recommended fix. Delete the local definition. Estimated time. Dry principle. Schön, es hat sogar den Wikipedia-Link zum Dry reingepackt. Don't repeat yourself. Ich weiß nicht, ob ihr es kennt.
01:33:07 Ja, wir arbeiten heute am DMC, aber wir arbeiten mit dem Auto-Dev. Dementsprechend will ich wissen, dass das auch tut. Und dann lasse ich es einfach über Nacht laufen. Und dann werdet ihr sehen, wie einfach Issues von magischer Hand gelöst werden. Ist das nicht toll? Okay. Now I understand the structure. Let me... Blablabla. Okay. Now I'll update the files. Gut, gut, gut, gut, gut, gut, gut. Ja, ja. Ist schon okay.
01:33:35 Wir wollen gar nicht den Code Reviewen. Das machen wir erst, wenn wir deployen. So. Let me run the test to verify the implementation. Aha. Expected true to be false. Object.is equality. Oops, something went wrong. Das ist nicht gut. Au, bei Nib, das ist vom Test. Error. Module not found. Cannot find package.es.lint.plugin.security. Imported from Firewallet.mz. Something went wrong. Okay.
01:34:10 Ich sehe die Probleme. Die Implementation muss man die Klasse, Map, Set, Weekmap, Weekset und RegExp. Ich werde die Implementation verändern. Aha, besser. Die Fähigkeiten sind unrelatet zu meinen Changes. Da sind die Pre-Existenz Probleme mit Migration Test. Ich werde die Specifika Testen verändern. Die Changes passen.
01:34:38 The type guards test passed. The other failure is a pre-existing package resolution unrelated to my changes. We cannot find modules. Wannsich viele cannot find modules. Okay. So, test file. Test one passed. Okay. No type errors for the modified files. Implementation summary. So.
01:35:03 Implementation complete. Summary. So. Und jetzt Running Clean Code Agent. Und der ist noch dran. Ah, genau. Nee, der ist fertig. Der hat einfach tatsächlich geguckt. Auch hier. Okay, das funktioniert auch nicht. Also das hier fixt den Autodev. Das willst du jeden Abend machen. Die Welt der oberen Pinky. Natürlich. Das hier ist Autodev. Autodev spawnt quasi den Agent, der hier gerade für uns an der DMZ arbeitet.
01:35:55 und das sieht gut aus pvd logs genau ich schuld ja genau okay das ist gut
01:36:29 Okay. Aha, hier schon wieder. So, das ist das Geile, was hier passiert ist. Die Fehler, die wir davor hatten, sind quasi jetzt einfach egal. Also, wenn wir davor fail-Tests hatten, also Tests, die einfach fehlgeschlagen sind,
01:36:57 Und die jetzt halt immer noch viel schlagen, sonst ist es Wurscht. So, aber das hier finde ich auch nicht so cool. Ah, retry once succeeded. File now populated. Das ist gut. Das heißt, das ist immer das Problem. Manchmal macht Minimax einfach Quatsch. Also es macht einfach gelegentlich mal leere Ergebnisse und gar nichts. Dann startet es sich aber in dem Fall einfach nochmal neu. Das ist sehr schön. Der hier sucht gerade, wo das Ganze noch vorkommt. Genau so. Okay.
01:37:33 Genau richtig das wäre ein Segen für so viele open source projekte nicht nur die in issues ersticken sondern vor allem auch einfach du kannst einigermaßen gratis bug bounty machen ich meine ich würde das also ich würde jegliche nutzung von meinem von meinem dings so lange ich noch irgendwie API credits übrig habe, benutzt die für jedes open source projekt das es so gibt da draußen. Dadurch machst du halt die die open source projekte einfach stabiler größer besser funktionaler und wartbarer
01:38:02 Und dadurch kannst du leichter Bugs fixen. Selbst wenn du neue Bugs findest, die kannst du ja dann auch mit so einem Agent fixen. Deswegen, ich finde das mega, mega wichtig, dass wir das richtig hinbekommen. Geil, hat geklappt. Alle Reviews sind accepted worden. Hör, wie gut. Das funktioniert verdammt gut. Geil, Mann.
01:38:21 Okay, dann kommt der Finalisierer. Nicht so schnell. Bruder, ich kann nur menschlich lesen. So, Finalisierer. Version 1 von 5. Also der startet sich auch 5 mal. Er darf 5 mal schief geben, dann breche ich quasi ab. Für Issue 1570. Ja, wir haben viele Issues. Änderungen, die nicht zum Commit vorgesehen sind. Keine Änderungen zum Commit vorgesehen. Keine Änderungen?
01:38:50 Doch die sind alle zum Kommen. Ah ja hier genau. GitHub Issue, genau der liest den Issue. Dann gucken wir uns das git-div an, das dürfen wir überspringen. Dann pnp-run-lint, der guckt lint an. Dann guckt er sich... Turbulint. Ah ja, wir runen hier auch nochmal die ganzen Tests, das hätte ich vergessen. Gut, gut, gut, gut. Gut, gut, gut, gut. Okay.
01:39:24 Okay. Und jetzt sollte das hier demnächst eigentlich mal weggeworfen werden. Eigentlich brauchen wir das hier nicht nochmal dran. Oh. Das sind viele Fails. 52 Fehler. Aber ganz ehrlich, dass wir einfach schon 1800 Tests haben, ist halt wild. So. Okay. Nichts zu committen. Finalization. Fertig. Issue finalized. Committed. So, und jetzt solltet ihr neue Commit da sein. Pushing to Origin Master.
01:40:17 Das passiert übrigens, also der Push passiert nicht im Agent drin, der Agent Committed nur. Der Push passiert außerhalb, der passiert direkt im Skript drin, damit wir das quasi in unserer Kontrolle haben. Hier, das ist der Commit. Da ist er. Die ganzen Changes sind da. Und jetzt wird er gerade gepusht. Das ist sehr schön. Das sind die ganzen Pre-Push-Hooks. Warte mal, machst du weiter? Ja, ich weiß, dass die failen, das ist normal.
01:40:55 Okay. Commit past quality gates, but push to master failed after three attempts. So, das müssen wir auch noch fixen, weil wenn der Commit schon da ist, können wir auch pushen. Wie man Software testet. Ja, Bug Bounty ist schwierig geworden, leider.
01:41:40 Wir haben uns das auch eingestellt. Wir hatten ja bei der Bootstrap Academy auch so ein Bug-Bounty-Programm. Wir haben es eingestellt, weil wir einfach, wenn wir was bekommen haben, war es meistens nicht so gut, beziehungsweise alles halt KI generiert und dann halt nicht mal reviewt. Und der eigentliche Aufwand liegt ja im Reviewen. Das heißt, das einfach schreiben zu lassen, hätten wir halt selber machen können. Habe ich noch Anspruch, den Code zu verstehen oder nur Ansprüche ans Ergebnis? Es kommt mega drauf an, was ich mache.
01:42:09 Also bei dem DMC Projekt hier jetzt, nee, das ist einfach tatsächlich ein Projekt, wo ich wissen will, ob das am Ende läuft, wenn es da ist. Fairerweise, wenn ich im Team gearbeitet habe, habe ich auch immer nur meinen Teil vom Code verstanden und nicht den gesamten Teil. Dementsprechend, warum fehlt der Push hier? Und warum startet es dann nochmal neu? Okay, so. Also, hier, was haben wir hier noch gefixt?
01:43:21 Reporoute. Wir machen das mit relativem Faden. Das ist sehr viel besser. Das ist wild. Gut, aber es hat den Ischus tatsächlich gelöst. Wir kriegen es doch nicht gepusht automatisch.
01:44:08 Verständlich, bin jetzt KI-Experte im Unternehmen, soll mein Know-How präsentieren und suche noch Argumente. Naja, Argument ist ganz, ganz simpel. Also bei mir zumindest, für diese Projekte ist es einfach viel zu viel. Die Geschwindigkeit, die halt alles passiert, hat sich derart drastisch geändert. Ohne KI hätte ich diese ganzen Projekte halt nicht angefangen. Und wenn ich jetzt sage, ich muss die alle verstehen, dann muss ich die Arbeit von...
Die Rolle des Menschen im KI-gestützten Entwicklungsprozess
01:44:3501:44:35 Ich würde mal sagen, an jedem dieser Projekte arbeiten ungefähr so das Äquivalent von vier bis sieben Entwicklern. Und das sind halt irgendwie fünf, sechs, sieben, acht, neun Projekte. Also es sind, glaube ich, schon einige. Das kann ich nicht leisten. Also ich kann nicht die Arbeit von 63 Menschen leisten, die halt sonst nicht da wäre, wenn ich nicht irgendwie KI das einfach machen würde. Das ist ja wirklich nur, damit ich verstehe, was da passiert. Nicht um den Code wirklich zu verstehen, ich verstehe dann die Prozesse eher.
01:45:04 Und wie gesagt, ich habe für diese Woche noch, also eigentlich für morgen noch ein Video geplant, was ein bisschen in die Richtung geht, dass wir das eigentlich gar nicht leisten können. Also wir sind auch einfach nicht dazu gemacht, dass wir einem Agent dabei zugucken, wie er Dinge macht. Das, was ich hier gerade mache, das ist wahnsinnig ermüdend. Und da Fehler zu finden, das funktioniert halt überhaupt nicht gut. Wird da nochmal was gemacht?
01:45:35 Ja, der hat ja nichts mehr gemacht hier. Natürlich kann er nichts bei der Implementierung machen. Hä? Aber du hast nicht gepusht. Das ist das Problem. Nicht, dass du nichts gemacht hast. Du hast nicht gepusht. Okay, das müssen wir nochmal überarbeiten hier.
01:46:17 check before pushing the husky hook is redundant and just a failure point after all three pushes retry failed it does continue in the main loop select next issue queries github 100 157 0 ist still open ja und dann detects das als retry ja klar natürlich ich sage meinen kollegen immer dass KI dafür sorgt dass wir weniger klicken sondern mehr hirn zum arbeiten brauchen dafür sind wir menschen geschaffen kritisch zu denken
01:47:06 Ja, das Problem ist nicht, dass wir mehr hierin brauchen. Das Problem ist, dass wir aufmerksam sein müssen und Fehler bei was anderem finden. Wir dürfen nicht mehr selber auf die Lösung kommen. Wir sollen aber die Lösung von jemand anderem verstehen. Das ist quasi, als würden wir halt permanent einfach nur ins Reviewen gezwungen werden.
01:47:29 Mit den Prozessen verstehen ist genau richtig. So habe ich es auch gemacht. Es geht um Strukturen und Prozesse, nicht um Details. Wie in der Realität der Manager kann ich alles um Details wissen. Ja, richtig, genau. Dafür muss man aber sich halt auch einigermaßen darauf verlassen können, dass der Workflow an sich passt. Und deswegen versuche ich gerade, meinen Workflow so hart zu optimieren, wie ich nur irgendwie kann. Und deswegen das hier. Genau. Ja, aber Husky funktioniert ja nicht auf jedem Projekt. Halt, warte, warte, warte, warte, warte. Moment.
01:49:02 Warte, warte, warte, ich muss erstmal bei euch nachlesen hier. Mit den Prozessen, genau. Weniger klicken, mehr hier. 1700 Issues, davon waren viele Error in Line X oder so ähnlich. Und das etliche Zeilen durch war fast eine Benachrichtigungs-DDoS. Ja, genau. Also das ist halt genau das Ding. Aber die sind ja alle durchaus berechtigt. Also wenn man, ich meine, wenn man so viele Issues halt hat, dann kann man sie durchaus auch fixen. Man sollte sie ja auch fixen, dafür sind sie da.
01:49:26 Aber wir ignorieren sie in der Praxis halt meistens. Das heißt, wenn ich irgendwie bei mir ein paar Flutter-Analyzer-Logs habe, die mir sagen, hey, da stimmt was nicht, dann war das halt in der meisten Zeit, wo ich selber geschrieben habe, einfach so, okay, das ignoriere ich halt, bis ich Zeit habe, mich drum zu kümmern. Und genau, das kann ich halt da einfach machen lassen. Und das ist genau die Idee. Aber solche einfachen Sachen brauche ich mich halt nicht mehr drum kümmern. Wo ich mich drum kümmern muss, sind halt die richtig komplizierten Sachen.
01:49:54 Also zum Beispiel eben den Workflow hier optimieren. Das sollte einmal geklappt haben. Wir pushen das einmal von Hand. Gut. Und das ist der...
01:50:50 Letzte Commit von dem. Das machen wir auch mal weg. So, dann probieren wir es nochmal. Also wir hatten einmal die Research, die nicht richtig geschrieben wurde. Ja, weiß ich. Also einmal hatten wir die Research, die nicht funktioniert hat. Und einmal hatten wir der Push, der nicht funktioniert hat. Also wir gucken mal, ob das jetzt auch funktioniert. Und währenddessen kann ich ja schon mal hier... Also ich meine, das dauert jetzt eine Weile. Währenddessen können wir schon mal hier den Documentation Agent reinschreiben und es skalieren.
01:51:37 Test Dev Implementer Clean Coder Reviews. It should not touch tests nor code, only the documentation involved. Not a simple change log, but a valuable update.
01:52:30 New dev or dev not too much involved with a topic would actually read. No implementation details allowed. Evaluate with seven agents and find a proper as the development does to
01:53:14 Implement that agent. So eine Sekunde. Ich lese mal kurz was ihr geschrieben habt. Ich habe einen Wissenschaftler gesehen, der einen Mini-Roboter mit dem er kommuniziert hat während des Problems sieht den Fehler direkt und man kann intuitiver mitarbeiten. Krass. Ja, fern. Macht Sinn. Was glaubst du kommt mit?
01:53:43 kommt mit entropics internen modell mythos auf uns zu mit 78 prozent im sw bench pro ich habe tatsächlich für nächste woche explizit ein video für mythos geplant ich arbeite schon dran weil das ding ist halt ein biest also nicht nur in software entwicklung sondern gerade in cyber security ist das ding heftig deswegen da bin ich für nächste woche dran das ist ein ganz eigenes thema
01:54:04 Ich habe Sachbearbeiter in der Abteilung, die durch Automatisierung gezwungen sind, die Ergebnisse zu überprüfen, statt wie zuvor sechs Stunden lang im Auto-Paste-Modus zu arbeiten. Na fair. Das hat wahrscheinlich auch wenig Spaß gemacht. So geht er halt die ganze Zeit durch. Er schreibt eine Fehlermeldung, eventuell zusätzliche Erkennung, wenn er zehn Zeilen hintereinander Fehler meldet, dass er einen Break macht. Wie meinst du? Also meinst du hier? Stimmt, warte mal. Aha, ich wollte die Research sehen. So.
01:54:33 research haben wir ja wir haben es geschafft die research research complete posted to logs issues 15 71 and commented on 15 71 show me the comments hier 15 71 research issue 15 71 duplicate api key mock factories das ist super das wollte ich haben genau so wollte ich das haben da hat nämlich irgendwas nicht funktioniert
01:55:10 Perfekt, cool. Das haben wir repariert. Sehr gut.
01:55:19 Mal live auch interessant. Was sagst du zum Claude Code 1. April League? Naja, also ich finde es ganz nice, dass es in die Richtung geht. Aber ich meine, es ist ehrlich gesagt nur eine Frage der Zeit. Claude Code ist nicht deswegen cool, weil es Claude Code ist, sondern weil man halt das Entropic Abo damit benutzen kann. Also fairerweise, Open Code ist mächtiger bzw. sieht krasser aus und es ist funktional einfach auch krasser. Claude Code ist halt deswegen geil, weil du halt das Entropic Abo benutzen kannst.
01:55:49 Ja, also ich würde auch tatsächlich bei sechs Stunden Steuerung C, Steuerung V echt durchdrehen, deswegen kann ich verstehen, dass das nicht wirklich Spaß macht. Was wir basteln ist, wir haben ja das Community-Projekt The DMZ und wir haben jetzt die Möglichkeit, oder ich versuche eine Möglichkeit zu finden, den Auto-Development-Agent ein bisschen besser zu machen, also quasi der, der uns automatisch Issues löst hierbei.
Open Code als Open-Source-Alternative für KI-Orchestrierung
01:56:1801:56:18 Open Code. Nicht Open AI. Open Code. Warte. Open Code ist cool. Open Code ist wirklich open. Also es ist einfach Open Source. Es ist quasi Cloud Code. Wann? Cool. Es ist wirklich Open Source und du kannst halt einfach jeden Agent verbinden, den du...
01:56:39 Den du hier irgendwie hast also du kannst jetzt zum Beispiel sagen was ich habe ist ein minimax abo so ist jetzt nicht so das beste aber es funktioniert Also es ist gut und sehr viel günstiger als als klar zum beispiel deswegen benutze ich das für die einfachen aufgaben du kannst jetzt einfach hergehen kann sagen wechsel mal das modell bitte
01:56:59 Und kannst dann deinen Account verbinden, zum Beispiel mit Quen oder mit Kimi oder mit Minimax oder mit Nemotron, was gerade free ist bei OpenCodeZen. Krass. Big Pickle ist wahrscheinlich wieder eins zum Ausprobieren. Oder mit einem DeepSeek. Ist Big Pickle vielleicht DeepSeek Version 4? Wir wissen es nicht. Oder GLM 5.1, wenn du zum Beispiel das GLM Coding Plan hast. So kannst du quasi einfach sagen...
01:57:23 Das ist ein Cloud-Code, aber halt Open-Source. Du kannst da auch Cloud-Opus drin benutzen, aber da musst du halt dann die API-Kosten bezahlen. Deswegen ist es halt heavy. Das machen wir nicht. Nee, musst du nicht. Du musst Quen nicht mit Olama lokal laufen lassen. Du kannst auch ein Quen-Abo kaufen bei Alibaba halt dann. Also ein Cloud-Abo. Das geht schon. Deswegen, ich mag Open-Code sehr gerne, ehrlich gesagt.
01:57:48 Also du kannst einfach deine Abos halt teilweise mit verbinden, aber halt nicht alle. Die meisten China-Abos kannst du mit verbinden. Ähm, Anthropic-Abo geht halt leider nicht, deswegen ist halt Claude immer noch so der Standard. Ich weiß nicht, wie es mit OpenAI aussieht, das benutze ich halt gar nicht mehr. Ja.
01:58:04 Bekommen Consumer eine andere KI-Version wie Big Tech zuverlässiger? Das ist eine gute Frage. Ich weiß, dass manche interne Versionen natürlich bekommen. Zum Beispiel Nvidia und Co. haben oder auch Linux haben Zugriff auf Mythos bekommen, also das neue Cloud. Das ist durchaus eine andere Version. Und manche bekommen Zugriff auf das RAW-KI-Modell. Aber das haben nicht viele.
Zugriff auf und Unterschiede zwischen KI-Modellen
01:58:3301:58:33 Google hat auch Zugriff aufs neue Mythos. Genau, OpenAI hat Codex, aber du kannst theoretisch auch dein OpenAI-Abo, glaube ich, mit OpenCode verbinden. Das geht. Kann man auch das Abo von GitHub Copilot nutzen in OpenCode? Das weiß ich tatsächlich nicht. Das musst du mal gucken. Also wenn du dich damit anmelden kannst, dann geht das. Copilot habe ich halt gar nicht. So, wie weit sind wir hier?
Dokumentationsagent Konfiguration
01:59:0301:59:03 Okay, Documentation Agent. After analyzing the pipeline, there's one clear winner. Research, test, dev, implement, clean code, documentation, reviews, controller. Perfect. Code is in its final state. Docs reference correct behavior. Reviewer E, architecture can validate documentation accuracy in the same path. Doc changes batch into the same commit naturally, non-fatal.
01:59:28 So, open questions. Should the doc agent run on every issue or only when the implementation actually produced code changes? My recommendation only when... Yes.
02:00:03 Should it be enabled by default or opt-in? My recommendation is enabled by default with .autodef.yaml key documentation agent false to disable. Perfect. Let's do it. Timeout. Add default to 1.800 sekunden, 30 minuten. Docs are lighter work than implementation. Configurable via documentation. Timeout in autodef. Okay.
02:00:34 Should the doc agent also run in fix mode iterations? My recommendation no, only on the first implement pass. And after re-implement verdicts fixes are targeted corrections. But there might be fixes for the documentation specifically, so we'd need that.
Modelle, Partnerschaften und Plattform-Vergleiche
02:01:0102:01:01 Geht aber ein OpenCode haben eine offizielle Partnerschaft? Geil!
02:01:35 Sehr cool. Kann man zum Beispiel grog mit Q oder Open Router? Open Router geht absolut mit Open Code. Ja, ich habe tatsächlich die meisten Modelle über Open Code mit Open Router getestet. Grog, also mit Q, geht soweit ich weiß auch. Also muss halt mal gucken. Das Geile bei Open Code ist, gerade wenn du es über API benutzt, dann siehst du auch, wie viel du verbrauchst.
02:02:03 Du siehst hier drüben quasi immer deine Sessions. Du kannst auch mehrere Sessions haben, kannst auch viele Hintergrund-Sessions haben. Du siehst, wie viele Tokens du benutzt hast. Und du siehst auch, wie viel Prozent du benutzt hast von deinem Context-Window und wie viel du ausgegeben hast dafür. Also zum Beispiel hier jetzt, ich habe einen Cent ausgegeben für die Session. Das ist ziemlich cool, ehrlich gesagt. Und du kannst halt in den Hintergrund wechseln.
02:02:28 beziehungsweise dann auch tatsächlich einfach zwischen sessions hin und her gehen das modell innerhalb einer session wechseln und so weiter und so fort also schon ich finde es persönlich mächtiger und cooler als cloud code ist es natürlich auch ein bisschen bifi im sinne von es braucht mehr ressourcen als jetzt ein cloud code aber trotzdem fairerweise ist es geil also so was die mcp ist auch dabei und eben hier die verschiedenen provider sind auch dabei das schon cool und ist halt open source also das mag ich halt sehr gerne damit
02:02:59 wieso verwendest du nicht slash voice und redest mit cloudcode ich schreibe irgendwie lieber es haben auch schon viele gesagt ob ich meine skripte irgendwie spreche also ich habe auch schon von vielen gehört ihre skripte sprechen und dann das überarbeiten was sie gesprochen haben und dann quasi tippen aber ich schreibe sehr gerne ich springe immer mal wieder gerne zurück und überarbeitet dann noch mal was das mache ich auch hier ganz gerne deswegen das funktioniert so
02:03:26 besser für mich einfach, ob es Geschmackssache auch wegen der Mitarbeiterreiche die jetzt durch den ersten April League rausgekommen ist wenn ich das richtig verstanden habe, hat das Modell dann weniger Tokensverbrauch, zwar meine Denkweise
02:03:56 Privacy Frage, WhatsApp für ein paar Kontakte? Ja, habe ich leider. Ich versuche es ein bisschen abzuwägen. Die Kontakte sind mir da tatsächlich wichtiger als jetzt nicht WhatsApp zu benutzen. Ich fände es zwar besser, aber wenn ich die Wahl habe zwischen ich breche den Kontakt ab zu den Menschen, die mir wichtig sind, versus ich benutze kein WhatsApp, sind mir die Menschen wichtiger. Es ist schade, aber ja, so ist es. Man lässt sowas ja eher auf dem Server laufen, wie zum Beispiel Open, genau. Ja, genau.
KI-DJ Entwicklung und Unternehmensdatenintegration
02:04:3002:04:30 Ein KI-DJ zu entwickeln ist ziemlich komplex das kommt drauf an also ja das ist komplex war wenn du das KI-Modell selber schreiben möchtest quasi ein KI-DJ beziehungsweise wenn du selber machen möchtest was du aber machen kannst Schau mal nach Wie heißen die Dinger?
02:04:51 Hier Embedding Modellen, das war das Wort. Danke, Entschuldigung. Ich gehe an einen kurzen Aussetzer, ich bin heute um fünf aufgestanden. Ein Embedding Modell, ich weiß nicht genau, ob es ein gutes für Musik gibt, aber Embedding Modelle machen quasi ein Berechnen über eine KI, wie ähnlich sich Sachen sind. Also zum Beispiel, wenn du jetzt einen Text reingibst von einem Python Tutorial und einem Python Hello World Tutorial und einem Python
02:05:19 Hello World Ausrufezeichen Tutorial, dann haben die fast 100 Prozent Übereinstimmung, weil die sehr sehr ähnlich sind vom Inhalt. Das heißt, das ist quasi KI, die inhaltlich vergleicht. Und wenn du da dann Musik reingibst, musst du ausprobieren. Ich weiß nicht, wie gut das funktioniert. Ich kann dir mir vorstellen, dass so ein Embedding-Modell rausspuckt, wie ähnlich sich Tracks sind. Das heißt, wie gut sie sich eignen als für einen DJ direkt ineinander überfließen lassen. Kannst du mal probieren.
02:05:46 Aber also wenn du selber machen möchtest, das Modell, dann wird es sehr, ja, dann wird es heftig. Warum ziehst du Menschen nicht auf Discord? Discord ist jetzt nicht wirklich besser als WhatsApp. Discord ist ja auch nicht verschlüsselt. Aber ja, die Menschen sind grundsätzlich dann trotzdem ja noch bei der alten Plattform. Wenn du dann nur über die neuen schreibst, dann antworten sie meistens seltener. Schon gehört, dass Nvidia für Neumotron 3 super die Trainingssätze und die Rezepte veröffentlicht hat? Nee, tatsächlich nicht. Wann war das denn?
Fehlerbehebung und Agenten-Workflow
02:06:2802:06:28 Für Neumotron 3, super. Ja, Signal finde ich, also Signal ist schon das Beste, was das angeht. So, wie weit sind wir denn eigentlich hier mit User Rejected? So, ich muss nochmal ganz kurz gucken, was wir hier haben. Sind wir schon, ich glaube, das ist die Finalization Stage, oder? Schau mal. Stage 1, Running Clean Code Agent. Okay, das ist der Clean Coder. Der, ah, der geht einmal durch. Okay, okay, okay, okay. Ja, das darf der. Gut.
02:07:01 Let me run ESLint and type check specifically on the modified files. Schon wieder. Ja, dann haben wir hier nämlich ein Denied. Der A-Agent hat wieder Denied, weil das nicht richtig war. Immer wenn es solche Permissions nicht bekommt, dann wird auto-rejected und dann fehlt das Tool an sich. Hm, das gefällt mir nicht. Ja, Stage Test Dev. Die Errors machen es ein bisschen schwieriger, damit umzugehen. So.
02:08:24 Machen wir erstmal das hier fertig. Also ich meine, es funktioniert ja trotzdem. Es funktioniert ja nur sehr viel schlechter. Das Problem fängt schon mit der FFT an, um die BPM zu brechen. Ganz wahrscheinlich von der Tonart. Also so gut bin ich nicht in der Musikberechnung drin, leider. Deswegen, da musst du mal gucken.
02:08:54 Wenn ich das fragen darf, es gibt sicher Möglichkeiten, ein großes LLM auf die unternehmenseigenen, umfangreichen Daten zu beschränken, oder? Wo fange ich an, nach Lösungen zu suchen? Also, boah, was willst du denn machen? Das ist immer die große Preisfrage. Wenn du eine Art Suche machen möchtest, dann ist ein Rack wahrscheinlich das Sinnvollste, was du machen kannst. Also, dass du sozusagen dir einen Retrieval Augmented Graph baust, quasi eine...
02:09:23 Suchfunktion über deine Unternehmensdaten KI unterstützt. Die kannst du dann indexieren, die haben dann so kleine Zusammenfassungen, ob sie für deine Suche relevant sind. Semantische Suche zum Beispiel, habe ich sogar mal ein Video dazu gemacht letztes Jahr. Es ging ein bisschen länger, aber es hat sich gelohnt. Und darüber kannst du die relativ günstig indexieren sozusagen. Wenn du jetzt aber einen festen Stamm hast, also zum Beispiel du hast, keine Ahnung, du
02:09:50 bist die kirche und du möchtest auf kirchenrecht beispielsweise trainieren ja das ändert sich jetzt nicht so häufig das heißt du kannst einfach ein modell nehmen und kannst das fein trainieren auf kirchenrecht da brauchst du aber einen sehr viel stärkeren rechner aber danach hast du ein modell was wirklich spezialisiert ist auf kirchenrecht und extrem gut ist und dass das kannst du dann zum beispiel noch zusätzlich machen
02:10:15 Das heißt, es gibt so diese zwei Arten. Ein Rack kannst du sehr, sehr leicht erweitern, ist aber nicht ganz so tief im Modell drin. Das Modell muss quasi darauf zugreifen. Dann musst du einfach nur das Modell hosten. Easy. Während wenn du es fein trainierst, dann dauert es echt viel. Es ist teuer, aber das kannst du auch machen. Das kannst du schon dann auch bei dir hosten, selbst hosten quasi. Ich möchte die Skills des LLMs nutzen, aber nicht die Halluzinationen aus dem Internet hinzufügen. Das Kirchenrecht ist ein gutes Beispiel.
02:10:44 wenn du das also ich meine du kannst auch einfach das dem modell keine websuche geben wenn du das das tool sperrst für websuche aber halt ein rack anbindest dann ist das eigentlich machbar nehmen wir doch ein 3 super vergleichbar mit quen 120 b a 10 b hat aber einen 7,5 mal höheren datendurchsatz holy shit ja klar doch
02:11:21 jetzt würde ich gerne wissen wie weit wir sind haben es geschafft das haben wir geschafft ok documentation agent so da haben wir unseren dock agent kleine erinnerung wir versuchen immer noch das hier zu machen also das rote hatten wir schon und jetzt haben wir das hier haben wir schon gemacht den ersten teil habe ich blau ich habe nicht blau schade
02:11:41 Das hier haben wir gemacht. Wir haben die Reihenfolge geändert, dass wir quasi Test-Driven-Development haben. Das heißt, der Tester-Agent ist das erste. Jetzt sind wir gerade hier dran, an dem D, dass wir auch noch einen Dokumentations-Agent haben, der erst danach die Reviews starten.
02:11:56 Okay, move controller guidance, cleanup from configuration support plus 15 lines, config doc enabled, config doc timeout variables, CLI und nv integration, no doc agent, CLI flag, cool. Reviewer e-extension, edit documentation, validation, accuracy, no implementation detail, leaks, style consistency, completeness. Das ist fisch.
02:12:23 viel für einen reviewer aber dann hat er wenigstens mal was zu tun e war glaube ich davon nicht so krass benutzt edit documentation prefix routing for reviewer e doc complaints updated guidance prefix gut gut so prompt design gut gut
02:12:51 Übrigens, das mit dem Well Done hat sogar tatsächlich einen Effekt. Es ist wohl sogar so ein bisschen, dass diese positiven Neuronen dann wie so eine Belohnung aufploppen. Bei Claude haben sie irgendwann mal gezeigt. Wenn man positiv damit schreibt, deswegen mache ich das jetzt mittlerweile echt immer. Also ich lasse es drin.
02:13:14 müsste man nicht gezielt die Halluzination filtern betrachten ist ja prinzipiell eine kreative Idee das Problem zu lösen wenn es nicht weiterkommt nur nicht nur nicht jede Idee ist auch sinnvoll ich habe tatsächlich ein paar issues drin wo man quasi wo die KI mich nach guidance fragen muss aber ich habe auch so ein paar Dokumente drin im Projekt jeweils selber die dann sozusagen eine Richtung vorgeben aber ja grundsätzlich sollte man das eigentlich haben
02:13:38 Deswegen versuche ich da noch so eine kleine Änderung reinzumachen. Es funktioniert vor allem für so Sachen wie Refractorings oder sowas. Es funktioniert großartig. Weil bei Refractorings ändert sich ja an sich von Code nicht wirklich was. Aber der Code wird wartbarer. Sprich, du gibst keine Richtung vor für ein neues Feature. Sondern du machst den Code nur in dem Sinne besser halt, wartbarer. Genau. Der liest gerade noch das hier genau. So, wie schaut es hier aus? Ja, hier genauso. Scheiße.
02:14:25 Jetzt haben wir sogar zwei denied. D und E haben denied. Attempt 2 von 10. Ja gut, das werden wir herausfinden. Ich würde tatsächlich die Idee in den Raum werfen, dass der Autodev in einem gewissen Rahmen konfigurierbar ist, dass man zum Beispiel eigene Reviewer oder optionale Reviewer einhängen kann. Der A11Y, also für multisprachlich, äh, Multi...
02:15:03 Multi-Language Support hat. UI App, ja genau. Das soll tatsächlich hiermit machbar sein, also mit diesem Scalen. Da würde ich ganz gerne hingehen, dass man quasi selber einstellen kann, was man haben möchte. Ich meine, die Halluzination kann ja kreative Ergebnisse erzeugen. Joa.
02:15:30 Gucken wir mal. Also wir sind jetzt gerade hier dran bei dem Dokumentationsagent und danach würde ich gerne die skalierbaren Reviewer noch machen. Weil die Reviewer, wenn ihr jetzt nicht irgendwie limitiert seid von den Prompts, sind die ja einfach for free, basically. Die würde ich gerne schon noch hinbekommen. Ich weiß nicht, ob ich das heute noch schaffe. Ich muss heute auch ein bisschen früher los, ist mir aufgefallen. Ich habe nachher noch ein Meeting von YouTube selber. Die haben mich eingeladen zu einem Bootcamp. Mal gucken, um was es da geht.
02:15:57 Und die haben Auftakt um sechs. Das heißt, ich muss so viertel vor sechs einmal kurz weg. Und das geht dann eine Weile. Also viertel vor sechs bin ich dann einfach raus. Weil ich muss noch kurz ein paar Sachen dann richten. Vielleicht auch noch einmal kurz was essen oder so. Weil ich seit heute Mittags nichts gegessen habe. Und was trinken. Und dann schauen wir mal, wie weit wir kommen. Einmal noch eine Stunde. Und wir haben vor allem erst...
02:16:33 53 prozent verbraucht von meinem session limit von claude und morgen kriege ich sogar meine ganzen credits wieder refreshed ist das nicht toll also bei dem einer kommt beim anderen nicht dankeschön das ist nicht nicht selten dass ich meetings habe lustigerweise aber ich würde wirklich gerne sehen dass du hier vorwärts kommst kollege wieder es ist immer wieder dabei ja auch wieder
02:17:12 Es geht immer wieder her und versucht in externes directory zu gehen und dann scheitert es und dann stirbt komplett ohne dass es fertig läuft und du brauchst nicht nach cloud code schauen sondern nach Open code Stopp Stopp Stopp Stopp Stopp Okay
02:18:23 Bei mir ist eine Wave of Reviewers immer so, jo, spawn mal sieben oder acht Reviewer, die dann nach Fehlern suchen. Ich habe zwei Accounts mittlerweile, weil, ja, so Codex habe ich nicht mehr und ich brauche halt echt wahnsinnig viel, weil ich wahnsinnig viel mache. Plus halt Minimax, Minimax fällt da nicht rein. Jetzt bin ich gespannt, die parallelen Reviews, die werden uns wahrscheinlich in den Popo beißen. Die Reviews haben akzeptiert.
02:19:10 Alle akzeptiert, das ist ja wunderbar. Schön, okay, jetzt show me. Jetzt geht es um die Finalisierung. Das war vorhin unser zweiter Bug. Und da wollten wir nicht nur committen, also zu dem Zeitpunkt ist klar, alle Reviewer haben akzeptiert. Wir müssen nicht mehr wirklich irgendwas machen, außer einmal kurz zu committen und dann zu pushen. Und die Quality Checks lassen wir auch nochmal durchlaufen von mir aus. Das ist mir aber echt nicht so wichtig, gerade in dem Moment. So, hier.
02:19:43 Wie gesagt, mich juckt es ja nicht mal, wenn da irgendwie Bugs drin sind in dem Moment gerade. Ich würde sie gerne minimieren. Aber ich weiß, dass Minimax gelegentlich Bugs produziert. Das heißt, die Idee ist quasi, wir nehmen ein günstiges Modell, um möglichst schnell einen Prototypen zu erstellen und dann nehmen wir ein besseres Modell, um den Prototypen production-ready zu bekommen.
02:20:12 Oh, ein gutes Einführungsvideo für Cloud Code. Das beste Einführungsvideo, was du haben kannst, ist ausprobieren. Tatsächlich. Es ändert sich so viel, wenn du dir jetzt ein Video von mir anguckst oder von jemand anders. Selbst wenn es zwei Monate oder drei Monate alt ist erst, es ist alt. Weil mein Verhalten ändert sich fast jede Woche. Wenn ich lerne, was ich an Möglichkeiten habe, dann merke ich plötzlich, was ich automatisch machen lassen kann und wie ich damit umgehe.
02:20:40 Das Wichtigste, was du wissen musst für Claude Code ist eigentlich die Claude.md-Datei. Die benutze ich eigentlich immer. Da stehen quasi die Grundlagenanweisungen drin für Claude. Die kannst du festlegen. Und da weiß dann halt Claude, wie es mit dir umgeht. Da kannst du aber auch auf andere Dateien referenzieren. Also zum Beispiel, ich gebe ganz gerne eine soul.md-Datei mit, damit das Projekt weiß, was...
02:21:05 Oder damit Claude weiß, was die Seele von dem Projekt ist, also worum es mir geht. Da steht dann sowas drin wie, Userdaten dürfen auf gar keinen Fall an den Server geschickt werden. Das heißt, wir müssen alles lokal verarbeiten, was irgendwie sensibel ist oder sowas. Solche Sachen stehen ja da drin. Dann ist das so eine Art Grundguideline und die kannst du dann in deinem ganzen Projekt durchziehen. Genau. Wie gesagt, ich arbeite wahnsinnig gerne mit solchen Reviewern, die mir selber sagen, ob der Code gut oder schlecht ist.
02:21:31 und dann sozusagen das ganze mal verbessern bzw was hier gerne mache ist ich sag dort einfach sporn mal eine welle an reviewern und ja dann kriegen die halt quasi mal feedback und dadurch wird es noch besser habe ich können 3.6 plus schon ausprobiert habe ich noch nicht wollte ich mache aber bei minimax habe ich halt das abo je mehr du lernst umso mehr möglichkeiten siehst du für anwendungsfälle genau das so das hier ist einmal
02:22:05 found the issue look at the difference ja open code has so open code permission system is active and auto rejecting us which aber ganz gerne so behalten when agents run by a cloth they get dangerously skip permissions which bypasses permissions ja aber Claude vertraue ich ein bisschen mehr als open code open code will ich das nicht geben why does the agent want to leave the project
02:22:40 Das ist eine GES, das sehe ich dir an.
02:22:54 There's a package.json, das ist auch eine Lüge. OpenCodes own project discovery, das ist wahrscheinlich eher. Prompt rules state that stay in CVD, but the agent doesn't control where Eislint or TSC look.
Skalierbare Reviewer-Systeme und technische Hürden
02:24:0102:24:01 Die psig v3 sagt es kann den Quellcode nicht modifizieren da dies ein komplexes open source projekt ist gut die psig v3 ist halt auch schon ein bisschen älter Gibt es einen soften einstieg um solche code reviewer im projekt zu installieren Du kannst aber fragen frag ob es fehler findet also wirklich das ist mittlerweile einfach auf englisch fragen findest du fehler Also ich habe wirklich nichts anderes gemacht weil ich schau mal kurz wo ich es gemacht habe Another wave of reviewers please
02:24:30 Das war meine Frage. Also Reviews heißt eigentlich, finde Fehler. Und genau das hat es gemacht. Und hier hat es eben Fehler gefunden. Also es hat quasi sieben Agents gespawnt, die einfach nach Fehlern suchen. Und hat diese Fehler dann gefunden und hat alle soweit gefixt. Gut, das sind hauptsächlich Dokumentationsfehler, ne? Das sieht in Ordnung aus. Machen wir nochmal noch eine Welle. Komm.
02:25:08 So, und hier laufen die Agents einfach, um nachzuschauen, ob da irgendwo, oder wie wir das richtig machen könnten. Und du läufst noch immer. Auf die darfst zugreifen, ne? Aha, jetzt kommen wir vorwärts. So, die Tests laufen. Akkorde, das war's kostenlos. DeepSeq? V3? Oder GL... Ah, du meinst, ähm, QAN 3.6 wahrscheinlich, oder? Ein OpenCode? Wie gut ist das denn?
02:25:57 Dann ist das das Hidden-Modell. So, hier, GPQ. Ähm, wer ist? Okay. Okay, also Mittel. New Spark ist auch neu rausgekommen. Fand ich ganz interessant. Das ist das Modell von Meta. Das schafft extrem viel beim Charg-Siv. Also so multimodale Sachen macht es mega, mega gut. Ja, es ist schon schwächer als Opus.
02:26:58 SWE-Bench wird mich am meisten interessieren, ehrlich gesagt. Also schwächer, ein bisschen schwächer als Cloud Sonnet 4.6. Gut, das ist schon gut. Gemini 3 Flash, okay.
02:27:25 SVA eBench Multilingual. Also Minimax M2.7 soll ein bisschen besser sein. Also wahrscheinlich so On-Par KimiKar 2.5 bisschen schlechter. Ja, kann man machen. Also wenn es gerade so bekommt. Schaut euch das mal an übrigens. Das ist das neue. Das ist also das kommende jetzt. Super GPQR auch interessant. Also sehr gut. SVA Bench Pro. Ist es sogar...
02:27:54 Besser als M2.7. Aha. Also wahrscheinlich so ein paar ungefähr. Es ist ja auch nur 0,01 besser. Ja, krass. GLM 5.1 ist schon beeindruckend auch. Das ist halt lächerlich. Was zum Fick. Sieht gut aus. Also wenn ihr es gerade bekommt, gönnt euch. Das sieht nicht schlecht aus. Das QN ist schon immer ein gutes Modell gewesen. Das ist jetzt einfach nochmal ein bisschen besser als das QN 3.5, das ganz große.
02:28:31 Krass, wie gut M27 ist für Tooling, ne? Terminal Bench gar nicht mal so sehr. Das ist einfach wild. Ah, wir haben es geschafft. Scheiße. Komm mit. Und Files changed. Und wir haben gepusht. Haben wir gepusht? Wir haben gepusht. Ist das da? Das hat geklappt. Geil. Hä? Wie gut. Das war wohl ein Issue, der hauptsächlich Tests gemacht hat. Okay.
02:29:15 Ich habe kurz Gamma 4 erwähnt, als wir es von Modellen gehabt haben, die bei uns auf der Grafikkarte laufen können. Ich wollte so viele Videos noch machen, Leute. Und scheiß Gamma wollte ich sogar noch als Short machen. Wir sind mittlerweile sogar bei den Shorts. Sprengen wir alles, weil wir nicht mehr hinterherkommen. Die Welt hat sich einfach verändert. Ich sag's dir. Das ist insane. Okay, aber das ist doch super. Also ganz ehrlich. Jetzt haben wir noch den Dokumentationsagent eingefügt. Den testen wir gleich nochmal.
02:29:45 erstmal machen wir das hier noch fertig so das ist jetzt auto die welt also das ist das tool das ist jetzt auto der firmen mit dem gucken oder mit dem entwickeln wir die ganzen sachen immer das ist ja ich weiß dass es bei gary code ich weiß ich weiß wie gesagt ich schäme mich ein bisschen für den code und ich wollte ihn noch mal besser machen das ist richtig und wichtig auch richtig und wichtig
02:30:15 Was ist das? Documentation Update Stage. Das ist der neue Dokumentations Agent. So was hätte man eigentlich ausladen können. Claude, ernsthaft mal. Clean Code kann es manchmal nicht so freiwillig. Wenn man schon Shit-Code hat, macht es ihn noch shittier. Ja, ich weiß, das ist meine Schuld. Ich sollte Claude nicht dafür blamen, sondern selber Verantwortung übernehmen. Dafür, dass es mal ein Shell-Skript war, ist es schon echt gewachsen. Fuck. Na gut.
02:30:51 Gemma 4 in Ola, ist es halt geil, weil ihr könnt es einfach bei euch laufen, ihr könnt darüber über die privatesten Sachen sprechen, ihr habt kein Problem, dass da irgendwie an irgendwen was geschickt wird und das Ding hat eine Performance, das ist so stark wie GPT-5, das ist halt richtig, richtig cool.
02:31:08 Das beste zum coden ist immer noch Claude 4.6 Opus 4.6 wenn du Claude credits hast ist das geil Wenn du geld sparen willst ich benutze momentan relativ viel minimax also dieses ganze autodev zeug für die Projekte wird mit minimax gemacht aber das eigentliche komplizierte zeug das mache ich mit Claude und hier selbst die sachen findet immer noch Out of Scope readme stale ja gut das ist wirklich Out of Scope
02:31:40 Unpushed Fast Path Regex Doesn't Match Commit Body. Gut, das ist auch ein bisschen out of scope, aber ist okay. Mach du mal. Ich glaube, danach können wir pushen. So. Okay. Das wäre der Death Agent. Den müssen wir noch testen. Das wäre einmal das hier. So. Und jetzt wollen wir das hier noch skalieren, beziehungsweise wir wollten hier erstmal noch den einen Bug fixen. Ähm.
02:32:12 Ah shit.
02:32:43 If a tool requests permission for an external directory, something is wrong, do not attempt it. Problem says what not to do, never says what to do after rejection. No guidance on scoping CLI tools explicitly. Run the tests suite, no path scoping. Implementer, no path scoping, no path scoping. Clean code.
02:33:11 Das ist ein Problem tatsächlich. Ich will dem eigentlich nicht die vollen Rechte geben. Wie machen wir das? Ah, das würde gehen, ja. Ja, Opus ist schon teuer, das stimmt schon.
02:34:23 Okay, aber das ist doch super. Wenn wir das haben, dann, also das Problem, was wir gerade hatten, war, dass es jedes Mal hier versucht hat, auf externe Tools zuzugreifen. Also quasi Tools, die auf den übergeordneten Ordner zugreifen. Und OpenCode verbietet das korrekterweise, weil ich nicht möchte, dass die auf andere Ordner zugreifen können, die Tools. Das ist hier ein chinesisches Modell, was ich benutze. Das soll bitte genauso contained bleiben. Mehr darf das nicht. Ja.
02:34:53 mittlerweile auch für indie game devs in einem ähnlich starken umfang wie zum beispiel für web dev möglich ist also ich bin im game development noch nicht so tief drin ich habe mir sagen lassen dass viele das schon benutzen also einer hat mit mir mal geschrieben der hat gemeint er hat mittlerweile 90 prozent eher mehr von seinem game mit mit ki tools gecoded
02:35:15 Ich weiß, dass viele Game-Entwickler, aber für die eigentlichen Artworks, also für die Models, für die Characters, für die Animationen und so weiter, für halt das Visuelle, benutzen die meisten eigentlich immer noch die klassischen Tools, was ich eigentlich ganz cool finde. Aber das ist halt die Frage, wenn du jetzt quasi im Assets oder im Store was kaufst, jetzt bei Unreal im Store was kaufst, ist es halt eine Chance von 50-50 wahrscheinlich, dass du auch da KI-Sachen bekommst. Also zum Code schreiben.
02:35:43 Wahrscheinlich mittlerweile viele. Aber ich glaube nicht so viele wie für Webentwicklungen, ehrlich gesagt. Da sind es, glaube ich, echt noch viel, viel mehr. Gut, dann. Hier sind wir. Wobei, wir wissen noch nicht, ob wir hier durch sind. Das kann nochmal ein Pack geben hier beim Dings Agents. So. Wir wollten noch das Letzte machen hier. Und zwar die Reviewer skalieren. So, was wenn wir einen... Was hast du vorhin gesagt?
02:37:07 An Explicit Reviewer for Multilanguage Support. So. Okay. Also was wir machen ist...
02:38:36 Ihr habt gar nicht alles gesehen, ich weiß. Was wir machen ist folgendes. Wir haben uns jetzt gerade dieses System hier überlegt. Den Dokumentationsagent, den haben wir jetzt soweit schon drin. Das hier fixt gerade noch einen Bug. Das war das mit den Zugriffsrechten. Aber was wir noch machen wollten, war hier dieses Skalieren.
02:39:01 Ich habe tatsächlich wegen den Accessibilities, ich habe wirklich einzelne Bugfinder speziell für Accessibility. Es sind glaube ich sieben Stück oder so. Ich weiß gar nicht wie viele es sind, aber speziell die den Code durchgehen, nach Accessibility gucken und dann neue Tickets erstellen. Nur für Accessibility habe ich auch mit reingemacht. Du hast mich da glaubt, also ich glaube, dass du es warst. Hast mich da so ein bisschen drauf aufmerksam gemacht, was genau da eigentlich hinten dran steckt. Und ich lerne noch viel. Ich bin nicht gut darin, aber ich versuch's. So.
02:39:31 Die Idee ist, dass wir hier eine Pipeline haben an Reviewern. Standardmäßig will ich die fünf haben, das ist immer so das, was ich zum Entwickeln benutze. Und neue Agents oder neue Issues kann ich ja dann einfach erstellen. Wenn man zu viele Review hat, wird es, glaube ich, einfach sehr komplex für den Implementer. Aber was ich ganz gerne hätte, ist tatsächlich ein System, wo man einfach sagen kann, so, Reviewer an, Reviewer aus, Reviewer an, Reviewer aus. Ich glaube, ich würde das über Command-Line-Flags machen.
02:39:58 dass ich quasi sagen kann, okay, wenn wir UX machen, UX benutzen, dann können wir halt spezielle UX Agents anschalten, zum Beispiel eben Accessibility oder eben die Multilingual Agents, die dann nochmal zusätzlich eine Review schreiben und eben zusätzlich nochmal annehmen oder ablehnen können. Und das würde ich gerne hier drin machen. Dazu brauchen wir erstmal ein System und das machen wir jetzt hiermit. Tool Scoping. So, jetzt muss ich erstmal gucken, was du hier gemacht hast.
02:40:29 config rough check genau ja so mag ich das flotte analyze dat format wunderbar sehr schön okay okay das sind die proms quasi das hier sind die proms das sagt es mir das ist gut gut gut gut das ist eigentlich bloß überall mal den punkt slash vorne dran oder den punkt dran gehängt damit es halt im ordner bleibt und nicht einmal in den parent folder reingeht
02:41:13 Yes, sieht sauber aus. Wäre es nicht interessanter, wenn du den Task entsprechend Flex gibst und damit die Reviewer gesteuert werden können? Ja. Noch geiler wäre es, wenn ich am Anfang einen Task Estimator hätte. Das ist der, den wir noch einbauen wollten. Mal so irgendwann in der Future Future. Ich mache den mal in grün hier ein. Ich mache mal hier ein E.
02:41:59 der uns quasi selbst vorschlägt welches KI Modell wir dafür benutzen sollen also quasi wie aufwendig das ganze ist und gleichzeitig uns auch Reviewer dafür vorschlägt also sozusagen einer der für uns dann auch die Konfiguration von dem ganzen Tool steuert pro Issue das wäre schon geil für den Anfang ich lasse ja meistens alle, wobei ne stimmt nicht ja schon geil, ja schon geil, könnte ja schon machen ich glaube das wird heute eng werden
02:42:30 Aber Bock drauf hätte ich auf jeden Fall, das merken wir uns mal vor. Auch Paralleles ausführen hätte ich noch Bock drauf, aber das ist nochmal ein ganz anderes, eine ganz andere Hausnummer. Jetzt wird ein Monster, ja, ja, auf jeden Fall. Also vor allem, wenn wir es parallel noch ausführen, dann hast du ja nicht einmal diese Pipeline, du hast die ja potenziell hundertmal gleichzeitig und musst dann am Ende in der Finalisierung wieder alle zusammenfügen mit einem Merch zum Beispiel. Das würde schon gehen, es ist aber echt nicht einfacher.
02:43:09 Du kannst OpenCode eigentlich fast eins zu eins benutzen wie CloudCode. Also, mach ich zumindest so. Richtungsanweiser, den Researcher.
Challenges bei der Parallelisierung und dem Merge-Prozess
02:43:2302:43:23 Ja genau, Git-Worktrees auf jeden Fall. Das Problem ist nicht die Git-Worktrees, das Problem ist, wie kriege ich das am Ende wieder da rein? Also wie merche ich das am Ende wieder? Weil ich muss ja davon ausgehen, dass mehrere Agents dieselbe Datei editieren. Also nehmen wir an, ich habe, sagen wir mal, fünf Issues, die mir sagen, hey, da ist eine 40.000-Zeilen-Datei, schnappt ihr mal den einen Teil und extra hier den raus. Schnappt ihr den zweiten Teil extra hier raus, schnappt den dritten Teil extra hier raus. Wie genau bringe ich die dann alle wieder zusammen? Weil ich kriege auf jeden Fall einen Merch-Konflikt.
02:43:55 Gibt das da nicht Race Conditions bei Parallelisierung? Genau, richtig. Da müsste man auf jeden Fall... Ja, genau. Die müsste Claude dann wieder zusammenbauen. Und das ist... Das weiß ich nicht genau. Also es müsste auf jeden Fall... Der Merch müsste auf jeden Fall dann... Nicht parallel laufen. Ich glaube, Parallelisierung ist nochmal ein ganz anderes Thema. Aber machen wir hier einmal das hier. Machen wir einmal... Also ich will einfach noch das Skalieren von den Reviewern reinbekommen. Und...
02:44:32 Dann will ich vielleicht noch das E reinbekommen, den Estimator. Das wäre schon cool. Ah, haben wir noch was gefunden? One minor finding, review of four flagged. Okay, 70% meines Weekly Limits. Das ist in Ordnung. Okay, aber das war schon mal sehr hilfreich, mit euch darüber zu reden. Vielen, vielen Dank für die krassen Ideen. Ja, Merchant ist Königsdisziplin. Merchant muss eigentlich fast immer klauten.
02:45:19 Mergen macht immer Clawed. So, dann hast du den billigen, billigen Minimax-Agent, der in den meisten Fällen einfach parallel da durchschreibt. Dann hast du 20.000 Trees, von mir aus 100 Trees, die dann ihre eigenen Changes haben. Dann mergt Clawed das alles wieder zusammen. Die Reihenfolge ist ja egal. Wenn die Issues alle valide sind und die Fixes jeweils valide sind, dann solltest du trotzdem das alles reinbekommen, oder?
02:45:58 Ja, stimmt. Vielleicht baut er bei einem späteren Merch wieder eine Regression rein. Du kannst vorher rebasen, bevor du reinmercht. Also quasi, ja, rebase vorher, dann reinmerchen, dann wird das reinmerchen. Wie ja, günstiger. Baust du noch einen Rebase-Agent im Vorfeld, bevor du die Merch-Agent einbaust? Das ist mittlerweile halt nicht mehr ein Agent. Wie viele sind wir jetzt? Einer, zwei, drei, vier, fünf.
02:46:30 10 11 12 agent sind wir bei der aktuellen pipeline er kann jetzt einfach dass bei rebase was schief läuft ja 12 agents bei der aktuellen pipeline 13 wenn wir den evaluator noch mit reinnehmen potenziell noch mal zehn reviewer mehr wenn wir das wollen und dann wollen wir das ganze noch mit märchen machen was soll schon schief gehen dieses also
02:47:04 Review a registry system finde ich gut. Im Matrix, tatsächlich ey. Wer das am Ende noch durchblickt, der möge die Hand heben. Aber ich hoffe, dass uns das einiges an Arbeit erspart, wenn wir irgendwas mal selber wieder reviewen müssen. Der Merge Agent muss checken, auf welchen Commit sein PR bzw. MR zeigt und dann reagieren.
02:47:40 Also ich glaube Claude könnte vor allem also Claude Mythos schafft es auf jeden Fall mit Sicherheit das heißt du kannst du einfach 100 Trees vorbereiten und hast du die Änderungen Claude kannst einfach zusammen mixen wieder Prompts Reviewers Oh ja Abhängigkeiten wirst du nicht also ja gut fair wenn der eine wenn der eine issue vom anderen abhängt dann ist es doof
02:48:14 Brauchen wir noch ein Abhängigkeitsmanagement. Ich sag's euch, das Ding muss eine Software-as-a-Service werden, sonst funktioniert das nicht. Das muss im Hintergrund wirklich laufen. Sonst stirbt uns das. Vielleicht lade ich mal die Beta davon hoch, dann könnt ihr die mal für euch testen, dann können wir zusammen daran weiterentwickeln. Und dann baue ich nebenbei noch die Software-as-a-Service. Ich baue einfach, so jetzt, pass auf, ich baue die Software-as-a-Service mit Autodev, dann entwickelt sich sozusagen der Developer selber weiter.
Zukunftspläne: Software-as-a-Service und Autodev-Estimator
02:48:4602:48:46 Also passiert ja eigentlich gerade schon. Okay, wir haben den Plan. So, show me your plan.
02:48:59 Replaces so dynamic reviewer registry replaces the hardcoded five reviewers with a slug based auto auto discovered user configuration system, okay Ich glaube wir kriegen das Direkt schon rein. Each reviewer has a self-contained template file. Add prompts reviewers slug.md with yaml formatter slug name description
02:49:23 New lib reviewers.sh module centralizes the registry using associative arrays. Config via autodef.yaml with flat keys. Reviewer DisableReviewers EnableReviewerAgent. CLI DisableReviewerSlug EnableReviewerSlug ReviewerAgent SlugAgent
02:49:47 Legacy. Reviewer A through reviewer E. Flex kept as backward compact aliases. Review files instead of review N. Controller prompt updated to use slugs in review rerun lines. Das wird ein größer aus Ding. Okay. Finde ich aber gut. Correctness, issue coverage, security, test quality, architecture. Default true true true true true. Light.
02:50:33 Oh, wir haben Light Mode. Oh, vielen Dank. Nimm ich, nehme ich, nehme ich. Okay. Dann extrahieren wir das Ganze auch mal schön. Ja, perfekt. Ich habe übrigens schon mal angefangen. Nicht wundern dir. Ich habe schon mal angefangen, das mit parallel zu versuchen. Es funktioniert noch nicht so richtig. Das waren so ein paar erste Gedanken, die ich hatte und habe es versucht, mal zusammen zu bekommen. Aber das muss noch sehr viel mehr überarbeitet werden. Aber das sieht super aus. Machen wir. Ähm, DIY Oracle. Ja, Skylight ist nicht so weit davon entfernt.
02:51:17 Okay. Dann lassen wir das mal laufen. So, und während das läuft, machen wir doch hier einmal ganz kurz Max-Istus. So. Dann können wir nämlich nebenbei gucken, ob das noch funktioniert hier. Aha. Module not found. Ah, das macht nichts. Das ist, äh, oder? Internal modules cannot find module. Ja, das macht ja nichts. Das ist in Ordnung. So. Dreimal laufen die Tests.
02:52:01 Schön. So, hier übrigens, für die, die vorhin gefragt haben, Minimax M2.7 Highspeed ist es. Okay, wir sind jetzt gerade hier dran. Oh, das war nicht blau. Wir sind gerade hier dran. Die beiden haben wir. Den hier müssen wir noch machen. Und genau, das Parallelisieren wollen wir auch noch machen. So, jetzt bin ich gespannt, ob wir das nochmal hinbekommen, dass es nicht die ganze Zeit versucht, auf ein externes Repo zu zugreifen.
02:53:03 Let me create the logs directory. Schön. Write the research document. Wrote files successfully. Gut, das ist schon mal schön. Das ist schon mal sehr gut. Das war der, genau. Ah, den haben wir. Der hat funktioniert. Der war gut. Und das war, ja, genau, dass es im Container bleibt. Okay. So, dann research complete. Research written, implementation agent.
02:53:54 Der bekommt einen eigenen KI, gibt immer einen der Familie, der ein bisschen langsam ist. Sehr gut.
02:54:26 Und der ist schon mal nebenbei dran, da einfach das alles umzuschreiben, dass wir die Reviewers haben. Oh Gott, wir haben hier drin schon wieder 29 Grad. Jesus. Jetzt möchte ich sehen, wie du ESLint aufrufst, mein Freund. Ich denke an meine Uhrzeit. Ich danke dir. 20 Minuten haben wir noch. Vielleicht schaffe ich es sogar noch, das irgendwie weiterzumachen. So bis zum nächsten Stream. Ich habe... Ah, nee, ich habe morgen keine Zeit. Scheiße, ich muss ja das Video weitermachen. Vielleicht habe ich am Wochenende ein bisschen Zeit dafür, dass wir hier den E noch reinbekommen. Das wäre schon ganz geil.
02:55:17 Hola! Äh, das ist der falsche. Der hier. Ah, na, da wieder. Jep, da schon wieder. Let me run tests to verify they fail. Nein, das ist nicht erledigt. Die müssen, glaube ich, im Ding nochmal selber drin upgedatet werden. Im Projekt selber. Scheiße. Seid ihr noch da? Ah, bei mir ist gerade der Bildschirm ausgefallen. Ich glaube, dem ist zu warm geworden.
02:56:24 I think it just runs it tests via package.json. via the config files. Vielen, vielen Dank. Das freut mich. Wir brauchen tatsächlich... Ja, hier auch wieder. Oder? Ne, no test files. Hier schafft es das komischerweise. Hier kriegen wir die Tests hin. Hört mir nicht.
02:57:21 Hier, da wieder. Rejected. Und dann haben wir natürlich auch die Files, die nicht gefunden werden. Dann wird auto-rejected. Scheiße, wir müssen tatsächlich Zugriff geben, glaube ich. Sonst funktioniert das nicht. Das kann man abbrechen.
02:58:12 Im Sommer kommt eine Klimaanlage an. Also das wird nicht anders funktionieren. Wo kündige ich meine Streams an? Normalerweise immer auf Instagram. Normalerweise machen wir auch immer oder versuche ich immer donnerstags von 14.30 bis 18.30 zu machen. Es kann sein, dass ich jetzt in der nächsten Zeit mal die Möglichkeit habe, also ich hatte davor immer Sprechunterricht bzw. Gesangsunterricht, damit ich Stimme habe. Das kann aber sein, weil wir jetzt den auf Mittwoch verschieben, dass ich dann am Donnerstag ein bisschen früher anfange.
Praktische Herausforderungen und Stream-Abschluss
02:58:4102:58:41 Aber grundsätzlich mache ich immer Donnerstagnachmittag. Ja, ich muss Klimaanlage anmachen. Also im Sommer geht es sonst hier drin nicht. Weil ja, sonst hast du hier drin halt, keine Ahnung, 38 Grad. Ich meine, ich hatte wirklich den ganzen Winter nicht unter 20, ich glaube, zwei, dreimal hatte ich unter 20 Grad hier drin. Und im Sommer wäre das halt unaushaltbar. Da würde auch die Elektronik kaputt gehen. Das geht nicht.
02:59:07 Also ich auch, fairerweise. Aber ihr müsst dann halt beim Stream ertragen, dass da hinten dran vielleicht was blubbert. Ich versuche sie dann vielleicht ein bisschen leiser zu drehen oder sowas. Aber ich werde sie bald wieder anschließen müssen, wenn es so weitergeht. So. Scheiße, ich glaube, ich werde das wirklich über die Berechtigung machen müssen. Muss ich hoffen, dass es nicht Rogue geht. Mann, ey. Oh.
02:59:41 Fuck, okay. Das ist speziell bei The DMZ Broken. Ha, okay. Ja, da wäre ich halt nicht mal drauf gekommen. Gut, hier kriegen wir die dynamischen Reviewer jetzt. Okay, jetzt Moment, jetzt wird es kompliziert. Wir kriegen Architecture, das ist das Prompt für den Architecture Reviewer. Correctness, Issue Coverage, das ist reviewers.shell.
03:00:45 Das sind die active reviewers okay das ist schon mal gut. Wow das ist eine lange Datei, die lese ich mir nicht durch. Das ist der Security und das ist der Test Quality. Und hier drin wird es quasi... Tja das wird viel cleaner als vorher. Schön. Sehr gut. Okay. Okay das sind viele Änderungen. Ja wäre möglich. Ja ich könnte... Stimmt ich könnte über... Wir könnten es containerisieren.
03:01:30 das Problem ist, dass es dann halt keinen Zugriff mehr auf die ganzen Tools hat und ich habe teilweise auch solche Sachen drin wie hey, benutzt doch mal dieses Tool. Das ist das dumme Problem dabei. Also gerade so zum Reviewen oder sowas.
03:01:46 Die müsste man dann alle in jedem Container machen und ich weiß nicht, also das Ding ist, ich will euch mal kurz ein Gesamtbild geben. Ich mache das halt gerade für mehrere Projekte gleichzeitig, so teilweise bis zu sechs Projekte gleichzeitig und ich habe dieses Parallel hier schon mal testweise implementiert und teilweise war ich dann halt wirklich bei einer Arbeitsspeicherauslastung von 96%.
03:02:11 bei 96 GB Arbeitsspeicher. Dementsprechend ist es fast unmöglich, dann denselben Workload zu haben. Sprich, ich müsste dafür einen Server mieten, was wiederum Arsch viel kostet, was wiederum nicht wirklich sinnvoll ist. Sprich, ich müsste runter skalieren. Deswegen würde ich es ungerne in Container auslagern, weil die brauchen dann halt nochmal sehr viel mehr RAM, nochmal sehr viel mehr Speicher, nochmal sehr viel mehr alles. Allein die Reviewer hier könnten schon eng werden.
03:02:36 Deswegen versuche ich da auch eine leistungsschonendere Sache zu finden, weil ich will das ja auch irgendwie auf dem Server dann laufen lassen. Das ist halt die Frage, ob wir das irgendwie mit dem Container pipen können. Auch Ressourcenfrage, ja alles so ein bisschen. Also halt bei mir lokal Ressourcenfrage, weil ich halt das System komplett ausreize. Und wenn ich noch quasi den Agent mehr reinhauen kann, so parallel, dann mache ich das halt meistens.
03:03:07 Ach!
03:03:32 Zu viel Ressourcenhunger, ja tatsächlich. Oh wow, wir sind fertig, was? Okay.
03:04:56 Das wären unsere anpassbaren Reviewer, falls sie funktionieren. Jetzt bin ich gespannt. Das läuft ja gar nicht.
03:05:38 Tools search upward regardless of punch. Das heißt es liegt am tool selber when you run is and punch as I see
03:06:50 Man könnte ihn wahrscheinlich schlanker gestalten, das wird schon gehen. Ich will halt einen anpassbaren Workflow haben. Und der Workflow an sich ist relativ schlank. Die Sachen an sich laufen meist sequenziell. Also hier, die Sachen laufen sequenziell und die Review habe ich halt fünf Stück und dann ist fertig. Das ist kein Stress in dem Sinne. Das Problem ist, ich will halt das Maximale rausholen, was ich kann.
03:07:22 sprich wenn ich noch mehr rausholen kann dann lasse ich das halt einfach nicht einmal laufen sondern halt parallel irgendwie 20 mal oder 50 mal und das halt nicht bei einem projekt sondern gleich bei mehreren genau ich würde vielleicht tatsächlich opencode irgendwie auf punkt punkt slash gerne also quasi auf das parent directory irgendwie gerne erlauben aha hier die backpacks
03:08:02 Vielleicht lasse ich es dann einfach auf Projects zu. Weil wenn ich es auf Projects zulassen kann, das ist in Ordnung. In Projects sind alle Projekte, die keine Secrets oder sowas haben, die sind sowieso dann in GitHub drin. Das ist eigentlich kein Stress da drin. Das wäre in Ordnung für mich. Oh, man kann Config Docs geben. Oh, I didn't know. Das ist ja mega. Passiert euch das auch in letzter Zeit, dass einfach Cloud Code obendran was abschneidet und man plötzlich nicht mehr weiß, was da passiert? Oh oh.
03:08:52 Oh no. Okay. Von Tool Configs. Ich glaube tatsächlich ja.
03:09:03 Übrigens falls ihr es noch nicht wusstet ihr kriegt momentan bei Cloud Code gratis usage ihr solltet die unbedingt claim ihr kriegt dann wirklich Euro in Token Usage Also ich habe tatsächlich für jeden der beiden Accounts habe ich 170 Euro bekommen an API Credits nur für Cloud Code also nicht für jegliche API aber innerhalb von Cloud Code kann ich jetzt einfach über die Usage ein bisschen reingeben
03:09:29 Also wenn ihr das noch nicht geholt habt, holt euch das auf jeden Fall. Das ist mega geil. Es ist vom Account abhängig. Aber es ist echt geil. Hier, Now Using Extra... Ah, ihr seht es nicht. Now Using Extra Usage macht aber nichts. Ich habe noch ein bisschen über. Die verfallen irgendwie ein bisschen. Aber, ey, ganz ehrlich. Ja genau, habe auch schon meine 17 Euro geholt. Sehr gut.
03:09:54 Also wir sind jetzt nicht aufgeschmissen hier. Ich habe das in der letzten Zeit ein bisschen ausgenutzt tatsächlich. Das würde ich jetzt schon noch gerne fertig machen. Ich glaube, ich mache das einfach weiter während dem Meeting, ganz ehrlich. Ich muss da wahrscheinlich nur zuhören für Sachen, die ich schon kenne. Von dem her mache ich das einfach fertig hier und dann läuft das. Ich würde es gerne nämlich einfach laufen lassen, den ganzen Abend, die ganze Nacht durch. Das wäre schon cool. Da passiert nichts mehr. Das ist sehr schade.
03:10:40 90 tage bei mir lief eins davon am 17 april glaube ich schon wieder aus und das andere läuft am ersten mai also ich weiß nicht genau sind eigentlich ich glaube das nächste mal wenn dein abo sich erneuert läuft aus keine ahnung ja genau zeit tatsächlich
03:11:02 Ich werde das hier trotzdem noch fertig machen. Ich mache euch dann wahrscheinlich wieder nachher eine Story-Update. Ah, 90. Ich meinte auch 90. Also, das Guthaben verfällt bei mir. Das eine davon verfällt schon am 17. April. Das ist nicht lange gewesen. Wobei sie es, glaube ich, nochmal aktualisiert hatten. Ja, wir werden sehen. Soll ich jetzt hier einen Cliffhanger machen, ob wir das hinbekommen oder nicht?
03:11:30 Ich mache einen Cliffhanger. Leute, ich werde mich richten fürs Meeting. Ich werde hier einmal durchlüften. Ich erschwitze hier drin. 29,4 Grad ist heftig. Und genau, werde ich dann nachher auf Instagram eine Update-Story machen. Ich arbeite das System noch ein bisschen weiter aus. Vielleicht kriege ich das sogar bis nächstes Mal hin, dass wir hier das Ganze parallel laufen lassen. Dann können wir zusammen noch am E-Arbeiten, am Estimator. Und gönnt ihr Sherlock und Smartglases. Ich weiß nicht, ob ich Smartglases haben möchte.
03:12:02 permanent facebook meine private umgebung schicken das fühlt sich irgendwie dystopisch an aber ja ich wünsche euch einen wundervollen abends und im besten fall hören wir uns morgen mit einem video im schlechtesten fall hören wir uns samstag oder sonntag mit dem video und ja wir hören uns bis dann ich wünsche euch was