Een PM-agent bouwen met Claude API en permanent geheugen

Mei 2026 · 11 min leestijd · Fran Olivares, oprichter van OlivaresAI

Een projectmanagement-agent gebouwd op de Claude API en Alma permanent geheugen volgt stakeholders, beslissingen, SLA's en standupnotities over dagen en weken heen zonder context te verliezen. De architectuur heeft vier onderdelen: een Claude-gesprekslus, een geheugenopslag gesleuteld op projectentiteit, een extractor die gestructureerde records uit elke chat haalt, en een contextassembler die de juiste slice in elke prompt injecteert. Permanent geheugen is wat Claude verandert van een slim conceptengereedschap in een agent die onthoudt wat het team afgelopen dinsdag heeft besloten.

Projectmanagement is vooral geheugenwerk. Wie is eigenaar van deze stream? Wat hebben we afgesproken over het migratievenster? Waarom hebben we de rate limiter gedescopd? Wanneer blokkeert juridische beoordeling de release? Een agent die deze vragen elke ochtend opnieuw moet stellen, is geen agent — het is een iets snellere stagiair. De manier waarop u dat verandert is door het model een permanente geheugenlaag te geven die het tussen beurten kan lezen en schrijven, automatisch gevuld uit het gesprek. Deze gids doorloopt de referentie-architectuur en de integratiecode, met de Anthropic Claude API als LLM en de REST API van Alma als geheugenlaag.

Waarom heeft een PM-agent specifiek permanent geheugen nodig?

Drie structurele redenen. Ten eerste zijn de entiteiten die een PM volgt (mensen, beslissingen, opleveringen, SLA's, risico's) zelf langlevend — ze overleven per definitie elk afzonderlijk gesprek. Ten tweede is de gesprekstijl frequent en laag-effort: korte standup-berichten, snelle verduidelijkingen, „wat hebben we over X gezegd?"-vragen. Het goedkoop laden van de juiste slice context is belangrijk. Ten derde zijn de kosten van vergeten hoog: een gemiste beslissing wordt een gemiste release, een vergeten dependency wordt een blokker.

Een stateless Claude-gesprek handelt één planningsessie goed af. Zodra de gebruiker continuïteit wil („gisteren hadden we afgesproken…", „wat blokkeert het auth-team deze week?"), moet het gesprek of de volledige geschiedenis in het contextvenster herhalen (duur, uiteindelijk onmogelijk) of vertrouwen op een geheugenlaag buiten het model.

Hoe ziet de referentie-architectuur eruit?

Vier bewegende delen:

Hoe structureer ik geheugencategorieën voor een PM-agent?

Vijf categorieën dekken de meeste teams: stakeholder (mensen met rol + verantwoordelijkheden), decision (wat is afgesproken, wanneer, door wie, met de motivering), sla (toezeggingen aan andere teams of klanten), risk (open issues met eigenaar + mitigatie), milestone (streefdatum + scope + status). Elke herinnering draagt een belangrijkheidsscore zodat de assembler items met hoge inzet kan prioriteren in retrieval.

De categorie is niet alleen voor organisatie — het is onderdeel van het retrieval-signaal. Wanneer de gebruiker vraagt „wat hebben we besloten?", weegt de assembler beslissings-categorie herinneringen hoger. Wanneer ze vragen „wie is geblokkeerd?", stijgen risico-categorie herinneringen omhoog. De contextsamenstelling van Alma stelt per-categorie boost-gewichten beschikbaar voor precies deze use case.

Wat is de integratielus in echte code?

Drie fases per gebruikersbericht. De pseudo-code hieronder gebruikt Node.js met de Alma SDK en de Anthropic SDK, maar dezelfde vorm werkt in Python of een andere stack:

Fase 3 draait op de achtergrond — de gebruiker ziet het gestreamde antwoord direct, en extractie gebeurt in de volgende ~1 s zonder blokkering. Nieuwe herinneringen worden gededupliceerd, contradicties worden gedetecteerd tegen bestaande items, en de opslag blijft automatisch schoon. Volledige SDK-referentie: @olivaresai/alma-sdk; HTTP-equivalenten in de REST API-documentatie.

Hoe gaat de agent om met multi-project isolatie?

Gebruik Alma environments: één omgeving per project. Elke omgeving heeft zijn eigen memories, episodes, procedures en Soul-blokken, volledig geïsoleerd van de andere. De agent geeft environmentId door bij elke geheugen-aanroep; de API handhaaft de grens. Cross-project queries zijn simpelweg niet mogelijk zonder een expliciete omgevingswisseling — wat de juiste standaard is voor een PM-tool waar het lekken van beslissingen van project A naar project B een echt probleem is.

Voor team-brede PM-agents (meerdere mensen die interageren met dezelfde agent), gebruik de Alma teams-resource: elk team heeft gedeelde herinneringen zichtbaar voor alle leden, plus per-gebruiker herinneringen voor persoonlijke voorkeuren. Op rol gebaseerde toegang bepaalt wie wat kan schrijven.

Hoe ziet een dagelijkse standupwisseling er end-to-end uit?

Gebruikersbericht: „standup: backend-team, Maria deblokkeert vandaag de migratie, José zit op de rate limiter; we hebben besloten de GA-release naar vrijdag te verschuiven omdat juridische zaken de DPA nog steeds bekijkt". De flow van de agent:

Veelvoorkomende workflows om in gedachten te houden

Beslissingsarcheologie. „Waarom hebben we de rate limiter gedescopd?" — de agent haalt de beslissings-herinnering plus de omringende episode en de risico-herinnering waar het naar verwees. Retourneert het antwoord met citaten naar de records, zodat de gebruiker kan inzoomen op het gesprek indien nodig.

Stakeholder-opzoeking. „Wie is eigenaar van de migratie?" — rechtstreekse geheugen-query tegen de stakeholder-categorie, retourneert het record. Als het antwoord verouderd is (de rol is vorige week veranderd), vangt contradictiedetectie het op in het volgende gesprek dat de nieuwe eigenaar noemt.

Generatie van terugkerende rapporten. „Genereer een statusrapport voor de auth-stream deze week" — de agent stelt een contextvenster samen van episodes, beslissingen en risico's getagd voor die stream, en stelt vervolgens het rapport op vanuit die gecureerde slice. Dit is aanzienlijk goedkoper en nauwkeuriger dan Claude te vragen ruwe chatgeschiedenis samen te vatten.

Hoe houd ik de systeemprompt klein terwijl ik nog steeds gegrond ben?

Standaard tokenbudgetten in de assembler: ~2 K tokens voor memories, ~1 K voor episodes, ~500 voor procedures, ~500 voor Soul-blokken. Totaal ~4 K — ruim onder het contextbudget van elk model, en de cache hits worden geamortiseerd over het gesprek. Als uw project klein is (<100 actieve herinneringen), kunt u het budget verder verlagen. Als het groot is (10 K+ herinneringen), blijft de assembler op ~4 K omdat retrieval het aantal opgenomen records beperkt, zelfs wanneer de opslag groot is.

Twee dingen zijn operationeel belangrijk: de Soul-blokken (de identiteit van de agent) moeten worden gecached als een stabiele systeemprompt-prefix zodat herhaalde aanroepen niet opnieuw de invoertokens hoeven te betalen; en de dynamische context (memories + episodes) moet na het cache-breakpoint zitten zodat elke aanroep alleen het gewijzigde deel opnieuw uploadt. De prompt-caching documentatie van Anthropic dekt de breakpoint-plaatsing.

Wat kost dit in de praktijk?

In een typische PM-teamflow (~20 berichten/dag per gebruiker, voornamelijk standups + verduidelijkingen), worden de marginale kosten gedomineerd door de LLM-aanroepen zelf. De geheugenlaag voegt toe: één assemble-aanroep (een paar KB lezen + retrieval, ~30 ms), één extract-aanroep (Haiku, ~$0,001 per beurt). Totale geheugen-overhead per dag per actieve gebruiker: ruim onder een cent. Vergelijk met de waarde van het PM-team dat geen beslissingen verliest — en de rekening is duidelijk.

Hoe begin ik met prototypen?

Het Starter-abonnement van Alma ($14/maand) is het instapniveau en bevat de permanente geheugenlaag. Registreer u op alma.olivares.ai, genereer een API-sleutel in Instellingen en clone de SDK-starter vanaf de developerspagina. Bedraad de drie-fase lus in uw agentcode, richt deze op één testproject en draai het een week. De opslag zal natuurlijk gevuld worden door de gesprekken; u ziet beslissingen, stakeholders en risico's zich opstapelen zonder handmatige gegevensinvoer. Vanaf daar is het slechts een kwestie van het opvoeren van de categorieën en het afstemmen van de assembler.

Verwante lectuur: Permanent geheugen voor AI: complete gids 2026 · Hoe u AI permanent geheugen geeft · Drielaagse geheugenarchitectuur · Documentatie contextsamenstelling · Environments.

See plans