Terug naar het woordenboek
intermediateTechnisch4 min leestijd

Compaction

Compaction (context-compactie)

Dennis ClaassenDoor Dennis Claassen · Laatst bijgewerkt feb 2026

Simpele uitleg

Compaction is het automatisch samenvatten van een lang AI-gesprek zodat de assistent verder kan zonder vast te lopen. Een AI zoals Claude heeft een werkgeheugen (het contextvenster) waarin je hele sessie zit: vragen, bestanden, commando-output, instructies. Dat geheugen heeft een limiet. Raakt het bijna vol, dan gaat Claude eerdere instructies 'vergeten' of meer fouten maken. Compaction lost dat op: het oudere deel van het gesprek wordt ingedikt tot een korte samenvatting, de losse oude berichten verdwijnen, en de AI werkt verder met die samenvatting plus de recente berichten. Zo blijven beslissingen en code behouden terwijl er ruimte vrijkomt.

Technische definitie

Compaction vat oudere context samen en vervangt die wanneer het gesprek een instelbare drempel nadert. In de Claude API heet dit server-side compaction (beta-header compact-2026-01-12, strategie compact_20260112 in context_management.edits): de API maakt een compaction-block met de samenvatting en dropt automatisch alle berichten daarvoor bij volgende requests; de systeemprompt blijft behouden. In Claude Code ruimt auto-compaction eerst oude tool-outputs op en vat daarna het gesprek samen. Compaction speelt binnen een sessie, niet tussen sessies.

Waarom dit belangrijk is

Waarom lijkt Claude soms te 'verdommen' in een lang gesprek? Omdat de prestaties zakken naarmate het contextvenster voller raakt, niet pas als het vol is. Zonder compaction zou een lange agentic taak gewoon stuklopen tegen de tokenlimiet. Met compaction blijft de kern (welke bestanden, welke beslissingen, welke code) bewaard en kan de AI uren doorwerken. Voor wie serieus met agentic tools bouwt is dit het verschil tussen een sessie die crasht en een sessie die afmaakt.

Hoe het werkt

Het contextvenster vult zich met elke vraag, elk gelezen bestand en elke commando-output. Nadert het de limiet, dan gooit Claude Code eerst oude tool-outputs weg en vat daarna het oudere gesprek samen tot een compacte samenvatting. Je verzoeken en belangrijke code-snippets blijven bewaard; gedetailleerde instructies van vroeg in het gesprek kunnen verloren gaan. In de API gebeurt dit als een apart compaction-block dat alle voorgaande berichten vervangt. Je kunt het ook handmatig sturen met /compact (eventueel met focus) of de context volledig wissen met /clear.

Je kunt compactiegedrag ook structureel sturen vanuit CLAUDE.md, niet alleen per los /compact-commando. Zet een sectie 'Compact instructions' neer met wat altijd bewaard moet blijven (bijvoorbeeld testresultaten of code-wijzigingen), en Claude houdt daar rekening mee bij elke samenvatting in dat project. Let op: /compact leest eerst het hele gesprek dat het gaat samenvatten, dus het is zelf een groot verzoek en dus niet gratis; alleen /clear kost niets omdat er niets te lezen valt. Bron: code.claude.com/docs/en/costs, zelf geopend op 03-09-2026.

Use cases

  • Lange codeersessie afmaken zonder crash

    Bij een grote refactor of feature loopt het contextvenster snel vol. Auto-compaction vat het oudere deel samen zodat de agent doorwerkt; handmatig /compact tussen taken houdt het schoon.

  • Eigen agent bouwen op de Claude API

    Ontwikkelaars zetten server-side compaction aan (compact-2026-01-12) zodat hun agent langlopende taken aankan zonder zelf samenvattingslogica te schrijven.

  • Onderzoek uitbesteden aan een subagent

    Een subagent krijgt een vers, apart contextvenster en rapporteert alleen een samenvatting terug, zodat het hoofdgesprek niet vervuild raakt.

Voorbeelden

  • Handmatig compacten met focus

    In Claude Code vat je het gesprek gericht samen op een logisch moment, met behoud van wat ertoe doet.
    /compact focus op de API-wijzigingen
  • Server-side compaction aanzetten (API)

    Met de beta-header en de compaction-strategie regelt de Claude API het samenvatten automatisch.
    anthropic-beta: compact-2026-01-12
    context_management.edits: [{ type: "compact_20260112" }]
  • Compact-instructies vastleggen in CLAUDE.md

    Geldt bij elke samenvatting in dit project, niet alleen bij een losse /compact-opdracht.
    # Compact instructions
    
    When you are using compact, please focus on test output and code changes

Veelgemaakte fouten

  • Compaction is hetzelfde als geheugen tussen sessies.

    Nee. Compaction speelt binnen een sessie. Elke nieuwe Claude Code-sessie start met een vers, leeg contextvenster; vorige gesprekken komen niet automatisch mee. Persistentie tussen sessies is een aparte feature (auto memory / CLAUDE.md).

  • Belangrijke regels midden in het gesprek typen werkt prima.

    Instructies diep in een lang gesprek kunnen bij compaction wegvallen. Zet persistente regels in CLAUDE.md: dat bestand wordt elke sessie opnieuw geladen en overleeft compaction.

  • Vaak tussendoor /compact draaien kost geen tokens.

    Compaction leest eerst het volledige gesprek dat het gaat samenvatten, dus het is zelf een groot verzoek. Op een lange sessie kost /compact evengoed tokens. Wil je echt geen kosten, gebruik /clear: dat leest niets, want het wist gewoon alles.

Tools die dit gebruiken

  • Claude Code
  • Anthropic API
  • Amazon Bedrock

Veelgestelde vragen

  • Waarom vergeet Claude dingen in een lang gesprek?
    Het contextvenster (het werkgeheugen) raakt vol. Daarin zit je hele sessie, en als het de limiet nadert zakken oude instructies weg of maakt de AI meer fouten. Het is geen onwil maar een geheugenlimiet. De prestaties dalen al onderweg, niet pas als het venster helemaal vol is.
  • Wat betekent compaction en wat doet /compact?
    Compaction vat het oudere deel van je gesprek samen tot een korte samenvatting en vervangt de losse oude berichten daarmee, zodat de AI verder kan zonder tegen de tokenlimiet aan te lopen. Met het commando /compact start je dat handmatig op een moment dat jou uitkomt, bijvoorbeeld tussen twee taken.
  • Wat is het verschil tussen /compact en /clear?
    /compact bewaart een samenvatting van wat je deed en gaat daarmee verder. /clear wist de context volledig en begint met een schone lei. Anthropic's eigen advies: heb je Claude meer dan twee keer voor hetzelfde gecorrigeerd, doe dan /clear en herstart met een betere prompt.
  • Hoe zorg ik dat Claude mijn instructies niet vergeet?
    Zet ze niet midden in een lang gesprek, maar in CLAUDE.md. Dat bestand wordt elke sessie opnieuw geladen, dus die regels overleven compaction. Je kunt er ook aangeven wat bewaard moet blijven, zodat de samenvatting jouw belangrijkste afspraken meeneemt.
  • Kan ik instellen wat compaction altijd moet bewaren, zonder elke keer /compact met focus te typen?
    Ja. Zet een sectie 'Compact instructions' in je CLAUDE.md met wat altijd bewaard moet blijven, bijvoorbeeld testresultaten of code-wijzigingen. Die regels gelden dan bij elke samenvatting in dat project, niet alleen bij een losse /compact-opdracht met focus.
  • Kost /compact tokens of is het gratis?
    Compaction kost tokens: het leest eerst het hele gesprek dat het gaat samenvatten, dus het is zelf een groot verzoek, zeker op een lange sessie. Wil je echt niets uitgeven, gebruik /clear: dat wist alles zonder iets te lezen.
  • Claude wordt trager of maakt meer fouten in een lange sessie, hoe los ik dat op?
    Dan is de context vervuild. Doe /clear en herstart met een scherpere prompt, of besteed deelvragen uit aan een subagent die een eigen, vers contextvenster krijgt. Een schone sessie met een betere prompt verslaat bijna altijd een lange sessie met opgestapelde correcties.
  • Onthoudt Claude een vorig gesprek in een nieuwe sessie?
    Niet automatisch binnen Claude Code: elke nieuwe sessie start met een vers, leeg contextvenster. Compaction speelt alleen binnen een sessie. Persistentie tussen sessies loopt via aparte features zoals auto memory of CLAUDE.md, niet via compaction.

Wil je deze term in de praktijk leren toepassen?