Loading blog posts...
Loading blog posts...
Laden...

U typte een prompt van vijf woorden, maar toch liep Claude Code opnieuw tegen een sessielimiet aan. De prompt is namelijk niet het volledige verzoek. Bij elke interactie kan Claude ook eerdere berichten, bestanden, tooldefinities en terminaluitvoer verwerken.
De structurele oplossing is bepalen welke informatie de sessie binnenkomt, wanneer u de context wist en welke werkzaamheden een eigen sessie verdienen.
Important
Sessielimieten worden bepaald door de verwerkte context, niet alleen door de lengte van een nieuwe prompt. Een kort verzoek kan alsnog veel capaciteit vergen als er een lange conversatie aan voorafgaat.
Rond de huidige taak af, sla eventuele wijzigingen op en voer vervolgens het volgende uit:
text/clear
Context is alle informatie die Claude tijdens een verzoek kan meenemen. Denk aan de conversatie, systeeminstructies, toolbeschrijvingen, geselecteerde bestanden, opdrachtuitvoer en gegenereerde analyses.
Met /clear verwijdert u de oude conversatie uit toekomstige verzoeken. Projectbestanden worden niet verwijderd en wijzigingen die naar schijf zijn geschreven, worden niet ongedaan gemaakt.
Daarom is /clear nuttig na het afronden van een bugfix, documentatie-update, refactor of onderzoek. Nog belangrijker is het gebruik ervan voordat u overstapt op werk dat geen verband houdt met de vorige taak.
Een sessie die begint met het debuggen van authenticatie, hoort niet door te lopen in het ontwerp van een databaseschema. Oude logs, hypothesen en bestandsinhoud kunnen aan latere verzoeken gekoppeld blijven, ook als ze niet langer relevant zijn.
Geef Claude na /clear een compacte beschrijving van de volgende taak:
textTask: [SPECIFIC TASK] Relevant files: - [FILE PATH] - [FILE PATH] Constraints: - [CONSTRAINT] - [CONSTRAINT] Done when: - [TESTABLE COMPLETION CONDITION] Do not inspect unrelated directories unless required.
Deze prompt vervangt de opgebouwde conversatiecontext door een kleine, expliciete werkset. Ook beperkt hij verkennende bestandslezingen, waarmee anders onnodige code in de sessie terecht kan komen.
De voltooiingsvoorwaarde is belangrijk. Zonder zo'n voorwaarde kan een agent blijven onderzoeken, testen en aanpassen nadat het nuttige werk al is afgerond.
Geef belangrijk werk een naam voordat u de sessie verlaat:
text/rename
Kies een beschrijvende naam die verwijst naar het resultaat, zoals checkout-timeout-investigation of postgres-migration-plan. Een betekenisvolle naam maakt het later eenvoudiger om de juiste sessie terug te vinden dan wanneer u naamloze sessies moet doorzoeken.
Hervat een opgeslagen sessie alleen wanneer de geschiedenis nog relevant is:
text/resume
Continuïteit heeft een prijs. Hervatten is zinvol wanneer eerdere beslissingen, testresultaten en afgewezen oplossingsrichtingen anders opnieuw moeten worden gereconstrueerd.
Gebruik rewind wanneer het latere deel van een conversatie onoverzichtelijk of onjuist is geworden:
text/rewind
Met /rewind keert u terug naar een eerder punt, zonder de volledige latere conversatie mee te nemen. Dit is nuttig na een langdurig onderzoek dat op niets uitliep, of na een instructie die de sessie de verkeerde kant op stuurde.
| Opdracht | Gebruik deze wanneer | Effect op de context |
|---|---|---|
/clear | U begint aan werk dat losstaat van de vorige taak | Verwijdert de eerdere conversatie uit toekomstige interacties |
/rename | Het werk later mogelijk moet worden hervat | Maakt de sessie eenvoudiger terug te vinden |
/resume | Eerder denkwerk nog relevant is | Herstelt de opgeslagen sessie |
/rewind | Latere interacties niet meer bruikbaar zijn | Keert terug naar een eerder controlepunt |
Start voor een kleine, afgebakende taak een afzonderlijke sessie met een goedkoper model:
bashclaude --model haiku
Haiku is geschikt voor taken als het classificeren van fouten, samenvatten van een kort bestand, hernoemen van identifiers of opstellen van gerichte tests. Voor complexere redeneertaken kan een krachtiger model gerechtvaardigd zijn.
Kies het model, het inspanningsniveau en de snelle modus aan het begin van de sessie. Houd deze instellingen stabiel zolang de sessie actief blijft.
Claude Code kan promptcaching gebruiken. Hierdoor hoeft identieke context niet steeds vanaf nul te worden verwerkt zolang het gecachete materiaal geldig blijft. Als u tijdens een sessie van model of verwerkingsinstellingen wisselt, kan die cache ongeldig worden.
In dat geval kan bij het volgende verzoek een veel groter deel van de conversatie opnieuw worden verwerkt. De zichtbare prompt blijft kort, maar de effectieve invoer wordt groot.
Warning
Halverwege een grote sessie overstappen op een goedkoper model kan duurder uitvallen dan verwacht. Met een afzonderlijke, kleine sessie voorkomt u dat de oude context wordt meegenomen en blijft de cache van de actieve sessie intact.
Gebruik dit patroon wanneer zich binnen de hoofdsessie een kleine neventaak voordoet:
bashcd /path/to/project claude --model haiku
Geef de nieuwe sessie vervolgens alleen de benodigde informatie:
textInspect src/auth/token.ts. Find the branch that returns an expired token. Return: 1. The responsible function 2. The condition that triggers the bug 3. A minimal patch Do not inspect other directories unless this file imports relevant logic.
De afzonderlijke sessie neemt geen eerdere discussie, opdrachtgeschiedenis of niet-gerelateerde bestanden over. De context begint vrijwel op nul en groeit alleen rond de gedelegeerde taak.
Modelkeuze blijft een afweging. Een kleiner model verlaagt de kosten voor eenvoudig werk, terwijl een groter model complexe redeneertaken mogelijk met minder mislukte pogingen afrondt. Kijk daarom naar de totale hoeveelheid verwerkt werk, niet alleen naar de prijs per afzonderlijk verzoek.
Vervang onbeperkte builduitvoer door een gefilterde opdracht:
bashnpm run build > /tmp/build.log 2>&1 || { tail -n 80 /tmp/build.log exit 1 } echo "Build completed successfully"
Deze opdracht slaat de volledige log buiten de conversatie op. Claude ziet één succesmelding, of de laatste 80 regels wanneer de build mislukt.
Zonder filtering kunnen opdrachten voor pakketinstallatie, compilatie, tests en containers honderden of duizenden regels uitvoeren. Die uitvoer kan in latere interacties beschikbaar blijven en herhaaldelijk worden verwerkt.
Een bruikbare toolreactie beantwoordt drie vragen: is de opdracht geslaagd, wat is er misgegaan en waar staat de volledige log? Het is niet nodig om elke geslaagde bewerking opnieuw weer te geven.
Rapporteer bij testsuites alleen de fouten:
bashpytest -q --tb=short > /tmp/pytest.log 2>&1 || { grep -A 20 -B 5 -E "FAILED|ERROR|Traceback" /tmp/pytest.log | tail -n 160 exit 1 } echo "Tests passed"
De uitvoerlimiet voorkomt dat één kettingreactie van fouten de sessie overspoelt. De volledige log blijft in /tmp/pytest.log beschikbaar voor gericht onderzoek.
Ook Git-uitvoer profiteert van deze aanpak:
bashgit status --short git diff --stat git diff -- src/auth/token.ts
Met git diff zonder pad kan een volledige wijzigingenset van de repository in de context terechtkomen. Begin met de samenvatting en vraag daarna alleen het bestand of fragment op dat nodig is voor de huidige beslissing.
Maak een klein script wanneer dezelfde opdracht met veel uitvoer regelmatig wordt uitgevoerd:
bash#!/usr/bin/env bash set -o pipefail LOG_FILE="${TMPDIR:-/tmp}/project-build.log" if npm run build >"$LOG_FILE" 2>&1; then echo "PASS: build" else echo "FAIL: build" tail -n 100 "$LOG_FILE" exit 1 fi
Door dit script op te slaan als scripts/build-brief.sh, zorgt u voor consistente, compacte uitvoer voor ontwikkelaars, CI-taken en coding agents. Tegelijkertijd blijven foutdetails beschikbaar zonder dat de volledige log in Claudes context wordt geladen.
Vraag Claude het compacte script te gebruiken:
textRun scripts/build-brief.sh. If it fails, inspect only the reported errors first. Read the complete log only when those errors are insufficient.
Hiermee stelt u een uitvoerbudget in. Volledige logs worden de uitzondering in plaats van de standaard.
Controleer de huidige context voordat u meer integraties inschakelt:
text/context
De contextweergave laat zien hoeveel ruimte wordt ingenomen door de conversatie, tools, bestanden en ander sessiemateriaal. Voer deze opdracht uit nadat u een nieuwe tool hebt verbonden of wanneer een sessie onverwacht veel capaciteit verbruikt.
Model Context Protocol, oftewel MCP, verbindt Claude Code met externe tools en gegevensbronnen. Een MCP-server kan bijvoorbeeld toegang bieden tot issuetrackers, databases, browsers, versiebeheer, monitoringsystemen of interne API's.
Elke verbonden server kan toolnamen, schema's, instructies en documentatie toevoegen. Een tool hoeft niet eens te worden uitgevoerd om context te verbruiken als de volledige definitie bij de start van de sessie wordt geladen.
Schakel alleen servers in die nodig zijn voor de huidige taak. Voor een CSS-correctie in de frontend zijn doorgaans niet tegelijkertijd tools voor databasebeheer, incidentmanagement en cloudimplementatie nodig.
| Toolstatus | Contextgedrag | Geschikt gebruik |
|---|---|---|
| Ingeschakeld met volledige definities | Instructies kunnen direct worden geladen | Tools die gedurende de hele sessie nodig zijn |
| Uitgesteld | Volledige instructies worden op verzoek geladen | Grote of incidenteel gebruikte toolsets |
| Uitgeschakeld | Voegt geen actieve toolinstructies toe | Niet-gerelateerde integraties |
Geef waar mogelijk de voorkeur aan tools die als uitgesteld zijn gemarkeerd. Door uitgesteld te laden, blijven grote schema's buiten de actieve context totdat de tool daadwerkelijk nodig is.
Een MCP-server voor databases kan bijvoorbeeld veel bewerkingen en uitgebreide parameterschema's aanbieden. Als de taak alleen bestaat uit het aanpassen van statische documentatie, hebben die definities geen waarde, maar kunnen ze toch elk verzoek groter maken.
Controleer de MCP-configuratie wanneer /context laat zien dat tools veel ruimte innemen. In de documentatie van Model Context Protocol staat hoe servers functionaliteit beschikbaar stellen en verbinding maken met clients.
Tip
Behandel ingeschakelde tools als geïmporteerde softwaredependencies. Elke import moet de huidige taak ondersteunen, niet een hypothetisch toekomstig verzoek.
Gebruik een sub-agent voor een afgebakende onderzoekstaak:
textReview the files under src/payments/providers/. Return no more than 400 words covering: - Provider interface - Retry behavior - Error mapping - Shared dependencies - The three files most relevant to adding a new provider Do not propose code changes.
Een sub-agent kan een grote hoeveelheid materiaal verwerken en een korte samenvatting terugsturen naar de hoofdsessie. Dat is vooral waardevol wanneer die samenvatting als basis dient voor meerdere latere beslissingen.
Delegatie neemt het tokenverbruik niet weg. Een deel van het werk verschuift slechts naar een andere agent of sessie. Het totale verbruik kan zelfs toenemen als de sub-agent veel bestanden leest, een lang antwoord genereert en de bovenliggende agent het onderzoek daarna herhaalt.
U bespaart alleen wanneer het compacte resultaat herhaaldelijke toegang tot het omvangrijkere bronmateriaal vervangt.
Gebruik Haiku voor eenvoudige gedelegeerde taken, zoals het classificeren van bestanden, gericht extraheren van informatie of maken van korte samenvattingen. Voor complexe architectuuranalyses kan een krachtiger model nodig zijn, vooral wanneer fouten tot extra werk zouden leiden.
Sla delegatie over als de bovenliggende agent slechts één klein gegeven nodig heeft en daarna direct klaar is. Een andere agent starten brengt extra instructies, toolaanroepen en een retourbericht met zich mee, terwijl het resultaat nauwelijks opnieuw wordt gebruikt.
Een praktische beslisregel is eenvoudig:
| Situatie | Delegeren? | Reden |
|---|---|---|
| Dertig bestanden samenvatten voor herhaaldelijke planning | Vaak nuttig | Eén compact resultaat vervangt herhaaldelijk lezen |
| Eén constante vinden in één bekend bestand | Meestal niet nodig | De overhead van delegatie is groter dan de taak |
| Meerdere logs vergelijken en terugkerende fouten rapporteren | Vaak nuttig | Ruwe logs blijven buiten de hoofdsessie |
| Een nauw verweven wijziging implementeren | Hangt ervan af | De sub-agent beschikt mogelijk niet over de benodigde ontwerpcontext |
Houd het retourformaat strikt. Een sub-agent die pagina's vol tekst terugstuurt, verplaatst zijn omvangrijke context simpelweg naar de bovenliggende sessie.
Zet een document eerst om naar platte tekst als de lay-out niet relevant is:
bashpdftotext architecture-review.pdf /tmp/architecture-review.txt wc -l /tmp/architecture-review.txt sed -n '1,220p' /tmp/architecture-review.txt
Met deze werkwijze meet u de omvang van het document voordat u het laadt. Bovendien kunt u gericht lezen in plaats van de volledige PDF in te dienen.
Screenshots en PDF's kunnen meer invoer verbruiken dan vergelijkbare platte tekst. Afbeeldingen vereisen visuele verwerking, terwijl PDF's tekst, lay-out, ingesloten lettertypen en grafische elementen kunnen combineren.
Gebruik screenshots alleen voor daadwerkelijk visuele problemen, zoals onjuiste tussenruimte, afgekapt beeld, kleuren of grafiekweergave. Plak bij stacktraces, configuratie en logs liever de tekst.
Gebruik een gerichte opdracht voor lange documenten:
textRead /tmp/architecture-review.txt. Inspect only sections related to: - Authentication boundaries - Secret storage - Token rotation Return a maximum of 12 bullet points. Include source section names for every finding.
Deze afbakening voorkomt dat Claude het volledige document als even belangrijk behandelt. Met de namen van de bronsecties blijft elk resultaat herleidbaar, zonder dat lange citaten nodig zijn.
Voor geplande taken en achtergrondagents geldt dezelfde discipline. Controleer terugkerende taken en schakel werk uit dat niet langer bijdraagt aan een actief doel.
Koppel geen oude, grote sessie aan een veelvoorkomende achtergrondtaak. Terugkerende taken kunnen bij elke uitvoering verouderde geschiedenis verwerken. Bovendien kunnen lange intervallen de voordelen van caching beperken.
Leg voor elke terugkerende taak het volgende vast:
textTask: [BACKGROUND TASK] Frequency: [SCHEDULE] Required inputs: [FILES OR DATA] Maximum output: [LINES OR WORDS] Stop condition: [SUCCESS CONDITION] Session policy: Start fresh unless continuity is required
Dit sjabloon scheidt duurzame taakinstructies van de historische conversatie. Daarnaast stelt het een duidelijke bovengrens aan de uitvoer van elke run.
Voer deze opdrachten uit op natuurlijke controlepunten:
text/context
text/usage
text/cost
/context laat zien wat het huidige contextvenster in beslag neemt. Dit is de eerste controle wanneer een sessie groot aanvoelt, ondanks korte prompts.
Met /usage volgt u het verbruik tijdens een actieve sessie. Voer deze opdracht uit na brede zoekacties in de codebase, het lezen van grote documenten of intensief toolgebruik.
/cost geeft kosteninformatie wanneer de huidige Claude Code-configuratie en het accounttype dit ondersteunen. Vergelijk de uitkomst vóór en na kostbare bewerkingen, in plaats van te wachten tot de taak is afgerond.
Een nuttige routine voor controlepunten is:
text1. Run /context before a broad investigation. 2. Complete one bounded unit of work. 3. Run /usage and /cost. 4. Save conclusions to a project file. 5. Run /clear before unrelated work.
Conclusies op schijf opslaan is belangrijk. Conversatiegeheugen is kostbaar en tijdelijk, terwijl u een compacte projectnotitie alleen hoeft te laden wanneer dat nodig is.
Gebruik bijvoorbeeld het controlepuntbestand docs/claude-checkpoint.md:
markdown## Objective [CURRENT OBJECTIVE] ## Confirmed findings - [FINDING] - [FINDING] ## Decisions - [DECISION AND REASON] ## Remaining work - [NEXT ACTION] ## Relevant files - `[FILE PATH]`
Dit bestand zet een lange conversatie om in een klein, controleerbaar artefact. Een nieuwe sessie kan het lezen zonder elke mislukte opdracht en verworpen hypothese opnieuw te doorlopen.
Voor bredere limieten aan infrastructuurkosten geldt hetzelfde principe van contextbudgettering voor gehoste diensten. De gids over kosten en limieten van Cloudflare Workers laat zien hoe verborgen uitvoeringsbeperkingen architectuurkeuzes beïnvloeden.
Maak één gecontroleerde sessie en leg de uitgangssituatie vast:
text/clear
text/context
Voer vervolgens één rumoerige opdracht normaal uit, controleer /context, wis de context opnieuw en voer daarna de gefilterde versie uit. Vergelijk hoeveel opdrachtuitvoer in de sessie terechtkomt.
Schakel daarna slechts één benodigde MCP-server in en controleer de context opnieuw:
text/context
Herhaal dit nadat u een tweede server hebt ingeschakeld. Zo maakt u de contextkosten van elke integratie zichtbaar zonder op aannames te vertrouwen.
Rond tot slot twee niet-gerelateerde taken af. Blijf voor de eerste test in dezelfde sessie werken. Gebruik voor de tweede test /clear tussen de taken. Vergelijk /usage en /cost op dezelfde controlepunten.
De exacte waarden hangen af van het model, het account, de cachestatus en de taak, maar het patroon van een kleinere context moet duidelijk zichtbaar zijn.
Als /clear belangrijke kennis lijkt te verwijderen, ontbrak er een duurzaam controlepunt. Sla bevestigde bevindingen en beslissingen op in een klein Markdown-bestand voordat u de context wist.
Als het verbruik sterk stijgt nadat u van model wisselt, kan de promptcache ongeldig zijn geworden en eerdere context opnieuw hebben verwerkt. Houd de oorspronkelijke sessie stabiel en open een afzonderlijke sessie voor het andere model.
Als /context laat zien dat tools veel ruimte innemen, schakel dan niet-gerelateerde MCP-servers uit. Geef de voorkeur aan uitgestelde tools wanneer de server die ondersteunt.
Als opdrachtuitvoer de context domineert, stuur volledige logs dan door naar een bestand en toon alleen de fouten. Vraag Claude niet dezelfde uitgebreide opdracht opnieuw uit te voeren voordat de bestaande log is gecontroleerd.
Als een sub-agent het totale verbruik verhoogt, beperk dan het aantal bestanden en stel een maximum in voor de uitvoer. Laat delegatie volledig achterwege wanneer het resultaat maar één keer wordt gebruikt.
Als een PDF of screenshot onverwacht veel verbruik veroorzaakt, extraheer dan de relevante tekst. Behoud de oorspronkelijke visuele invoer alleen wanneer de lay-out of weergave invloed heeft op het antwoord.
Als terugkerend werk veel context verbruikt, controleer dan of elke run met een oude sessie begint. Een nieuwe geplande sessie met expliciete invoer is vaak kleiner en eenvoudiger te controleren.
Begin hier (uw eerste stap)
Voer /context uit in de huidige Claude Code-sessie en bepaal welke contextcategorie het grootst is voordat u een nieuw verzoek verstuurt.
Snelle verbeteringen (direct resultaat)
/clear uit en geef daarna alleen relevante bestanden en één testbare voltooiingsvoorwaarde op.Verdieping (voor wie verder wil gaan)
docs/claude-checkpoint.md, werk het bestand bij na elke afgeronde mijlpaal en start voor de volgende mijlpaal een nieuwe sessie.De sessielimieten van Claude Code zijn gebaseerd op de volledige verwerkte context, niet alleen op de meest recente prompt. Conversatiegeschiedenis, bestanden, opdrachtuitvoer, tooldefinities, afbeeldingen en gedelegeerd werk tellen allemaal mee.
Gebruik /clear tussen taken die niets met elkaar te maken hebben. Gebruik /rename, /resume en /rewind wanneer continuïteit waardevol is, in plaats van elke taak in één steeds groter wordende sessie uit te voeren.
Kies het model, het inspanningsniveau en de snelle modus voordat u aan omvangrijk werk begint. Start voor kleine neventaken een afzonderlijke Haiku-sessie, in plaats van het model van een actieve sessie te wijzigen.
Filter shelluitvoer, bewaar volledige logs op schijf en laad alleen relevante fouten.
Schakel ongebruikte MCP-servers uit en geef waar mogelijk de voorkeur aan uitgestelde tools.
Delegeer omvangrijk onderzoek waarvan u de resultaten vaker gebruikt, niet het opzoeken van één regel.
Zet PDF's en screenshots om naar platte tekst wanneer de visuele structuur niet relevant is.
Controleer tijdens langdurig werk regelmatig /context, /usage en /cost.
Kleine sessies ontstaan niet alleen door kortere prompts. Ze zijn het resultaat van strikte grenzen rond geschiedenis, tools, uitvoer en taakomvang.