À propos du projet

codebase-memory-mcp est un moteur d'intelligence code conçu pour servir les agents de codage IA via le protocole Model Context Protocol (MCP). Il analyse une codebase en un graphe de connaissances persistant de fonctions, classes, chaînes d'appels, routes HTTP et liens inter-services, puis répond aux requêtes structurelles sur ce graphe. Caractéristiques principales attestées par la README : - Indexation : analyse AST tree-sitter sur 162 grammairons dérivés compilés dans le binaire. Un pipeline priorisant la RAM utilise la compression LZ4, SQLite en mémoire et la correspondance de motifs Aho-Corasick. La README indique indexer le noyau Linux (28M LOC, 75K fichiers) en environ 3 minutes. - LSP hybride : implémentation C légère d'algorithmes de résolution de types pour Python, TypeScript/JavaScript/JSX/TSX, PHP, C#, Go, C, C++, Java, Kotlin, Rust et Perl, couvrant la liaison de paramètres, l'inférence de type de retour, la substitution générique et les patterns de résolution spécifiques aux langages. - Surface de requêtage : 15 outils MCP incluant vue d'architecture, traçage de graphe d'appels, analyse d'impact, détection de code mort, requêtes de type Cypher, recherche sémantique, recherche plein-texte BM25 et recherche code. La README rapporte des requêtes structurelles sub-millisecondes et une réduction de tokens par rapport à l'exploration fichier-par-fichier. - Modèle de graphe : types d'arêtes CALLS, IMPORTS, DEFINES, IMPLEMENTS, INHERITS, HTTP_CALLS, EMITS, LISTENS_ON, DATA_FLOWS, SIMILAR_TO et SEMANTICALLY_RELATED. Les arêtes CROSS_* inter-repos relient des nœuds à travers les dépôts dans le même magasin. - Infrastructure-as-code : Dockerfiles, manifests Kubernetes et superpositions Kustomize sont indexés comme nœuds de graphe avec références croisées. - Distribution : exécutable natif unique pour macOS, Linux et Windows, sans runtime langage, service hébergé ni clé API requis. Également disponible via npm, PyPI, Homebrew, Scoop, Winget, Chocolatey, AUR et go install. Tout le traitement est local. - Opération : une commande d'installation détecte automatiquement et configure les agents de codage pris en charge. Un démon de coordination partagé gère les watchers en arrière-plan, les tâches d'indexation et l'interface utilisateur optionnelle. Auto-index et auto-watch sont configurables. Une interface de visualisation de graphe 3D intégrée est servie sur localhost:9749. - Partage d'équipe : un instantané SQLite compressé zstd optionnel (.codebase-memory/graph.db.zst) peut être committé afin que les coéquipiers amorcent à partir de l'artefact et exécutent une indexation incrémentielle au lieu d'une réindexation complète. Le projet n'intègre pas de LLM ; le client MCP agit comme la couche d'intelligence traduisant les questions en langage naturel en requêtes de graphe. La README fait référence à un préprint (arXiv:2603.27277) décrivant la conception et les benchmarks, et documente les pratiques de sécurité incluant le traitement local uniquement et la vérification des artefacts de release.