Aller au contenu

À propos

Une seule personne. Un développeur logiciel qui s’est intéressé il y a quelques années à l’automatisation de navigateur et à l’extraction de données web, a trouvé les outils existants soit trop bas niveau, soit trop contraints, puis a commencé à construire l’outil qu’il voulait réellement utiliser. Ce projet est devenu Guida.

Il n’y a pas d’entreprise derrière ce projet. Pas de startup, pas d’équipe, pas d’investisseurs, pas de comité consultatif. Les décisions architecturales, éthiques et commerciales sont prises par la personne qui écrit cette phrase. C’est une limite évidente à certains égards et une qualité à d’autres. Cela signifie que le projet peut parler honnêtement des compromis sans les filtrer par un service marketing. Cela signifie aussi que le bus factor est de un.

Si vous avez téléchargé Guida et que Windows a affiché un avertissement SmartScreen, c’est attendu. Le binaire n’est pas signé.

Les certificats de signature de code exigent soit une organisation avec une identité juridique vérifiable, soit un processus de validation étendue qui coûte plusieurs centaines de dollars par an et suppose une structure d’entreprise. Un développeur seul qui distribue un logiciel gratuit ne rentre pas facilement dans ce modèle. Le certificat coûterait plus cher que ce que le projet rapporte, c’est-à-dire rien.

L’avertissement SmartScreen ne signifie pas que le logiciel est malveillant. Il signifie que Microsoft n’a pas encore vu assez d’installations pour établir un score de réputation, et qu’aucune autorité de certification n’a garanti l’identité de l’éditeur. Lorsque vous cliquez sur “Run anyway”, vous dites à Windows que vous avez pris la décision consciente de faire confiance à ce binaire précis. C’est raisonnable, ou non, selon votre propre tolérance au risque.

Guida est actuellement distribué comme application Windows à code fermé. La couche d’automatisation de navigateur et d’extraction de données propre au produit restera fermée.

Cette frontière est délibérée. La couche d’extraction est la partie la plus liée à Guida comme produit, et c’est aussi celle où la redistribution facile de versions modifiées pourrait supprimer les garde-fous de la capacité la plus risquée.

L’infrastructure réutilisable qui l’entoure est différente. Le moteur de scripting, la gestion des identifiants d’accès, la traçabilité et le code de support associé seront publiés en open source une fois extraits, stabilisés et suffisamment documentés pour être utiles en dehors de l’application. Je ne publie pas encore de date, car cette frontière d’extraction doit encore être rendue propre, mais la direction est intentionnelle.

Voir Code source ouvert et code source fermé pour une analyse plus complète.

Une partie de l’infrastructure créée pendant la construction de Guida est déjà publique :

  • JanetSharp — intégration du runtime Janet pour .NET.
  • StratQueue — files de travail basées sur SQLite avec stratégies d’extraction enfichables.

Guida n’est pas une entreprise. Il n’y a pas de feuille de route dictée par des études de marché, pas de priorisation des fonctionnalités fondée sur des enquêtes utilisateurs, pas de métriques de croissance. Il n’y a ni contrat de support ni SLA. Si quelque chose casse, c’est corrigé parce que le développeur utilise le logiciel et l’a remarqué, ou parce que quelqu’un l’a signalé et que la correction était raisonnable.

C’est un outil qui existe parce qu’il valait la peine d’être construit, maintenu par la personne qui l’a construit, utilisé par les personnes qui le trouvent utile. C’est tout le modèle économique, moins l’économie.

Guida inclut g.tts.speak() — synthèse vocale locale via le moteur TTS intégré de Microsoft. L’entrée vocale basée sur Whisper est en cours. Aucun de ces éléments n’a été conçu comme fonction d’accessibilité, et je ne vais pas les présenter ainsi après coup.

Mais voici ce que je remarque. La direction que prend Guida — un agent piloté par LLM qui navigue dans des interfaces web arbitraires par vision, dit ce qu’il voit et écoute ce qu’il doit faire ensuite — est un outil fondamentalement différent d’un lecteur d’écran basé sur le DOM. Il ne lit pas les libellés ARIA et ne parcourt pas l’arbre d’accessibilité. Il regarde l’écran comme le ferait une personne. Cela veut dire qu’il ne casse pas sur les applications fortement basées sur canvas, les applications monopages complexes ou les composants personnalisés qui n’ont jamais implémenté un balisage sémantique correct, parce qu’il ne lit pas du tout le DOM.

Que cela devienne réellement utile pour les personnes qui trouvent les interfaces web conventionnelles difficiles reste une question ouverte. Je n’en connais pas la réponse. Mais la capacité émerge comme effet secondaire de l’architecture centrale, pas comme une fonction que quelqu’un doit financer ou prioriser, et cela mérite d’être noté. Il faut aussi noter que la navigation basée sur la vision implique des exigences GPU sérieuses : ce n’est pas un outil d’assistance léger. C’est une machine capable qui effectue de l’inférence coûteuse. Ces contraintes sont réelles et je ne prétendrai pas le contraire.