Vaig veure el fil de Sarah Wooders la setmana passada i de seguida vaig estar d'acord amb la meitat.

Wooders, co-creador de MemGPT (ara Letta), [va argumentar que la memòria no és un connector, és l'arnès](https://x.com/sarahwooders/status/2040121230473457921). L'arnès pren decisions invisibles que cap eina externa pot controlar: què sobreviu a la compactació, com es carrega el context, si l'agent pot modificar les seves pròpies instruccions. "Demanar connectar la memòria a un arnès d'agent és com demanar connectar la conducció a un cotxe".

L'enquadrament és fàcil de passar. Segueixo escoltant la línia de l'arnès repetida com a fons establert, no com a reclamació d'inspecció. Això és en part perquè la meitat amb la qual estic d'acord és correcta.

## Les decisions invisibles són reals

[Claude Code té una jerarquia de memòria multinivell integrada a l'arnès](https://docs.anthropic.com/en/docs/claude-code/memory): CLAUDE.md, estat de sessió, regles de compactació, injecció de missatges del sistema. Quan [Claude Code compacta](https://docs.anthropic.com/en/docs/claude-code/best-practices) una conversa de 100.000 testimonis a 20.000, l'arnès decideix què sobreviu. Cap eina externa pot replicar o anul·lar aquesta decisió.

Ahmed Kidwai, que crea [Virtual Context](https://github.com/virtual-context/virtual-context), va descriure la mateixa estructura des del seient de l'usuari a [AI passa la major part de la seva vida llegint sobre la seva vida](https://open.substack.com/pub/virtualcontext/p/ai-spends-most-life-of-reading). Cada torn pot tornar a reproduir el fil complet, de manera que la majoria de fitxes d'entrada van a rellegir el que ja ha passat. Quan la finestra s'omple, la compactació substitueix l'historial en brut per un resum. No rebeu un rebut de línia del que ha desaparegut.

En una sola sessió, les opcions de l'arnès sobre què entra a la finestra de context, què es resumeix i què es deixa caure són el sistema de memòria eficaç. Wooders té raó en això.

## L'argument suposa un arnès

El fil conclou que hauríeu d'utilitzar un arnès de memòria primer. Aquesta conclusió requereix que opereu dins d'un.

Jo no. Utilitzo Cursor com a interfície principal, Claude Code per a tasques específiques, ChatGPT per a converses i scripts personalitzats per a l'automatització. Es tracta de quatre arnesos, cadascun prenent les seves pròpies decisions invisibles sobre què recordar.

Les persones amb qui parlo que construeixen amb agents fan servir de tres a cinc eines. Cadascun es compacta de manera diferent, carrega el context de manera diferent, emmagatzema un estat diferent. L'usuari es converteix en la capa de sincronització humana entre tots ells.

Afegir més memòria integrada a l'arnès empitjora, no millor. Cada eina obté una millor memòria interna. Cap d'ells està d'acord.

## Tres preocupacions, no una

Wooders col·lapsa la gestió de finestres de context, l'estat de la sessió i l'estat durador en un concepte que ella anomena "memòria". Aquests són arquitectònicament diferents.

**Gestió de finestres contextuals**: què encaixa a l'indicador ara mateix, què es compacta, què veu el model aquest torn. Això és una preocupació d'arnès. Wooders té raó.

**Estat de la sessió**: persisteix dins d'una conversa. Això també és una preocupació de l'arnès.

**Estat durador**: persisteix en sessions, eines i agents, amb procedència i versions. Això és infraestructura, no arnes.

Cap arnès proporciona estat determinista, lligat a l'esquema, només adjunt i multiplataforma amb procedència. La gestió del context és el motor. L'estat durador són les dades de navegació. Informa de la conducció, però no pertany a l'interior de la transmissió.

## Fins i tot el context es pot exterioritzar

El [Context virtual] de Kidwai (https://github.com/virtual-context/virtual-context) és un servidor intermediari que es troba entre el vostre client i l'API LLM amunt. El client estableix una finestra de context de 20 milions de testimonis. La finestra real del model és de 200 K. El context virtual comprimeix, indexa i pàgines entre ells. Una càrrega útil del codi Claude de 937 000 tokens amb 52 cadenes d'eines es col·lapsa a ~65 K de senyal curat.

A [LongMemEval](https://github.com/virtual-context/virtual-context#benchmark-results), Virtual Context va obtenir un 95% de precisió enfront del 33% de Claude Sonnet 4.5 amb context en brut complet, a la meitat del cost. El proxy funciona amb Claude Code, Cursor, OpenClaw o qualsevol client que accepti una URL base. VCATTACH permet que dos clients comparteixin la mateixa base de coneixement compactada entre plataformes.

El mecanisme importa. VC no passa per alt l'arnès. L'arnès encara pren les seves pròpies decisions de compactació i truncament i redacta la sol·licitud de l'API. VC intercepta que la sol·licitud aigües avall mitjançant una redirecció d'URL base. Quan l'arnès trunca l'historial de converses, VC detecta el truncament i es recupera de la seva pròpia botiga duradora. El que arriba al model és la finestra seleccionada de VC, no la producció en brut de l'arnès.

Wooders té raó que cap eina externa pot controlar les decisions internes de l'arnès. Però un proxy assegut entre l'arnès i l'API pot observar aquestes decisions i revertir-les parcialment. L'arnès envia 937K fitxes després de la seva pròpia compactació. VC envia 65K de senyal curat al model. L'arnès encara fa funcionar el bucle de l'eina i l'agent. La capa que decideix què veu realment el model viu fora.

Queden tres capes, no dues. L'arnès dirigeix ​​l'agent. Una capa de gestió de context opcional es pot situar entre l'arnès i l'API. I una capa d'estat duradora es troba a sota de tot, que persisteix el que és cert independentment de com es gestioni el context de qualsevol sessió.

## Control versus valor

Una eina externa no pot controlar les decisions de compactació de l'arnès. És cert. Però la qüestió no és si una capa d'estat controla la compactació. És si aporta valor la memòria nativa de l'arnès no.

La majoria de la memòria nativa de l'arnès és efímera. Letta és l'excepció: per disseny persisteix la memòria entre sessions. Però fins i tot la memòria de Letta és específica de l'eina, no és portàtil i no determinista. L'agent decideix què emmagatzemar i quan mitjançant trucades d'eines basades en LLM, de manera que la mateixa conversa pot produir diferents estats de memòria. El cursor no el pot llegir. Claude Code no el pot llegir. Una capa d'estat duradora és multiplataforma, determinista, versionada i traçable fins a la font.

No cal controlar l'arnès per ser valuós. Heu de sobreviure a les decisions de l'arnès. L'estat durador només d'afegir sobreviu per disseny. Quan un arnès compacta el context, la capa d'estat té el rècord complet. Quan obriu una eina diferent demà, la capa d'estat té el que vau emmagatzemar ahir.

## Disparació versus transport

Nicolò Boschi (Hindsight/Vectorize) [d'acord amb Wooders](https://x.com/nicoloboschi/status/2042145292632379598): "Utilitzar la memòria mitjançant MCP i esperar que el model emmagatzemi i cerqui informació de la memòria no té cap esperança". La preocupació és real. Si el model ha de decidir quan emmagatzemar i recuperar, pot oblidar-se d'emmagatzemar. Pot saltar-se la recuperació quan sigui important.

En lloc de MCP, Hindsight utilitza [hooks](https://docs.anthropic.com/en/docs/claude-code/hooks): scripts que s'aprofiten s'executen automàticament en esdeveniments del cicle de vida, com ara l'inici de la sessió, l'enviament de sol·licituds o la finalització de l'eina. Cap LLM decideix si els acomiada. El connector Claude Code de Hindsight utilitza quatre ganxos de cicle de vida per retenir automàticament totes les converses i recuperar-les automàticament a cada indicació. Funciona.

Però aquest argument combina dues coses: com s'activa la memòria i on viu.

Els ganxos de Hindsight anomenen l'API Hindsight. No escriuen a la memòria integrada de l'arnès. Els ganxos són el detonant. El servidor extern és l'emmagatzematge. Aquesta separació és tota l'arquitectura. Un ganxo que escrivia a la memòria nativa de Claude Code heretaria les mateixes limitacions: efímer, no portàtil, invisible per a Cursor demà.

Els ganxos resolen el problema de l'activació. No resolen el problema d'emmagatzematge. Tot sistema de memòria durador necessita tots dos.

Els ganxos són àmpliament disponibles, encara que no universalment. Claude Code té un sistema de connectors amb més de 12 esdeveniments. El cursor té hooks.json amb més de 14 esdeveniments en versió beta. OpenCode té més de 20 esdeveniments, inclòs el control de compactació i la injecció ràpida del sistema. Codex té ganxos de sessió amb ganxos a nivell d'eina en desenvolupament. ChatGPT i l'aplicació web Claude segueixen sent només MCP. Hindsight mateix envia un servidor MCP per exactament aquests casos.

La resposta són ganxos quan estiguin disponibles, MCP on no, tots dos escrivint a la mateixa capa d'estat durador sota cada arnès. "MCP és desesperançat" és una declaració sobre l'activació de la fiabilitat, no sobre on hauria de viure la memòria.

## Les capes són complementàries

Cinc arnesos que prenen cinc decisions de compactació i context diferents produeixen cinc versions diferents del que sap l'agent. L'analogia de "conducció" funciona per a la gestió del context. Es trenca quan condueixes cinc cotxes i necessites dades de navegació coherents en tots ells.

La gestió del context i l'estat durador no competeixen. Un arnès fa funcionar l'agent i el bucle de l'eina. Una capa de context, integrada o externa, gestiona el que veu el model a cada gir. Una capa d'estat gestiona el que és cert entre sessions i eines. Cap arnès o proxy de context ofereix veritat, procedència, determinisme, validació d'esquemes o accés entre eines verificables. L'argument de la memòria integrada a l'arnès és alhora l'argument d'una capa d'estat compartida sota cada arnès.

## El que estic construint

Estic construint [Neotoma](https://neotoma.io), una capa de memòria estructurada que viu sota qualsevol arnès: resolució d'entitats, línies de temps, procedència, determinisme, accés multiplataforma.

Aquests fils han canviat el que estic construint a continuació. Havia tractat MCP com l'única superfície d'integració. Ara estic afegint ganxos com a capa d'extensió del cicle de vida. MCP continua sent la interfície de l'agent principal.

La separació és deliberada. MCP és propietari del contracte de l'agent: instruccions que es carreguen una vegada a l'inici de la sessió, eines d'emmagatzematge estructurades que l'agent crida amb plena consciència del context. Els ganxos posseeixen el contracte de l'arnès: esdeveniments del cicle de vida que l'agent no controla. Un ganxo `UserPromptSubmit` recupera les entitats rellevants automàticament abans que l'agent vegi cada sol·licitud. Els ganxos `PostToolUse` capturen totes les ordres d'edició de fitxers i shell com a observacions. Un ganxo "Stop" continua la conversa en brut si es va perdre la botiga de tancament de l'agent. Un ganxo "PreCompact" observa què està a punt de descartar l'arnès.

El resultat és un sòl de fiabilitat sota el sostre de qualitat MCP. Sense ganxos, MCP funciona com ara. Sense MCP, els ganxos proporcionen captura d'observació en brut, però no extracció d'entitats estructurades. Tots dos junts donen recuperació determinista, observació passiva, consciència de compactació i recuperació d'accidents.

Això difereix de l'enfocament de Hindsight. La retrospectiva captura transcripcions en brut mitjançant ganxos i, a continuació, executa un LLM del servidor separat per extreure entitats. Això significa que un segon model jutja el que importa, amb un cost addicional i latència per operació. Neotoma manté l'extracció d'entitats impulsada per l'agent: el mateix model que entén la conversa fa l'extracció a un cost marginal de LLM zero. Els ganxos proporcionen la capa de fiabilitat a sota, no la intel·ligència.

Els connectors per a Claude Code, Cursor, OpenCode i Codex són els següents. Els ganxos escriuen a Neotoma, no a la memòria integrada de l'arnès. Tots arriben a la mateixa capa d'estat durador, mitjançant ganxos quan estiguin disponibles i MCP on no.

Wooders té raó que l'arnès posseeix el context. Boschi té raó que els ganxos superen MCP per activar la fiabilitat. Kidwai demostra que fins i tot la gestió del context es pot externalitzar. La pregunta que cap d'ells aborda és qui és el propietari de la veritat quan feu servir cinc arnesos. Aquesta resposta ha de viure sota de totes elles.