Le projet
D'où vient Dinoer, ce qu'il a gardé et ce qu'il a retiré, comment une mesure du 14 août 2026 a restreint ce qu'il affirme de lui-même, et qui le construit.
Dinoer est une dérivation de Diwall 1.21.0, créée le 25 juillet 2026 et reconstruite le 9 août 2026 à partir de Diwall 1.23.0. De Diwall, il garde le cœur d’exécution : naviguer, remplir un champ, cliquer, attendre, résoudre un identifiant dans le processus du navigateur. Il a retiré la couche qui permettait à un modèle de regarder une page : captures d’écran, numérotation Set-of-Mark, modèle de vision.
Le postulat : pour se servir d’une page, un modèle a besoin de la lire, pas de la voir.
Comment il s’est construit
Trois étapes. La troisième a changé ce que le projet dit de lui-même.
Le resserrement. Le retrait de la couche de perception laissait un manque :
lire le texte nettoyé d’une page quand l’arbre d’accessibilité ne suffit pas.
L’action extraire_texte l’a comblé le 11 août.
La chaîne de recherche. campagne.py enchaîne la découverte par SearXNG,
la collecte HTTP légère, le passage au navigateur pour les pages qui l’exigent,
et un rapport rédigé par un modèle délégué. Sur une campagne territoriale
menée les 11 et 12 août, la première version de l’étape du rapport (mettre le
corpus bout à bout, le couper à 60 000 caractères) écartait les pages les plus
pertinentes. Un filtre sur la période recherchée et un classement sémantique
l’ont corrigé, mesure faite sur le même corpus.
L’épreuve de l’affirmation. Le 14 août, une campagne a surpris le modèle
délégué en train de lancer douze recherches web de lui-même. Elles ont été
interdites le jour même, et la faille qui reste, curl par bash, est
documentée. Quelques heures plus tard, une seule question posée à un assistant
de recherche généraliste a fait remonter trois pages que la découverte par
SearXNG de Dinoer n’avait pas trouvées. L’affirmation du projet a été réécrite
le soir même : non plus « trouve davantage qu’une recherche web », mais « un
rapport qu’on peut ramener à un ensemble fixe de pages collectées ».
La mesure →
Ce qui n’a pas changé, et ce qui a changé
Il tourne sur votre machine. La collecte, les identifiants et le répertoire chiffré restent en local. La recherche passe par une instance SearXNG de votre choix, locale ou distante ; le rapport, par un modèle que vous configurez.
Il compte son passage et ne force aucune porte. Chaque appel indique les pages et les actions qu’il a consommées. Une page qui refuse l’accès est notée comme refusée et n’est pas retentée par un autre chemin.
Ce qui a changé. Dans Diwall, l’agent ne fait que ce qu’énumère un fichier de scénario. La chaîne de recherche de Dinoer confie en plus un jugement à un modèle : une page répond-elle à la question, deux pages décrivent-elles le même événement. Ce modèle est tenu à l’écart du web, avec une faille, décrite sur la page consacrée à la confiance.
Le journal de développement
Daté, du plus récent au plus ancien, écrit pendant le travail, revirement du 14 août compris.
Qui le construit
Trois participants.
Ronan Davalan : architecte et arbitre. Vision du produit, exigences de sécurité, direction ; il valide chaque décision d’architecture.
Claude Code (Anthropic) : ingénieur système et développeur principal. La
dérivation du cœur d’exécution de Diwall, la chaîne de recherche
(campagne.py, lib/searxng.py, lib/fetch_leger.py,
lib/selection_candidats.py, lib/extraction.py, lib/tables_reference.py,
lib/cache_recherche.py), le retrait de la couche de perception. Auteur
principal du code source.
Gemini (Google) : synthèse et conseil stratégique. Analyse indépendante de l’architecture, contre-vérification des décisions techniques.
Où il en est
Quatre programmes (shot.py, rpa.py, campagne.py, journal.py), un
répertoire chiffré pour les identifiants, des scénarios vérifiés contre un
schéma JSON avant le démarrage du navigateur, une documentation en quatre
langues, un paquet .deb et une installation par clone Git.
Téléchargements →