Codex ist jetzt das BESTE Harness für langlaufende Agenten-Tasks
CChase AI
Computing/SoftwareVideo & Computer GamesInternet Technology
Transcript
00:00:00Codex könnte Claude Code mit der Veröffentlichung der brandneuen experimentellen Goals-Funktion schlagen.
00:00:05Codex ist jetzt der einfachste Weg, lang laufende autonome Codierungsaufgaben auszuführen,
00:00:10ohne zusätzliche Orchestrierungsschichten einbeziehen zu müssen. Goals fungiert wie ein
00:00:15anspruchsvollerer integrierter Ralph-Loop. Man gibt ein Ziel vor, und es arbeitet
00:00:19potenziell stundenlang an der Lösung dieses Problems, ohne dass man eingreifen muss.
00:00:25Heute zeige ich euch, wie es funktioniert, wie man es einrichtet, und wir gehen eine echte
00:00:29Demo durch, damit ihr das Ganze in Aktion seht. Heute erstellen wir Rift Salvage, ein 2D-Kampfspiel,
00:00:35das komplett eigene Assets verwendet und das wir rein über Goals erstellt haben. Die Goals-Funktion
00:00:42ist derzeit eines der echten Alleinstellungsmerkmale von Codex und sie ist wahnsinnig einfach zu bedienen.
00:00:47Wir sprechen von einem einzigen Slash-Befehl; hier steckt also eine Menge Wert drin. Egal,
00:00:51ob ihr die Codex-Desktop-App oder das CLI nutzt, ihr müsst Goals aktivieren, da es ein
00:00:56experimentelles Feature ist. Ihr könnt Codex dazu auffordern oder es sehr schnell selbst erledigen.
00:01:01In der Codex-App gehe ich einfach auf Einstellungen und dann auf Konfiguration.
00:01:07Dort, wo „config.toml öffnen“ steht, klicke ich drauf und öffne es in VS Code.
00:01:15Und hier unten müsst ihr zwei Zeilen hinzufügen, falls sie noch nicht da sind: features und dann goals = true.
00:01:22Das war's, sollte etwa zwei Sekunden dauern. Falls das zu kompliziert ist, könnt ihr Codex auch sagen:
00:01:27„Hey, kannst du Goals für mich aktivieren?“. Also features goals = true. Um Goals tatsächlich zu nutzen,
00:01:35tippt ihr in der App oder im CLI einfach /goal. Aus irgendeinem Grund –
00:01:40wahrscheinlich weil es neu und experimentell ist – erhaltet ihr bei /goal
00:01:43zunächst keine Benachrichtigung, dass es funktioniert, aber ihr werdet sehen, sobald wir einen Prompt geben,
00:01:48dass wir ein kleines Abzeichen bekommen, woran wir erkennen, dass Goal aktiv ist. Achtet darauf,
00:01:53Claude Code nach der Aktivierung neu zu starten, damit die Änderungen greifen. Aber beim Befehl
00:01:58/goal seht ihr erst einmal nichts, so wie ihr es normalerweise gewohnt seid, etwa bei einem
00:02:02Skill oder Ähnlichem, wo man direktes Feedback bekommt. Das ist aber okay.
00:02:08Bevor wir Goal in der App demonstrieren, erkläre ich kurz, wie es unter der Haube funktioniert.
00:02:13Aber zuerst ein Wort von unserem heutigen Sponsor: mir selbst. Wie ihr wisst, habe ich in
00:02:18Chase AI Plus die Claude Code Masterclass, aber ich habe gerade auch die Codex Masterclass veröffentlicht.
00:02:24Ihr habt jetzt also zwei Tools, die euch helfen, von Null zum KI-Entwickler zu werden. Das hier ist
00:02:29der beste Ort, um das zu lernen, da ich kein technisches Wissen voraussetze und wir uns auf echte
00:02:34Anwendungsfälle konzentrieren. Wenn ihr darauf zugreifen wollt oder mein kostenloses Webinar in ein paar Tagen
00:02:40hören möchtet: Den Link findet ihr unten im fixierten Kommentar. Hoffe, wir sehen uns dort.
00:02:46Wie eingangs erwähnt, ist Codex Goals im Grunde ein anspruchsvollerer integrierter Ralph-Loop.
00:02:51Was ist ein Ralph-Loop, fragt ihr? Nun, eine kurze Wiederholung für alle, die es vergessen haben.
00:02:57Im Kern ist ein Ralph-Loop, wenn wir ihn in etwas wie Claude Code nutzen, nur eine Zeile Code.
00:03:03Es ist genau diese Bash-Schleife, die ihr hier seht. Die Idee ist, dass ich diese Codezeile ausführe
00:03:09und dadurch Claude Code, Codex oder irgendein KI-System gestartet wird, das sich eine prompt.md-Datei ansieht.
00:03:16Dieser Prompt besagt: „Hey, das ist unser Ziel, so möchte ich es erreichen, und übrigens
00:03:21sind das die Kriterien für den Abschluss“. In diesem Beispiel wollen wir die Testabdeckung für
00:03:28Authentifizierungsdateien erhöhen, was bedeutet, dass wir mehr Tests erstellen müssen.
00:03:33bei 75 % liegt. Das ist das Endziel. Und so würde man diese Schleife starten, und dann
00:03:41die Schleife schaut in den Prompt und speist ihn in die KI-Sitzung ein. Die Sitzung führt einen Durchgang aus,
00:03:48liest den Prompt und auch eine state.md-Datei. Die State-Datei ist im Grunde eine Datei,
00:03:56in der steht: „Okay, bei Aufgabe 1, 2 und 3, was haben wir bisher erledigt und funktioniert es?“
00:04:03Sagen wir, in den ersten Zügen wird Aufgabe 1 erledigt. Im nächsten Zug prüft sie die State-Datei
00:04:10und sieht, dass Aufgabe 2 noch offen ist. Also machen wir in dieser Sitzung oder in Sitzung 2 weiter.
00:04:14Vielleicht klappt es im ersten Versuch nicht; sie sagt dann: „Hey, das habe ich als Nächstes versucht“ usw.,
00:04:18bis alle Aufgaben erledigt sind. Nachdem der Agent seinen Zug gemacht hat, aktualisiert er die Datei,
00:04:25der Zug endet und die Schleife geht weiter. So erhält man eine Art kontinuierliche Schleife,
00:04:30die ständig Dateien abgleicht: Was haben wir getan? Was müssen wir tun? Was ist der Endzustand?
00:04:35Sobald die Abschlusskriterien erreicht sind, heißt es: „Hey, wir sind fertig“. Alles autonom.
00:04:41Das ist die Idee von Ralph-Loops. Damit sie mehr können, braucht es zusätzliches Gerüst,
00:04:48etwa für die Abrechnung. Was tut man? Gibt es eine Art intelligente Token-Nutzung? Nicht unbedingt.
00:04:53Was passiert bei einem Absturz oder einem Abbruch? Woher weiß das System, dass es wirklich fertig ist?
00:04:58Gibt es einen Drittanbieter zur Verifizierung? Nicht wirklich, denn im Kern ist es nur
00:05:02eine einzige Zeile Code. Vergleicht das nun mit Goals. Goals funktioniert im Großen und Ganzen genauso:
00:05:08Wir geben eine Anweisung, es hat einen Plan und aktualisiert intern Dateien wie:
00:05:15„Das habe ich getan, das fehlt noch“, um diesen Endzustand zu erreichen. Das Prinzip ist gleich.
00:05:19Allerdings gibt es einige Unterschiede. Zuerst einmal haben wir zwei Markdown-Dateien,
00:05:23die für den Nutzer im Grunde unsichtbar sind: Continuation und Budget Limit. Was bewirken diese?
00:05:29Sie erlauben es Codex, anders zu agieren, wenn Nutzungslimits erreicht werden,
00:05:35was sehr wichtig ist. Es gibt also einen sauberen Abschluss, wie das System eine Aufgabe
00:05:40in einer Goals-Schleife im Vergleich zu einem Ralph-Loop handhabt. Beim Ralph-Loop ist bei Budgetende
00:05:46einfach Schluss. Codex hingegen findet einen Weg, einen Punkt zu erreichen, an dem man später weiterarbeiten kann.
00:05:52In der Realität läuft Codex seinen Zug im Goals-Loop durch, und wenn dieser endet,
00:05:57gibt es vier mögliche Pfade: Erstens, wenn noch Arbeit ansteht und das Budget reicht,
00:06:03machen wir einfach weiter. Zweitens, wenn wir nah am Token-Limit sind, wird die
00:06:08budget limit.md Datei eingefügt, der Zug wird sauber beendet und man erhält einen
00:06:13Abschlussbericht über das Erreichte und die nächsten Schritte bei einer Limiterhöhung. Drittens,
00:06:19wenn das Projekt fertig ist, erfolgt ein Update-Goal-Toolcall; der Status wird geändert,
00:06:25Ergebnisse werden geprüft, und wenn alles passt, ist das Ziel erreicht. Viertens haben wir Wege,
00:06:29Ziele zu pausieren, zu bearbeiten oder mit Abstürzen umzugehen. Falls etwas schiefläuft,
00:06:34sind wir nicht aufgeschmissen wie bei einem herkömmlichen Ralph-Loop. Es ist also etwas
00:06:39ausgereifter, obwohl das Grundkonzept ähnlich ist – und wir brauchen keine zusätzliche Orchestrierung.
00:06:45Das Ganze sollte euch bekannt vorkommen, wenn ihr je mit Tools wie GSD oder Superpowers
00:06:49gearbeitet habt. Das sind Orchestrierungsschichten für Claude Code, um genau das zu tun,
00:06:54was wir hier in Codex mit Goals per Slash-Befehl erledigen. Da es nur ein Befehl ist,
00:06:59ist es super einfach auszuführen. Man muss keine 40-minütige Demo zu GSD ansehen,
00:07:05man tippt einfach /goal und Codex legt los. Vor diesem Hintergrund testen wir es jetzt mal.
00:07:11Zuerst versetzen wir es in den Planungsmodus – ein Wechsel zu Goals ist danach leicht möglich –
00:07:18und lassen es ein Top-Down-Arcade-Survival-Spiel für uns erstellen. Dabei soll es
00:07:24alle Assets selbst generieren. Das Coole an Codex im Vergleich zu Claude Code ist,
00:07:30dass wir als OpenAI-Produkt Zugriff auf die GPT-Bildgenerierung haben. Es wird also
00:07:35alle Assets für dieses Spiel selbst erstellen: ein Spieler-Drohnen-Sprite, drei Gegnertypen,
00:07:39einen Boss, Energiekerne, Minen, Hintergründe, UI-Elemente. Ich lasse es einiges erstellen.
00:07:44Der Prompt ist recht anspruchsvoll, da das Ganze sehr lange laufen kann. Ich sollte euch
00:07:49den Screenshot zeigen von dem Typen, der es 50 Stunden am Stück hat laufen lassen. Ob das
00:07:56der beste Weg ist, sei dahingestellt, aber die Idee ist: Wir haben eine vage Vorstellung, gehen in den
00:08:01Planungsmodus, verfeinern das Ganze und – ganz wichtig – wir müssen extrem präzise sein,
00:08:07wie das Endergebnis aussehen soll. Ohne ein sehr spezifisches, quantifizierbares Ziel,
00:08:15das zur Beendigung der Schleife erreicht werden muss, wird das Ergebnis eher mittelmäßig oder
00:08:18unfertig sein. Ich empfehle daher dringend, den Planungsmodus zu nutzen und den Plan
00:08:23wirklich auszuarbeiten, statt nur zu sagen: „Mach mir ein SaaS-Produkt, das Milliarden verdient“.
00:08:31Hier ist der Plan für unser Spiel. Bei der Verifizierung wird es genau darauf schauen;
00:08:36das wird getestet, bevor es als fertig gilt: „npm run build“ ausführen, alle Fehler beheben,
00:08:43den Dev-Server starten, die lokale URL bereitstellen, ein automatisiertes Playwright-Skript
00:08:50ausführen, das die App öffnet, den Canvas-Inhalt prüft, Tastaturbewegungen und Sammel-Events
00:08:55simuliert, Schaden und Gesundheitsänderungen bestätigt, Boss-Siegzustände und UI prüft und so weiter.
00:09:02Das ist es, worauf es ankommt. Wenn ihr die Verifizierung anseht und sagt: „Wenn das alles
00:09:07erledigt ist, bin ich zufrieden“, dann könnt ihr loslegen. Wenn es heißt: „Plan umsetzen“,
00:09:12könnt ihr /goal nutzen, um diesen Plan zu implementieren, und absenden.
00:09:17Und hier oben seht ihr dieses kleine Abzeichen mit der Aufschrift „Goal“.
00:09:24Jetzt weiß ich, dass Goal aktiv ist, und es steht auch hier. Wie gesagt,
00:09:29beim Befehl /goal kommen keine direkten Befehle, aber es funktioniert.
00:09:34Ich halte das für einen UI-Fehler des experimentellen Features. Es zeigt noch Planungsmodus an,
00:09:39also brechen wir das Ziel ab und sagen: „Nutze Goal, um diesen Plan umzusetzen“. Noch etwas ungeschliffen,
00:09:44aber mal sehen, was es für uns tut. Die Idee ist, dass ich jetzt nichts mehr tun muss.
00:09:49Es führt seinen Ralph-Loop bzw. sein Goal-Ding aus, und am Ende haben wir ein fertiges Produkt.
00:09:54Es arbeitet jetzt seit etwa 12 Minuten und erstellt bereits all die verschiedenen Assets
00:10:02mit dem Image-Gen-2-Modell, was ziemlich cool ist. Ein weiterer Vorteil der Desktop-App
00:10:09gegenüber dem reinen Terminal ist, dass all dies direkt im Verlauf angezeigt wird.
00:10:12Ich persönlich bin sehr beeindruckt von der Codex-Desktop-App. Nicht, dass ich Claude Code
00:10:17nicht mehr liebe; ich nutze beide Tools abwechselnd. In meinem letzten Video habe ich erklärt,
00:10:28dass die Entscheidung für nur eines dieser Tools unsinnig ist. Warum nicht beide nutzen?
00:10:34Oft sogar beide zusammen. Bei Claude Code bleibe ich rein im Terminal,
00:10:39aber bei Codex genieße ich die Desktop-App – vielleicht auch einfach als willkommene Abwechslung
00:10:43zum ständigen Arbeiten im Terminal. Bisher gefällt es mir also sehr gut.
00:10:49Nach etwa 30 Minuten hieß es, es sei fertig – schneller als ich dachte.
00:10:54Schauen wir uns das Ergebnis des ersten Durchgangs an. Da es so schnell ging, werde ich
00:11:00am Ende wohl noch um ein paar Ergänzungen bitten. Rift Salvage wurde implementiert;
00:11:06der lokale Dev-Server läuft. Es ist ein Canvas-Spiel mit Tastatur-/Touch-Steuerung, Gegner-Spawning,
00:11:11Minen, Scoring, Shield-Power-ups, Boss-Phasen, Sieg/Niederlage, Pause und Neustart.
00:11:1511 Image-Gen-Bitmap-Assets mit Alpha-Masken, automatisierter Playwright-Prüfer –
00:11:20und es zeigt uns alles, was gebaut wurde. Ziemlich cool. Mal sehen, ob es funktioniert
00:11:26und was wir noch hinzufügen können, um es etwas mehr zu fordern. Öffnen wir es mal im Browser.
00:11:32Okay, wir haben einen Ladebildschirm. Der Kontrast ist etwas schwach, vielleicht schwer zu erkennen,
00:11:38aber ich habe mein kleines Raumschiff. Das ist eine Mine; ich soll diese Dinger wohl einsammeln,
00:11:44während Gegner auftauchen und mich jagen. Es funktioniert und sieht cool aus.
00:11:49An der Grafik könnte man noch arbeiten, aber es ist beeindruckend, dass alles hier
00:11:56als eigene Bilder erstellt wurde. Ich denke, wir könnten – zuerst möchte ich den Bosskampf sehen,
00:12:03ob wir das beschleunigen können, und ein Kampfsystem mit Lasern oder so hinzufügen.
00:12:10Machen wir das doch direkt. Ich schalte in den Planungsmodus und lasse es härter arbeiten.
00:12:17Okay, das war ein guter erster Durchgang. Alles läuft, aber ich möchte es komplexer.
00:12:27Können wir ein Kampfsystem hinzufügen, etwa Laser, mit denen wir auf Gegner schießen,
00:12:32während diese zurückschießen? Könnte die Boss-Phase schneller kommen oder per Knopfdruck starten?
00:12:39Könnten wir auch den Kontrast anpassen? Aktuell verschmilzt alles mit dem Hintergrund.
00:12:49Falls du weitere Ideen hast, um das Ganze komplexer zu machen und dich an deine Grenzen zu bringen,
00:12:56lass es mich wissen. Das ist der Plan, den es erstellt hat. Wichtig bei der Nutzung des
00:13:00Goals-Systems: Jeder Goal-Lauf ist an den jeweiligen Thread oder die Sitzung gebunden.
00:13:04Wir waren im selben Chat, also im selben Goal-Thread. Für einen zweiten Goal-Lauf
00:13:11am selben Projekt müssen wir einen zweiten Thread oder Chat öffnen – wie ein neues Terminal.
00:13:15Ich kopiere also diesen Plan, öffne einen neuen Chat, tippe /goal und füge ihn dort ein.
00:13:19Nach 15 Minuten war der zweite Durchgang fertig. Das Kampf-Upgrade wurde implementiert.
00:13:24Schauen wir uns das Spiel jetzt an. Hier ist wieder der Ladebildschirm, ähnlich wie zuvor,
00:13:31aber oben wurden ein paar Widgets hinzugefügt: Target Combo und ein Boss-Signal.
00:13:37Wenn wir starten, feuere ich direkt meine Waffe ab; die Gegner schießen zurück und haben Trefferpunkte.
00:13:42Ich kann auch das Boss-Signal aktivieren. Da ist der Boss – sieht ziemlich stark aus.
00:13:49Das Coolste an diesem Projekt waren die einzigartigen Assets. Alles ist ein Original-Asset,
00:13:53das mittels Image-Gen-2 erstellt wurde, was ich echt klasse finde. Insgesamt hat es
00:13:58nur etwa 45 Minuten für beide Durchgänge gedauert, während manche Leute es laut Screenshots
00:14:07drei Tage lang laufen lassen. Aber das Beste daran ist, wie einfach die Ausführung dieser
00:14:12Ziele ist. Man gibt ein Ziel vor, und das System legt los, sofern man klare Kriterien hat.
00:14:18Haben wir gewonnen? Ich weiß nicht, ob wir gestorben sind, aber wie gesagt: Wenn man einen
00:14:24klaren Nordstern und Erfolgskriterien hat, kann man eine Menge daraus herausholen,
00:14:33und das Ganze kann quasi ewig laufen. Anstatt einen eigenen Ralph-Loop mit Gerüst
00:14:40aufzusetzen oder externe Orchestrierungsschichten wie GSD oder Superpowers zu nutzen,
00:14:44ist es hier einfach eingebaut. Man kann damit komplexe Dinge umsetzen, die in
00:14:50Claude Code schwieriger wären. Wir hätten das zwar auch mit Claude Code machen können,
00:14:56hätten dann aber das Higgsfield CLI oder MCP für die Bildgenerierung einbinden müssen,
00:15:01statt ein so integriertes, ganzheitliches System zu haben. Ich hoffe, das Video war hilfreich.
00:15:09Schaut euch Codex auf jeden Fall mal an; mir gefällt die Desktop-App wirklich sehr.
00:15:13Man hätte das auch im Tandem mit Claude Code machen können: Den Plan in Claude Code erstellen,
00:15:19dann für Goals in Codex werfen und Claude Code die Ergebnisse prüfen lassen. Dieses
00:15:24Zusammenspiel bietet oft den größten Mehrwert – getreu dem Motto, dass das Ganze
00:15:30mehr ist als die Summe seiner Teile. Lasst mich wie immer wissen, was ihr denkt.
00:15:36Schaut bei Chase AI Plus vorbei, Link im fixierten Kommentar. Dort findet ihr auch
00:15:43den Link zum Webinar in ein paar Tagen. Hoffe, wir sehen uns dort. Bis bald!
00:15:48Sieg- oder Niederlagezustände, Pause und Neustart. 11 mit Image Gen 2 erstellte
00:15:54Bitmap-Assets mit Alpha-Masken, automatisierter Playwright-Tester.
00:15:59Anstatt einen eigenen Ralph-Loop mit Gerüst aufzusetzen oder etwas Externes
00:16:05als Orchestrierungsschicht wie GSD oder Superpowers zu nutzen,
00:16:10ist es hier einfach eingebaut. Ihr könnt damit tolle Sachen umsetzen,
00:16:15die in Claude Code schwieriger wären. Hätten wir Claude Code genutzt,
00:16:18hätten wir das Higgsfield CLI oder MCP für die Bildgenerierung gebraucht,
00:16:24statt dieses eine integrierte, ganzheitliche System zu haben. Ich hoffe,
00:16:31dass ihr aus diesem Video etwas mitnehmen konntet. Schaut euch Codex an,
00:16:35ich mag die Desktop-App wirklich sehr. Und wie gesagt:
00:16:40Wir hätten das auch im Tandem mit Claude Code machen können: Plan erstellen in
00:16:44Claude Code, dann ab zu Codex für Goals, Claude Code die Arbeit prüfen lassen
00:16:49und so einen Austausch haben. Da sehe ich den größten Wert; es ist wie das Konzept,
00:16:53dass das Ganze mehr ist als die Summe seiner Teile. Lasst mich wie immer wissen,
00:17:02was ihr denkt. Schaut bei Chase AI Plus vorbei, Link im fixierten Kommentar.
00:17:07Dort ist auch der Link zum Webinar in ein paar Tagen. Wir sehen uns!
00:17:12Macht's gut und bis zum nächsten Mal.