- Fallbeispiel einer vollständigen Portierung des HTML5-Parsers JustHTML von Python nach JavaScript, umgesetzt mit Codex CLI und GPT-5.2 in rund 4,5 Stunden
- Die neue Bibliothek JustJSHTML ist ein HTML5-Parser ohne Abhängigkeiten, besteht 9.200 Tests aus den html5lib-tests und bildet das ursprüngliche API-Design originalgetreu nach
- Der gesamte Prozess lief mit 8 Prompts und einigen Folgekommandos ab, wobei GPT-5.2 9.000 Zeilen Code und 43 Commits automatisch erzeugte
- Das Projekt wurde als vollständiges Open-Source-Paket fertiggestellt, einschließlich automatischer Commits, Tests, Dokumentation und Generierung einer Playground-Seite
- Dieses Experiment zeigt nicht nur die praktische Produktivität LLM-basierter Coding-Agenten, sondern wirft auch neue Fragen zu Urheberrecht, Ethik und Zuverlässigkeit auf
Projektüberblick
- JustHTML ist ein von Emil Stenström entwickelter standardkonformer HTML5-Parser, geschrieben in Python und eine Implementierung, die die gesamten html5lib-tests besteht
- Die html5lib-tests gelten als Standard für Interoperabilitätstests zwischen HTML5-Parsern und werden in verschiedenen Projekten wie Servos html5ever verwendet
- Simon Willison entschied sich, dieses Projekt direkt nach JavaScript zu portieren, und setzte dafür Codex CLI und GPT-5.2 ein, mit minimaler manueller Arbeit
- Das Ergebnis JustJSHTML läuft sowohl im Browser als auch in Node.js und ist in reinem JavaScript ohne externe Abhängigkeiten geschrieben
Entwicklungsprozess
- Im lokalen Umfeld wurden die Repositories justhtml und html5lib-tests geklont und ein neues Verzeichnis justjshtml angelegt
- Codex CLI wurde mit der Option
--yolo gestartet, um das Modell GPT-5.2 auszuführen und Freigaben sowie Sandbox-Beschränkungen zu umgehen
- Im ersten Prompt wurde angewiesen, den bestehenden Python-Code zu analysieren und daraus eine neue JavaScript-API-Spezifikation (
spec.md) zu erstellen
- Als erste Etappe (Milestone 0.5) sollte eine Version implementiert werden, die einfache Tests zum Parsen von HTML-Dokumenten besteht
- Anschließend lief die Entwicklung schrittweise automatisiert über Kommandos wie „Implement Milestone 0.5“ und „commit and push often“
- GitHub Actions wurde eingerichtet, damit bei jedem Commit Tests ausgeführt werden
- Insgesamt entstanden 43 Commits, 9.000 Zeilen Code und ein Ergebnis mit 9.200 bestandenen Tests
Ergebnisse und Artefakte
- Codex CLI verbrauchte insgesamt 2.089.858 Tokens und das Ganze wurde im Rahmen eines monatlichen ChatGPT-Plus-Abos ohne zusätzliche Kosten durchgeführt
- Die fertige Bibliothek enthält unter anderem folgende Funktionen
- API-Erweiterungen wie stream(), query()/matches() und toMarkdown()
- ein no-deps-Unit-Test-Skript sowie CI-Integration
- Detailkorrekturen wie die Behebung eines Fehlers bei der Verarbeitung des Tags
<br>
- playground.html wurde automatisch erzeugt, sodass direkt im Browser getestet werden kann
- README.md enthält Nutzungsanleitung, Build-Prozess sowie Beispiele für Node.js- und HTML-Umgebungen
Erkenntnisse zum LLM-Einsatz
- GPT-5.2 erledigte mit minimaler Aufsicht hunderte Tool-Aufrufe und mehrere Stunden kontinuierlicher Arbeit
- Wenn sich Probleme testgetrieben definieren lassen, können Coding-Agenten eigenständig hochgradig ausgereiften Code erzeugen
- Sprachübergreifende Portierungen sind eine Art struktureller Aufgabe, die LLMs besonders effizient ausführen können
- Die Kosten für Codegenerierung sind faktisch auf ein Niveau von „fast kostenlos“ gesunken, auch wenn die Pflege verifizierten Codes weiterhin Aufwand verursacht
Aufgeworfene ethische und rechtliche Fragen
- Ob eine Urheberrechtsverletzung gegenüber dem ursprünglichen Rust- und Python-Code vorliegt
- Wem das Urheberrecht an von LLMs erzeugtem Code zusteht
- Welche Auswirkungen diese Art der Entwicklung auf das Open-Source-Ökosystem hat
- Wie es um die Zuverlässigkeit automatisch erzeugten Codes und die Verantwortung bei Produktionseinsatz steht
- Ob sich die Qualität mit Code vergleichen lässt, den menschliche Experten über Monate entwickelt haben
Fazit
- Dieses Beispiel zeigt eine neue Phase der Programmierautomatisierung und belegt das praktische Potenzial von AI-Coding-Agenten
- Gleichzeitig bleibt die Aufgabe, rechtliche und ethische Maßstäbe zu definieren und die Formen der Open-Source-Zusammenarbeit neu zu denken
Noch keine Kommentare.