Grok Build-geheugen tussen sessies: instellingen en beperkingen
MarkdownHoe je het geheugen inschakelt, waar notities worden opgeslagen en hoe /flush, /remember, /dream en /memory werken. Prioriteit van instellingen, controle en het verwijderen van vermeldingen.
Lees het volledige artikel
Grok Build, xAI’s terminalagent, heeft geheugen voor meerdere sessies: het kan projectconventies, beslissingen en succesvolle stappen bij het oplossen van fouten onthouden en die vervolgens zonder herinneringen toevoegen aan de context van een nieuwe sessie. De functie is standaard uitgeschakeld en experimenteel — je kunt haar met één instelling inschakelen.
Deze beschrijving is gebaseerd op de officiële handleiding in de repository xai-org/grok-build, zoals die op 20 september 2026 beschikbaar was. De auteur van het oorspronkelijke artikel heeft het product niet gebruikt: de werking is beschreven op basis van de documentatie, niet van persoonlijke tests.
Praktische informatie over werken met Ailoot vind je in de documentatie.
Wat biedt geheugen in Grok Build?
Belangrijkste inzicht
Zonder geheugen krijgt een nieuwe Grok Build-sessie geen informatie uit eerdere sessies: noch conventies die je hebt uitgelegd, noch beslissingen die je hebt genomen, tenzij die zijn vastgelegd in een instructiebestand in de repository. Als geheugen is ingeschakeld, doorzoekt de agent de opgeslagen notities en voegt relevante notities automatisch toe aan de context van een nieuwe sessie. Notities worden opgeslagen als gewone Markdown-bestanden die je kunt lezen en bewerken.
Je hebt bijvoorbeeld in één sessie aan de agent uitgelegd dat het project inspringing met twee spaties gebruikt, dat databasemigraties met een apart commando worden uitgevoerd en dat een specifieke module de betalingen afhandelt. In een nieuwe sessie moet je deze informatie opnieuw geven.
Met ingeschakeld geheugen kan Grok Build:
- projectconventies oproepen die je eerder hebt uitgelegd;
- stappen gebruiken die eerder hebben gewerkt bij het oplossen van fouten;
- architectuurbeslissingen meenemen naar latere sessies;
- voorkomen dat het opnieuw vraagt naar zaken die al zijn beantwoord.
De functie is experimenteel en standaard uitgeschakeld. Totdat je haar inschakelt, verandert het gedrag van de agent niet.
Hoe schakel je geheugen in?
Belangrijkste inzicht
Stel voor één uitvoering de omgevingsvariabele GROK_MEMORY=1 in. Als je geheugen ingeschakeld wilt houden, voeg je een sectie [memory] met enabled = true toe aan ~/.grok/config.toml. Start na het inschakelen van geheugen een nieuwe sessie met /new om opgeslagen notities aan het begin van het werk te laten toevoegen.
Eenmalig, voor één uitvoering:
GROK_MEMORY=1 grok
De variabele geldt alleen voor deze uitvoering. Met het commando export GROK_MEMORY=1 blijft de variabele in de huidige shell ingesteld en wordt geheugen ingeschakeld voor alle volgende grok-uitvoeringen vanuit die shell — totdat de terminalsessie eindigt of je export GROK_MEMORY=0 uitvoert.
Permanent, via de configuratie. Voeg dit toe aan ~/.grok/config.toml:
[memory]
enabled = true
Binnen een sessie, zonder opnieuw te starten: open /memory en druk op t.
Deze schakelaar geldt alleen voor de huidige sessie en wordt niet naar de configuratie geschreven. Je kunt er geheugen mee in- of uitschakelen. Als je het uitschakelt, zijn de geheugentools niet meer beschikbaar, maar worden de bestanden niet van de schijf verwijderd; als je het weer inschakelt, wordt de opslag opnieuw toegankelijk. De schakelaar kan een geforceerde uitschakeling van geheugen voor het hele proces via GROK_MEMORY=0 niet ongedaan maken: /memory blijft de hele sessie onbeschikbaar.
Als instellingen op meerdere plaatsen zijn opgegeven, geldt de volgende prioriteit:
GROK_MEMORY=0schakelt geheugen geforceerd uit voor het hele proces en heeft de hoogste prioriteit.- Een expliciete
enabled = falsein de configuratie schakelt geheugen uit, zelfs als een beheerde externe instelling het inschakelt. - Geheugen kan worden ingeschakeld met
GROK_MEMORY=1, metenabled = truein de configuratie of met een beheerde externe instelling. - Als niets is ingesteld, staat geheugen uit.
Notities worden toegevoegd bij de eerste beurt van een sessie. Als je geheugen midden in je werk hebt ingeschakeld en wilt dat de agent opgeslagen projectinformatie gaat gebruiken, voer dan /new uit. Je kunt in de uitvoer van grok inspect controleren of geheugen is ingeschakeld.
Wat legt Grok Build vast en waar?
Belangrijkste inzicht
Notities worden als Markdown-bestanden opgeslagen in ~/.grok/memory/: een algemene MEMORY.md voor alle projecten, een aparte MEMORY.md voor elk project en sessielogboeken. De automatische samenvatting aan het einde van een sessie wordt geschreven zonder modelaanroep; gedetailleerde notities maak je met /flush en /remember, en /dream groepeert losse vermeldingen op onderwerp.
De structuur van de map ~/.grok/memory/:
| Locatie | Bereik | Inhoud |
|---|---|---|
~/.grok/memory/MEMORY.md | Algemeen | Feiten en voorkeuren voor al je projecten |
~/.grok/memory/ + projectmap met hash + /MEMORY.md | Project | Conventies en context voor een specifieke repository |
~/.grok/memory/ + projectmap met hash + /sessions/ | Sessies | Samenvattingen en logboeken van afzonderlijke sessies |
Aan de naam van de projectmap wordt een korte hash van de repository-identificatie toegevoegd. Voor identificatie wordt de origin-remote in de vorm “organisatie/repository” gebruikt, of het mappad als er geen Git-repository is. Daardoor delen clones en worktrees (afzonderlijke werkkopieën van Git-branches) van dezelfde repository één projectgeheugen: wat de agent in de ene kopie onthoudt, is ook beschikbaar in de andere.
Vermeldingen worden op vier manieren aangemaakt:
- Automatische samenvatting aan het einde van een sessie. Wanneer een sessie eindigt, slaat Grok Build een korte servicesamenvatting op in het daglogboek: het aantal berichten, maximaal vijf eerste inhoudelijke gesprekken en de datum en tijd. De samenvatting wordt op basis van metagegevens opgebouwd, zonder modelaanroep of vertraging. Zeer korte sessies worden overgeslagen: als er minder dan drie inhoudelijke gesprekken zijn of je tekst minder dan 50 bytes bevat, wordt er geen vermelding aangemaakt. De samenvatting bevat geen gebruikte tools, bestandspaden of commando’s. Je kunt automatische samenvattingen uitschakelen met de instelling
session.save_on_end = false. /flush— een gedetailleerde notitie op verzoek. Met dit commando vat het model de belangrijkste punten uit de huidige sessie samen: beslissingen, patronen, stappen om fouten op te lossen en API-bevindingen. De samenvatting wordt in een gedateerd logboek geschreven en geïndexeerd voor toekomstige sessies. De documentatie raadt aan/flushuit te voeren voordat de context wordt gecomprimeerd, aan het einde van een geslaagde sessie voor het oplossen van fouten en na het ontdekken van belangrijke patronen./remember— een expliciet verzoek om iets te onthouden. Typ/remember always open PR links after sendingof zeg tegen de agent: “onthoud dat...”. Voordat de vermelding wordt geschreven, verschijnt een beoordelingspaneel: de notitie wordt pas opgeslagen nadat je bevestigt, en in de feed verschijntMemory saved to ~/.grok/memory/MEMORY.md. Projectinformatie wordt opgeslagen in deMEMORY.mdvan het project; informatie die voor alle projecten geldt, komt in het algemene bestand./dream— samenvoegen. Het commando groepeert verspreide logboeken en notities op onderwerp en verwijdert duplicaten om zoekopdrachten nauwkeuriger te maken. Net als bij/flushwordt het samenvoegen door het model uitgevoerd: het leest de verzamelde vermeldingen en herschrijft ze per onderwerp. Controleer het resultaat daarom regelmatig met/memory. Er is ook een automatische modus: standaard controleert Grok Build bij het opstarten en eenmaal per uur de voorwaarden en begint het met samenvoegen als er minstens 24 uur zijn verstreken en er minstens 5 sessies zijn verzameld. Je kunt de drempelwaarden instellen in de sectie[memory.dream]van de configuratie.
Notities worden doorzocht via een SQLite-index: standaard gebruikt die volledige-tekstzoekopdrachten met FTS5; als een embeddingmodel is ingesteld, wordt daar semantisch zoeken met vectoren aan toegevoegd.
Hoe komt geheugen in een nieuwe sessie terecht?
Belangrijkste inzicht
Bij de eerste beurt van een sessie zoekt Grok Build in het geheugen naar vermeldingen die met het project te maken hebben en voegt die automatisch toe aan de context — je hoeft er niet aan te herinneren. Na automatische contextcompressie wordt opnieuw gezocht. Oudere sessievermeldingen krijgen markeringen om de actualiteit te controleren.
De eerste toevoeging gebruikt een selectiedrempel van min_score = 0.9, die je kunt aanpassen in de sectie [memory.initial_injection]. Na automatische contextcompressie doorzoekt de agent het geheugen opnieuw om informatie terug te halen die samen met oudere gesprekken uit de context kan zijn verwijderd.
Je kunt de agent ook rechtstreeks vragen: “Wat weet je nog?” Het antwoord wordt gegroepeerd per bron: algemene voorkeuren, projectkennis en sessiegeschiedenis.
Sessievermeldingen hebben actualiteitsmarkeringen. Hoe ouder een vermelding in een sessielogboek is, hoe nadrukkelijker de waarschuwing: “Controleer of dit nog actueel is voordat je erop vertrouwt.” De algemene en projectgebonden MEMORY.md-bestanden krijgen zulke markeringen niet: de inhoud daarvan is bedoeld voor langdurig gebruik, dus je moet de nauwkeurigheid zelf bewaken.
Hoe bekijk, bewerk en verwijder je notities?
Belangrijkste inzicht
Het commando /memory opent een overzicht van alle geheugenbestanden met voorbeelden van de inhoud. Je kunt de bestanden in elke teksteditor bewerken — de wijzigingen worden bij de volgende zoekopdracht opgepikt. Het verzoek “vergeet ...” werkt zonder garantie; bewerk het bestand om een specifieke vermelding betrouwbaar te verwijderen.
Het commando /memory opent in een sessie een venster met alle geheugenbestanden, gegroepeerd op bereik: algemeen, project en sessies (in omgekeerd chronologische volgorde). De lijst met bestanden staat links en rechts staat een alleen-lezen voorbeeld van het geselecteerde bestand.
Handige toetsen in het overzicht:
| Toets | Actie |
|---|---|
↑/↓ of j/k | Door de lijst bewegen |
/ | De lijst filteren |
y | Het pad naar het geselecteerde bestand kopiëren |
x | De geselecteerde notitie verwijderen (druk nogmaals om te bevestigen) |
t | Geheugen in- of uitschakelen |
Esc | Het venster sluiten |
In het venster kun je afzonderlijke notities en sessiebestanden verwijderen; de gegenereerde MEMORY.md-indexen (algemeen en project) kun je er niet mee verwijderen.
De tweede methode is om bestanden rechtstreeks te bewerken. Ze staan in ~/.grok/memory/ en kunnen in elke editor worden geopend. Wijzigingen in de map worden bijgehouden: aangemaakte en gewijzigde bestanden worden opnieuw geïndexeerd, en verwijderde bestanden worden bij de volgende zoekopdracht uit de index gehaald.
Het verzoek “vergeet snake_case” werkt zonder garantie: het model zoekt naar overeenkomende vermeldingen en verwijdert die, maar kan er een aantal missen. Open het bestand om verwijdering zeker te stellen (je kunt het pad eenvoudig kopiëren met y in /memory) en verwijder de vermelding handmatig. Je kunt het geheugen volledig wissen vanaf de opdrachtregel: grok memory clear voor projectgeheugen, grok memory clear --global voor algemeen geheugen en grok memory clear --all voor beide.
Waarin verschilt geheugen van een instructiebestand in een repository?
Belangrijkste inzicht
Je schrijft een instructiebestand zoals CLAUDE.md of AGENTS.md en plaatst het in de repository — via Git wordt het met het team gedeeld. De Grok Build-agent beheert geheugennotities en slaat ze op in ~/.grok/memory/, buiten de repository: ze zijn persoonlijk en worden niet via Git gedeeld.
Een repository-instructie wordt gedeeld met iedereen die aan het project werkt en is zichtbaar in de code en de wijzigingsgeschiedenis. Het geheugen groeit tijdens sessies, wordt op je computer opgeslagen en wordt niet vanzelf gepubliceerd.
Geheugen vervangt geen instructiebestand. Algemene projectregels die het hele team en elke agent nodig hebben, horen nog steeds in de repository. We hebben een aparte handleiding over het gebruik van één instructiebestand voor Claude Code, Codex en Cursor: AGENTS.md en CLAUDE.md samen. Geheugen bewaart persoonlijke context: je voorkeuren, wat al is geprobeerd en tot welke beslissing is gekomen.
Claude maakt een vergelijkbaar onderscheid: in het artikel Claude-geheugen en CLAUDE.md leggen we uit waarin geheugen verschilt van CLAUDE.md. Zie Grok Build of Claude Code voor een vergelijking van de tools zelf.
Beperkingen en controleren of geheugen werkt
Belangrijkste inzicht
De functie is experimenteel: commando’s en instellingen kunnen veranderen. Start na het inschakelen van geheugen een nieuwe sessie met /new om notities bij de eerste beurt te laten toevoegen. Sommige vermeldingen worden door het model aangemaakt, dus controleer de notities regelmatig en vraag het model geen geheimen te onthouden.
Houd rekening met de volgende beperkingen:
- Experimentele status. Commando’s, drempelwaarden en gedrag kunnen in toekomstige versies veranderen; raadpleeg de geheugenhandleiding van de repository als iets niet naar verwachting werkt.
- Eerste toevoeging in een nieuwe sessie. Start na het inschakelen van geheugen met
/new, zodat opgeslagen notities bij de eerste beurt worden toegevoegd. - Het model bepaalt wat belangrijk is. Het model maakt de samenvatting voor
/flushen kiest wat er in de notitie komt. Open/memoryelke week of twee om te bekijken wat er is verzameld; verwijder alles wat niet nodig is. - Vraag het model geen geheimen te onthouden. Sleutels, tokens en wachtwoorden horen niet thuis in notities die lang bewaard blijven: de bestanden in
~/.grok/memory/worden als platte tekst opgeslagen. Als er gevoelige informatie is vastgelegd, verwijder die dan door het bestand te bewerken. - Projectgeheugen wordt gedeeld tussen repositorykopieën. Als de agent in één clone iets onthoudt dat voor een andere clone verouderd is, houd dan bij het opschonen rekening met de gedeelde map.
Als geheugen niet werkt:
- Controleer de uitvoer van
grok inspectom te bevestigen dat geheugen is ingeschakeld. - Controleer of
GROK_MEMORY=0of de configuratie geheugen niet uitschakelt. - Voer voor diagnostiek
RUST_LOG=debug GROK_LOG_FILE=/tmp/grok.log grokuit en controleer de regels over geheugen in/tmp/grok.log.
Korte samenvatting
Grok Build-geheugen wordt ingeschakeld met GROK_MEMORY=1 of met [memory] enabled = true in ~/.grok/config.toml. Start na het inschakelen een nieuwe sessie met /new om notities de eerste keer te laten toevoegen. De agent schrijft notities naar ~/.grok/memory/: sessiesamenvattingen zonder modelaanroep, gedetailleerde samenvattingen met /flush, expliciete vermeldingen met /remember na je bevestiging en geordende onderwerpen met /dream. Bekijk en ruim notities op via /memory en door bestanden rechtstreeks te bewerken. De functie is experimenteel, dus controleer drempelwaarden en commando’s aan de hand van de officiële handleiding en bekijk de notities regelmatig.
Bronnen
- Grok Build, officiële handleiding “Geheugen tussen sessies” (gebruikershandleiding, hoofdstuk 13): https://github.com/xai-org/grok-build/blob/main/crates/codegen/xai-grok-pager/docs/user-guide/13-memory.md
- Grok Build, xAI-repository op GitHub: https://github.com/xai-org/grok-build
Voor systematisch werken is de combinatie AI-kloon + Second Brain + Context Engineering nuttig.
Meer details
Vragen en antwoorden
Waarom verschijnen opgeslagen notities niet nadat ik geheugen inschakelde?
Opgeslagen notities worden aan de eerste beurt van een nieuwe sessie toegevoegd. Begin na inschakelen een nieuwe sessie en controleer de gemelde status met grok inspect; een proces dat met GROK_MEMORY=0 startte, kan het niet via de sessieschakelaar inschakelen.
Verwijdert het uitschakelen van geheugen de bestanden?
Nee. Uitschakelen verwijdert de toegang tot geheugentools, maar laat de Markdown-notities op de schijf staan. Bekijk of bewerk opgeslagen notities afzonderlijk als je een vermelding moet verwijderen.