XERJ : moteur local qui réduit les tokens des agents IA

Published · AI Daily — AI-assisted deep research, methodology & disclosure

XERJ est un moteur de recherche IA local, écrit en Rust et compatible avec Elasticsearch. Sa fonction autoindex indexe code, documents, journaux et PDF avec une seule commande. Un agent de code récupère alors directement l'extrait exact dont il a besoin, au lieu de lire les fichiers un à un avec grep et sed. Le projet annonce 40 fois moins de tokens que grep et prend en charge la recherche, le RAG, l'audit de sécurité et la mémoire d'agent. Dans l'étude contrôlée de l'équipe, sur un scénario de codage de référence, les tokens de sortie de l'agent ont été divisés par 2,7, avec un taux de résolution maintenu à 16/16. La commande xerj init le branche à Claude Code et Cursor. Il convient aux développeurs et équipes qui veulent réduire le coût de leurs agents tout en gardant leurs clients Elasticsearch.

Contexte

Les agents de code partagent un réflexe coûteux. Face à un projet inconnu, ils cartographient le terrain avec grep, sed et une longue série d'ouvertures de fichiers. Chaque lecture consomme des tokens, et chaque fausse piste en coûte d'autres. Plus le dépôt grossit, plus la facture augmente, et plus le modèle risque de se perdre dans du texte sans rapport. XERJ s'attaque à ce problème précis.

XERJ est un moteur de recherche IA local, open source, écrit en Rust. Son principe : l'agent découvre d'abord les données grâce à un index, puis récupère le contenu exact à la demande, au lieu de tout balayer. Le moteur est compatible avec Elasticsearch, donc les clients existants se connectent sans réécriture. Il vise aussi des modes d'intégration comme MCP et les skills.

Les tags du projet mentionnent bm25-search, signe que le classement lexical reste sa base. La documentation propose toutefois une page dédiée à la recherche vectorielle. Le cas d'usage principal s'appelle le codage de référence : l'agent trouve le dépôt open source le plus proche de la tâche, l'indexe, puis s'en inspire pour écrire son code.

Analyse approfondie

La fonction clé est autoindex. Selon le projet, une seule commande indexe code, documents, journaux et PDF. Le même index sert ensuite à la recherche, au RAG, à l'audit de sécurité et à la mémoire d'agent. Une équipe n'a donc pas besoin de monter un système par usage. Les résultats reviennent sous forme d'extraits classés, avec leur position file:line. L'agent reçoit une source citable, pas un fichier entier. La commande def ajoute le saut vers la définition, avec la ligne du fichier et la signature de la fonction. XERJ réduit-il vraiment les tokens par rapport à grep ? Le projet annonce 40 fois moins de tokens que grep. Dans une étude contrôlée sur un scénario de codage de référence, les tokens de sortie de l'agent ont été divisés par 2,7, avec un taux de résolution maintenu à 16/16. Les utilisateurs au quotidien rapportent environ 5 fois. Ces trois chiffres reposent sur des mesures différentes : il faut les lire séparément. La commande xerj gain apporte un contrepoint utile, car elle indique ce que l'outil a réellement fait, avec des comptages réels et non des estimations.

L'installation est courte. Première voie : confier une consigne à l'agent, qui lit llms.txt et réalise l'installation, l'indexation et la configuration du codage de référence. Seconde voie, manuelle : script curl, démarrage du service xerj, puis xerj init pour brancher Claude Code ou Cursor, et xerj autoindex sur le dossier du projet. Ensuite, xerj search répond aux questions, par exemple sur la rotation des segments de journal. Un avertissement s'impose sur l'option --insecure. Elle désactive TLS et l'authentification par clé d'API. Tout appelant qui atteint le port devient superutilisateur : il peut lire et supprimer tous les index, y compris chaque espace de noms /_memory. Le projet la réserve à une machine de développement individuelle. Un nouveau nœud se lie par défaut à 127.0.0.1, et refuse de démarrer en clair sur d'autres interfaces sans autorisation explicite. Le modèle de sécurité figure dans docs/SECURITY_MODEL.md et mérite une lecture préalable.

Impact sur l'industrie

XERJ transforme le principe « lire moins, lire juste » en infrastructure à part entière. Le coût des agents pèse désormais sur la facture des équipes. Sortir la récupération de la fenêtre de contexte du modèle pour la confier à un index comptable et réutilisable est une approche pragmatique. La compatibilité Elasticsearch abaisse aussi la barrière de migration : l'expérience d'exploitation et les bibliothèques clientes restent exploitables.

Le projet est sous licence Apache-2.0. Sa vie communautaire est singulière : il demande un court rapport d'usage comme preuve de participation et accueille explicitement humains et agents. Cela peut produire des retours concrets. Reste à voir si la qualité et la méthode de mesure de ces rapports resteront homogènes.

Perspectives

Les risques sont nets. D'abord, les chiffres d'efficacité viennent de l'étude du projet et de témoignages d'utilisateurs. L'échantillon de l'étude est petit, 16 tâches, et aucune vérification indépendante n'existe encore. Chaque équipe devrait mesurer le gain sur son propre code, et xerj gain fournit le moyen de compter.

Ensuite, l'index rassemble code, journaux et mémoire d'agent. Une mauvaise configuration de sécurité aurait un impact large. Enfin, laisser un agent télécharger et indexer des dépôts externes pose des questions de licence et de fiabilité de la source.

Trois points restent à suivre : la transparence des benchmarks publiés, la maturité de la recherche vectorielle, et la conception de l'authentification et des droits dans des environnements plus vastes et multi-utilisateurs. Ces réponses diront si XERJ reste un outil pratique pour un développeur seul ou devient une infrastructure partagée d'équipe.

Sources

FAQ

Qu'est-ce que XERJ ?

XERJ est un moteur de recherche IA local, open source, écrit en Rust et compatible avec Elasticsearch. Sa fonction autoindex indexe code, documents, journaux et PDF avec une seule commande. Un agent de code récupère alors directement l'extrait exact dont il a besoin, au lieu de lire les fichiers un à un avec grep et sed.

Pourquoi XERJ compte-t-il pour les agents de code IA ?

XERJ déplace la recherche hors de la fenêtre de contexte du modèle vers un index local mesurable et réutilisable. Le projet annonce 40 fois moins de tokens que grep. Dans son étude contrôlée, les tokens de sortie de l'agent ont été divisés par 2,7, avec 16/16 de résolution. Ces chiffres viennent du projet et restent à vérifier indépendamment.

Que vérifier avant d'adopter XERJ ?

Avant d'adopter XERJ, mesurez les gains sur votre propre code avec la commande xerj gain, qui donne des comptes réels. L'option --insecure désactive TLS et l'authentification par clé API : réservez-la à une machine de développement individuelle. Lisez docs/SECURITY_MODEL.md et vérifiez les licences des dépôts externes indexés.