À propos du projet

deja-vu est une couche mémoire locale uniquement pour les agents de codage IA. Il indexe les transcriptions de sessions que 34+ agents — dont Claude Code, Codex CLI, Cursor, Copilot CLI, Gemini CLI, Goose et bien d'autres — écrivent déjà sur le disque, et rend cet historique consultable à travers tous. Un correctif trouvé dans un agent devient récupérable dans n'importe quel autre. Capacités clés : - Recherche rétroactive : Interroge des gigaoctets d'historique existant, y compris les sessions antérieures à l'installation de deja-vu. Les requêtes en langage naturel se replient sur des niveaux de pertinence ; le temps est une indication, pas un filtre. - Rappel inter-agents via MCP : Un seul outil MCP `deja` en mode `recall` répond à des questions comme « nous avons corrigé ça il y a trois semaines », quel que soit l'agent qui a résolu le problème à l'origine. - Survie à la compaction : Sur Claude Code et Codex, des crochets capturent la tâche, les fichiers et les commandes au début de la compaction, puis les restituent une fois dans la session suivante. Mesuré sur 43 compactions, les résumés conservent 77 % des décisions mais seulement 0,2 % des commandes ; deja-vu récupère le reste. - Rappel au point d'action : Avant qu'un agent ne modifie un fichier ou exécute une commande, deja-vu présente les décisions ou les invocations fonctionnelles antérieures. Un crochet PostToolUse répond en indiquant ce qui a suivi la même erreur auparavant. - Indexation du travail : Enregistre les fichiers ouverts, les commandes exécutées avec leur code de sortie, et les plages de modifications exactes — les détails que les résumés écartent. - Rédaction : Les clés AWS, les jetons d'API, les JWT, les blocs de clés privées PEM, les jetons Bearer, les identifiants URL et les valeurs à haute entropie sont supprimés lors de l'indexation. Les commandes CLI incluent `deja <requête>` pour la recherche, `deja blame <chemin>` pour l'historique au niveau fichier, `deja fix <erreur>` pour les résolutions d'erreurs passées, `deja friction` pour les erreurs récurrentes, `deja ctx <requête>` pour un résumé Markdown, `deja sync ssh` pour le transfert de mémoire machine à machine, et `deja stats --card` pour un résumé visuel. `deja forget` écrit des pierres tombales pour empêcher la réindexation des sessions supprimées. L'installation se fait via un script curl, Homebrew, Scoop, Go install ou npx. `deja install --auto` connecte le rappel MCP dans chaque agent détecté et construit le premier index. Un rappel sémantique optionnel est disponible via `deja embed` avec un point de terminaison local Ollama, LM Studio ou compatible OpenAI ; la recherche lexicale fonctionne sans. Le dépôt fournit des bancs d'essai de référence (LongMemEval-S et LoCoMo) et plusieurs sous-commandes `deja bench` pour le classement du rappel, la digestion du contexte, la survie des blocs et le coût d'ingestion. Toute indexation et recherche s'exécutent localement ; le réseau n'est utilisé que par `deja update`, `deja sync ssh` et les vérifications de version.