Qu’est-ce que Project RAG ?
Project RAG indexe une base de code sur votre machine et la sert à un agent via MCP. Le code est découpé en fonctions, classes et méthodes avec Tree-sitter pour 12 langages (morceaux de 50 lignes pour tout le reste), embarqué localement avec fastembed-rs et le modèle all-MiniLM-L6-v2, et stocké dans une base de données LanceDB embarquée aux côtés d'un index BM25 Tantivy. Les requêtes combinent les deux classements avec la fusion de rang réciproque. Qdrant est un backend optionnel au moment de la compilation.
Le serveur expose neuf outils sur stdio : index_codebase, query_codebase, search_by_filters, search_git_history, get_statistics, clear_index, find_definition, find_references et get_call_graph, plus neuf prompts en commande slash correspondants. Aucune clé d'API n'est nécessaire ; la première exécution télécharge le modèle d'embedding d'environ 50 Mo.
Le dépôt, créé en novembre 2025, est sous licence MIT avec environ 33 étoiles, et chaque commit vient d'un seul contributeur. La version 0.1.0 est allée sur crates.io le 24 janvier 2026 et a 77 téléchargements au total ; il n'y a pas de versions GitHub, le dernier commit est du 2 février 2026, et trois pull requests externes attendent depuis mai et juillet sans réponse du mainteneur. Il n'est pas listé dans le registre MCP officiel.
Installer Project RAG
cargo install project-ragProject RAG vaut-il le coup ?
Project RAG a les bons ingrédients et une cuisine inachevée. La recherche hybride est le bon choix pour le code, où un identifiant exact compte autant que le sens, et associer un index LanceDB embarqué à BM25 signifie rien à faire tourner à côté. Mais le développement s'est arrêté en février 2026, et les pull requests ouvertes décrivent des bugs qu'un utilisateur rencontrera dès le premier jour.
Le premier est la journalisation. Le serveur initialise la sortie de tracing de Rust sur stdout, ce qui sur stdio est réservé aux messages MCP. La pull request #20, ouverte depuis mai, explique que les lignes de log corrompent alors le flux et que les appels d'outils renvoient du vide ; les propres exemples Claude Desktop et Claude Code du README règlent RUST_LOG=info, ce qui active ces lignes. Le second, dans la pull request #21, est que les patterns d'inclusion et d'exclusion sont mis en correspondance comme de simples sous-chaînes. Le code source le confirme : un glob comme **/vendor/** n'est jamais une sous-chaîne d'un vrai chemin, si bien qu'il ne correspond à rien, et le propre exemple d'exclusion du README n'a aucun effet au-delà de ce que .gitignore saute déjà.
Les outils de navigation de code promettent plus qu'ils ne livrent. Le README décrit un résolveur stack-graphs à environ 95 % de précision pour Python, TypeScript, Java et Ruby ; Cargo.toml dit que cette fonction est préparée mais pas entièrement implémentée, et le code source n'a aucun tel module. Ce qui tourne est le repli basé sur l'AST, que le README lui-même place à environ 70 % de précision. CodeGraph et GitNexus construisent un vrai graphe d'appels sans embeddings ; ici, les définitions et références viennent de la correspondance d'identifiants.
Les chiffres de performance sont ceux de l'auteur, listés sous un matériel typique sans méthode : environ 1 000 fichiers par minute, 20 à 30 ms par recherche, environ 100 Mo de mémoire de base plus 50 Mo pour le modèle. Un utilisateur dans l'issue #11 a rapporté qu'un projet jouet prenait environ 30 minutes à indexer et un grand monorepo des heures sur CPU. Le README ne fait aucune affirmation sur l'économie de tokens. Sa documentation se contredit aussi par endroits, nommant Qdrant comme moteur et listant une base de données embarquée comme travail futur alors que LanceDB est déjà le défaut.
Là où il fait la différence
Un développeur sur un dépôt polyglotte de 5 000 fichiers avec des années d'historique
Demander à l'agent d'où vient un comportement et quel commit l'a changé
search_git_history indexe les 10 derniers commits par défaut et va plus loin sur demande, avec des filtres d'auteur, de chemin et de date. Le README place un projet de 5 000 fichiers sous 500 Mo de mémoire ; attendez-vous à un premier index mesuré en minutes à heures sur CPU, selon le rapport d'un utilisateur.
Une équipe plateforme Rust qui construit un agent de recherche de code interne
Embarquer la récupération dans leur propre service plutôt que de faire tourner un serveur MCP
La crate expose une API de bibliothèque RagClient en plus du serveur, sous MIT. Budgétez du temps pour patcher la correspondance de patterns par sous-chaîne et la journalisation sur stdout, puisque l'amont n'a fusionné aucun des deux correctifs.
Un responsable d'ingénierie qui compare les serveurs de contexte de code locaux pour une équipe
En choisir un sur lequel l'équipe peut compter pour un an
Un contributeur, 77 téléchargements crates.io et aucune version depuis janvier en font un projet à forker, pas à adopter. CodeGraph est MIT, activement publié et n'a pas besoin de modèle d'embedding.
Avant de vous engager
- Mise en route
- A besoin de Rust 1.88+ et de protobuf-compiler ; cargo install project-rag (0.1.0) ou cargo build --release depuis le dépôt, puis claude mcp add avec le chemin du binaire. Le README documente Claude Code et Claude Desktop. La première exécution télécharge le modèle d'embedding avant qu'index_codebase puisse finir.
- Intégrations
- Neuf outils sur stdio. index_codebase et clear_index écrivent dans l'index local ; les sept autres lisent. Neuf prompts MCP apparaissent comme commandes slash /project: dans Claude Code. Une API de bibliothèque Rust offre les mêmes fonctions.
- Données et confidentialité
- Le code, les embeddings et l'index BM25 restent locaux, dans un répertoire de données de plateforme sous project-rag par défaut. index_codebase indexe tout chemin de répertoire que l'agent passe, si bien qu'il peut lire tout ce que le processus serveur peut. Le téléchargement du modèle va à Hugging Face. Aucun avis de sécurité n'est publié.
- Coût à grande échelle
- Gratuit ; le coût est le temps CPU et le disque. Le README estime environ 40 Mo de mémoire par 10 000 morceaux et environ 75 Mo de stockage pour un projet de 1 000 fichiers, et n'offre aucun chemin d'embedding GPU.
- Limites
- Pas de configuration pour l'URL Qdrant au-delà d'un défaut localhost codé en dur, filtres de chemin appliqués après la requête, et découpage AST pour 12 langages uniquement. L'indexation de projets de plus de 100 000 fichiers prend un temps significatif, de l'aveu même du README.
Les points forts
- La recherche hybride vectorielle et BM25 convient aux identifiants comme à la prose
- LanceDB embarqué et embeddings locaux ; pas de clé ni de service externe
- Recherche d'historique git sur les messages de commit et les diffs
- Un verrou inter-processus empêche deux sessions d'indexer un dépôt à la fois
Les points faibles
- Aucun commit depuis février 2026 ; correctifs externes non fusionnés
- Les logs sur stdout peuvent corrompre le flux MCP (PR ouverte #20)
- Les patterns glob d'inclusion et d'exclusion ne correspondent pas (PR ouverte #21)
- La navigation de haute précision annoncée n'est pas implémentée
Idéal pour
Les développeurs Rust prêts à construire depuis les sources et à appliquer eux-mêmes les correctifs ouverts pour obtenir une recherche de code hybride locale.
Alternatives à Project RAG
Project RAG : questions fréquentes
- Project RAG vaut-il le coup ?
- Une conception de recherche hybride solide pour le code, freinée par des correctifs non fusionnés pour des bugs qui cassent sa propre journalisation et ses patterns d'exclusion. Nous lui donnons 2.8 sur 5.
- Combien coûte Project RAG ?
- Gratuit et sous licence MIT.
- Quels sont les inconvénients de Project RAG ?
- Aucun commit depuis février 2026 ; correctifs externes non fusionnés; les logs sur stdout peuvent corrompre le flux MCP (PR ouverte #20); les patterns glob d'inclusion et d'exclusion ne correspondent pas (PR ouverte #21); la navigation de haute précision annoncée n'est pas implémentée.
- À qui s’adresse Project RAG ?
- Les développeurs Rust prêts à construire depuis les sources et à appliquer eux-mêmes les correctifs ouverts pour obtenir une recherche de code hybride locale.
- Combien coûte Project RAG pour une équipe ou en production ?
- Gratuit ; le coût est le temps CPU et le disque. Le README estime environ 40 Mo de mémoire par 10 000 morceaux et environ 75 Mo de stockage pour un projet de 1 000 fichiers, et n'offre aucun chemin d'embedding GPU.
- Project RAG est-il sûr pour les données de l’entreprise ?
- Le code, les embeddings et l'index BM25 restent locaux, dans un répertoire de données de plateforme sous project-rag par défaut. index_codebase indexe tout chemin de répertoire que l'agent passe, si bien qu'il peut lire tout ce que le processus serveur peut. Le téléchargement du modèle va à Hugging Face. Aucun avis de sécurité n'est publié.
- Quelles sont les meilleures alternatives à Project RAG ?
- Les alternatives les plus proches que nous avons testées sont CodeGraph, GitNexus, Serena et Semble.
Réponses vérifiées le 26 oct. 2026.