Memoria per agenti: meno attrito batte più intelligenza
La memoria per agenti non serve un SDK: deja-vu indicizza retroattivamente i log di Claude Code, Codex e opencode. Meno attrito, più intelligenza.
C'è un momento preciso in cui capisci che la memoria degli agenti è rotta. È quando un LLM ri-debugga per la terza volta lo stesso problema che aveva risolto due settimane fa, e tu lo guardi ripercorrere esattamente gli stessi passi, con la stessa identica sequenza di operazioni, la stessa struttura di ragionamento vuota. Non è un bug del modello: è un fallimento di memoria.
Il settore lo sa. Mem0 raccoglie finanziamenti, Letta esce da UC Berkeley con il pedigree di MemGPT, MemOS propone interfacce esplicite di lettura e scrittura. Sono tutti approcci forward-looking: sistemi che registrano la memoria nel momento in cui accade, richiedendo un'integrazione esplicita.
Promettono persistenza, ma a un prezzo nascosto: devi cambiare il tuo workflow per abilitarli.
Poi arriva un progetto open-source senza pretese a far rivedere le priorità.
Il problema non è ricordare, è non doversene preoccupare
deja-vu è un binario Go scritto da Vladislav Shulcz: zero dipendenze, nessun modello da scaricare, nessun servizio da avviare. La premessa è semplice, quasi ovvia una volta che la leggi: Claude Code, Codex e opencode scrivono già ogni sessione su disco. Gigabyte di problemi risolti, decisioni di design, fix di bug. Dati che esistono già, ma che nessuno può cercare.
Invece di chiederti di "salvare" qualcosa, deja-vu apre un indice inverso su quei file e basta. L'architettura è lineare: parser per JSONL e SQLite, tokenizzazione, bucket di posting list, il tutto in ~/.cache/deja. Nessuna chiamata di rete, nessuna API key. I log che hai accumulato per mesi prima ancora di installarlo diventano immediatamente ricercabili.
La differenza con gli approcci proattivi non è solo tecnica: è filosofica. Mem0, Letta e MemOS sono piattaforme di memoria: catturano, archiviano, recuperano. Richiedono una registrazione esplicita. deja-vu non chiede nulla del genere e funziona su ciò che gli agenti già scrivono, retroattivamente.
Cosa succede quando la memoria funziona senza chiedere il permesso
L'MCP server integrato espone due tool agli agenti: recall e recall_context. Con deja install --all, ogni agente sulla macchina riceve questi strumenti via MCP. Aggiungendo --auto, un hook SessionStart inserisce automaticamente la memoria rilevante nel contesto prima ancora che tu faccia una domanda.
La ricerca lessicale restituisce risultati in 7-9 ms su un corpus di oltre 1.250 sessioni e circa 3,3 GB di log. L'indice occupa il 2,4% del corpus originale. I segreti (chiavi API, JWT, chiavi private PEM) vengono oscurati all'ingestione, non in una passata successiva.
C'è anche la sincronizzazione tra macchine: deja sync ssh mini sposta la memoria laptop-server in un comando solo, con batch JSONL watermarkati e idempotenti.
Deja-vu funziona su tre harness (Claude Code, Codex, opencode) con un parser per tipo, e aggiungerne uno nuovo richiede un solo file. L'architettura è deliberatamente minimale perché il valore non sta nell'algoritmo: sta nel fatto che non devi fare nulla per attivarlo.
Quello che i benchmark dicono (anche quando non parlano di deja-vu)
Tre paper usciti lo stesso giorno affrontano lo stesso problema da angolazioni diverse: la granularità della memoria è il nodo strutturale.
- MemOps (arXiv:2607.12893) riformula la memoria conversazionale come un ciclo di vita di operazioni esplicite: ricordare, dimenticare, aggiornare, riflettere. Il benchmark decostruisce i fallimenti di memoria che l'accuratezza della risposta finale nasconde. Il risultato più clamoroso: il retrieval a livello di sessione batte nettamente il retrieval a livello di turno, perché preserva il contesto tra un messaggio e l'altro. I sistemi che archiviano fatti isolati (come Mem0 nella modalità a grana fine) perdono l'ordine delle operazioni e le dipendenze temporali.
- PM-Bench (COLM 2026) valuta la memoria prospettica: la capacità di eseguire un'intenzione a un segnale futuro mentre si svolgono altre attività. Il modello migliore (GPT-5.4) raggiunge appena il 65,1% di F1. Anche i modelli più avanzati dimenticano cosa dovevano fare mentre fanno altro. Il problema non è recuperare un fatto: è ricordarsi quando recuperarlo.
- Critic Experience Bank (arXiv:2607.12397) affronta la stima della confidenza a livello di passo: un agente che accumula evidenza dai propri giudizi passati e dalle loro conseguenze osservate. È un tipo di memoria diverso (memoria dell'efficacia delle proprie azioni) ma il meccanismo è lo stesso di deja-vu: accumulare passivamente, interrogare quando serve.
C'è un filo che lega questi tre paper. Tutti dimostrano che la granularità della memoria è inversamente proporzionale alla sua utilità pratica. I fatti atomici sono facili da indicizzare ma perdono il contesto che li rende utilizzabili.
Le sessioni intere sono più pesanti ma preservano la struttura temporale e causale che serve davvero a un agente. deja-vu, quasi per caso, prende la strada giusta: indicizza sessioni, non messaggi.
La memoria degli agenti è una traiettoria di stati, non un database di fatti. I sistemi che trattano la memoria come un archivio atomico ottengono metriche di retrieval perfette e risposte inutilizzabili.
Il vantaggio competitivo
C'è una metrica che nessun benchmark misura: il tasso di adozione reale. Quanti developer hanno effettivamente integrato un sistema di memoria nei loro workflow?
La risposta è probabilmente bassissima, e il motivo è strutturale. Integrare Mem0 richiede un SDK, un'API key, un client da inizializzare. Integrare Letta richiede un'infrastruttura di context repository. Integrare MemOS richiede interfacce esplicite di lettura e scrittura.
Ogni passo aggiuntivo tra "voglio memoria" e "ho memoria" è un punto di abbandono.
deja-vu si installa con una pipe curl (la trovi nel README del progetto) seguita da un unico comando di attivazione:
deja install --allFine. Le sessioni passate sono già indicizzate. L'agente ha già gli strumenti MCP. Non c'è un "poi".
Il time-to-value è zero secondi per i dati esistenti e zero secondi per le sessioni future, perché non c'è nulla da fare nelle sessioni future.
Non è solo una differenza di UX, è di architettura.
Gli altri sistemi inseguono la completezza. deja-vu punta all'inevitabilità.
I limiti
deja-vu non risolve tutti i problemi. La ricerca è puramente lessicale: niente embedding, niente similarità semantica. Se cerchi "problema di autenticazione" ma l'agente ha scritto "auth broken after deploy", non lo trovi.
La memoria è vincolata ai file locali: se formatti il disco, perdi l'indice. I log originali restano nei cache degli harness su altri percorsi, a patto che non siano stati cancellati. La sincronizzazione tra macchine richiede configurazione manuale. E la feature di contesto automatico (--auto) è limitata a 2KB per sessione: abbastanza per un promemoria, non per una ricostruzione completa.
Fa una cosa sola: ti ricorda cosa hai già fatto. Per molti casi d'uso è sufficiente.
Per agenti che operano in ambienti dinamici con stati che cambiano rapidamente, non lo è.
deja-vu non è migliore di Mem0 o Letta in assoluto: è più utile per la maggior parte dei casi d'uso. Molti developer non hanno bisogno del ventaglio di funzionalità che quei sistemi offrono. Hanno bisogno di non ri-debuggare lo stesso problema tre volte.
Further Reading




