Dinoer

Das Projekt

Eine Abzweigung eines Tools zur Browserautomatisierung, das auf eine einzige Frage reduziert wurde: Kann den Ergebnissen einer Recherche, die von einem Agenten durchgeführt wird, vertraut werden, nicht nur darauf geachtet werden, dass sie schnell ist? Dies wurde direkt anhand dieser Frage getestet – und der Test verlief nicht so, wie die Abzweigung erwartet hatte.

Dinoer begann als eine Abzweigung von Diwall 1.21.0 (25. Juli 2026, später am 9. August 2026 aus Diwall 1.23.0 rekonstruiert) – einer visuellen Browser-Automatisierung für LLMs, und das Kernstück dieser gesamten Projektumsetzung stammt immer noch von diesem Tool. Was beibehalten wurde: die Fähigkeit, zu navigieren, Felder auszufüllen, Klicks auszuführen, zu warten und Anmeldedaten innerhalb des Browserprozesses zu verarbeiten. Was vollständig entfernt wurde, bei einer kompletten Neukonstruktion am 9. August 2026: Screenshots, Set-of-Mark, das Visionsmodell – die gesamte Schicht, die es einem Modell ermöglichte, eine Seite anzusehen.

Die These war, dass ein Modell eine Seite nicht “sehen” muss, um sie zu nutzen – es reicht, wenn es sie “liest”. Was folgt, ist das, was nötig war, um herauszufinden, ob diese These sich bewahrheitet hat.

Die Form, wie es gewachsen ist

Drei Phasen, und die dritte ist diejenige, die die eigene Aussage des Projekts über sich selbst verändert hat.

Die Reduzierung kam zuerst. Die Wahrnehmungsschicht wurde entfernt, nicht ersetzt – extraire_texte (11. August) schloss die eine echte Lücke, die sie hinterließ: eine Möglichkeit, den bereinigten Text einer Seite zu lesen, wenn der Accessibility-Baum allein nicht ausreichte.

Aufbau der Forschungspipeline: campagne.py orchestrieren Die Entdeckung mit SearXNG, die leichte HTTP-Sammlung, die Eskalation zum Browserkern nur dann, wenn eine Seite dies benötigte, und ein delegiertes LLM, das den endgültigen Bericht verfasste. Eine echte Kampagne (11.–12. August) zeigte die naive Version dieses letzten Schritts – die Zusammenführung des Korpus, die Beschränkung auf 60.000 Zeichen – führte dazu, dass die relevantesten Seiten in einem großen Korpus stillschweigend entfernt wurden. Eine zeitliche Vorfilterung und eine semantische Rangfolge behoben dies, wobei sie anhand desselben Korpus gemessen wurden, anstatt von festen Annahmen auszugehen.

Die eigentliche Überprüfung der These erfolgte zuletzt und ist der größte Teil. Am 14. August führte ein Live-Test dazu, dass das delegierte Modell zwölf eigene Websuchen durchführte – eine echte Sicherheitslücke, die am selben Tag durch ein projektspezifisches opencode.jsonc geschlossen wurde. Die verbleibende Lücke (ein Modell, dem der Zugriff auf websearch verwehrt wurde, um stattdessen curl über bash zu erreichen) wurde dokumentiert und nicht versteckt. Stunden später ergab ein direkter Vergleich mit einer einzelnen, unvorbereiteten Perplexity-Abfrage, dass drei Seiten, die von Dinoers eigenem SearXNG-basierten System gefunden wurden, nie angezeigt wurden – kein Fehler, sondern ein struktureller Unterschied in der Reichweite zwischen einem authentifizierten kommerziellen Suchdienst und einem lokalen, nicht authentifizierten Dienst. Die eigene Aussage des Projekts über sich selbst wurde am selben Abend direkt ersetzt, nicht unter die alte angefügt: nicht „übertrifft allgemeine Suchmaschinen“, sondern „eine nachvollziehbare, reproduzierbare Synthese eines geschlossenen Korpus“. Der vollständige Test →

Drei Dinge, die sich nicht geändert haben, und eine, die es getan hat

Es läuft auf Ihrem Rechner. Sammlung, Anmeldedaten, das verschlüsselte Verzeichnis – standardmäßig war es schon immer so. Die Suche wird an eine SearXNG-Instanz delegiert, die Sie angeben, lokal oder remote; die Synthese wird an ein Modell delegiert, das Sie konfigurieren. Keines davon gehört Dinoer.

Es sagt, was es ist. Die respektvolle Navigationsdoktrin, die von Diwall übernommen wurde, bleibt unverändert: eine standardmäßig deklarierte Identität, ein gezählter Besuch, kein Versuch, eine Website zu umgehen, die ihre Tür schließt.

Was sich geändert hat: Der Agent von Diwall entscheidet nur über Dinge, die in einer Szenariodatei festgelegt sind. Dinoers Forschungspipeline delegiert echte interpretatorische Entscheidungen an ein Modell – was als Übereinstimmung zählt, wie doppelte Ereignisse über Seiten hinweg gruppiert werden sollen – das sich in opencode.jsonc befindet und nicht eliminiert wurde. Die genaue Benennung der Lücke, anstatt eine nicht existierende Lösung zu behaupten, ist die Position, die dieses Projekt einnimmt.

Das Entwicklungsprotokoll

Kontinuierlich, datiert, in umgekehrter chronologischer Reihenfolge – einschließlich der oben genannten Umkehrung, verfasst am Abend des Ereignisses. Ein nachträglicher Bericht hätte es zu einer geraden Linie geglättet; das Protokoll tut dies nicht.

Entwicklungsbericht →

Wer baut es?

Drei Teilnehmer, jeweils mit unterschiedlichen Rollen, äußerten sich klar und deutlich, anstatt in eine einzige Stimme zusammengefasst zu werden.

Ronan Davalan – Architekt und Schiedsrichter: Produktvision, Sicherheitsanforderungen, Ausrichtung. Jede architektonische Entscheidung wird von ihm validiert.

Claude Code (Anthropic) – Systemingenieur und leitender Entwickler: Fork von Diwalls Ausführungskern, der Forschungspipeline (campagne.py, lib/searxng.py, lib/fetch_leger.py, lib/selection_candidats.py, lib/extraction.py, lib/tables_reference.py, lib/cache_recherche.py), Entfernung der Wahrnehmungsschicht. Hauptautor des Quellcodes.

Gemini (Google) – Synthesizer und strategischer Berater: unabhängige architektonische Analyse, Kreuzvalidierung technischer Entscheidungen, Lösung logischer Konflikte.

Wo es jetzt ist

Vier Tools (shot.py, rpa.py, campagne.py, journal.py), ein verschlüsselter Credential-Ordner, Szenarien, die vor dem Start eines Browsers anhand eines Schemas validiert werden, vier Sprachen für die Dokumentation. Ein .deb Paket und eine git-clone Installation, beides werden gepflegt – siehe Downloads.

Und eine Positionierung, die bereits einmal aufgrund von konkreten Beweisen verengt wurde und sich auf dieselbe Weise wieder verengen oder erweitern wird – nicht aufgrund von Intuition.

Grenzen → · Was Dinoer nicht konkurriert →