Terug naar blog
AI in de praktijk 7 min leestijd

Context engineering: hoe je AI systematisch slimmer maakt

Losse prompts schalen niet. Context engineering is hoe je AI systematisch de kennis geeft die het nodig heeft, zonder je context window vol te proppen.

Context engineering: hoe je AI systematisch slimmer maakt

Je kent nu de basis van prompt engineering. Maar losse prompts schalen niet. Elke keer opnieuw uitleggen wie je bent, wat je project doet, welke conventies je hanteert? Dat werkt niet.

Context engineering is de volgende stap. Het systematisch opbouwen van kennis die AI bij elke interactie kan gebruiken. Maar ook: slim omgaan met de beperkingen. Want context is eindig, en alles wat je toevoegt kost ruimte.

Hoeveel context heb je eigenlijk?

Claude heeft een context window van 200K tokens. Klinkt veel, maar het vult snel. Zie de officiële Claude documentatie voor exacte limieten per model.

De system prompt (instructies van Anthropic zelf) neemt al een flinke hap. Bij Claude Code blijft er ongeveer 180K over voor jouw gesprek. En dat moet alles bevatten: je vraag, de bestanden die Claude leest, de tool outputs, het hele gesprek.

Lees je een bestand van 1000 regels? Dat is zo 4000 tokens. Tien bestanden en je zit al op 40K. Tel daar een paar MCP responses bij op en je snapt het probleem.

Context is schaars. Gebruik het slim.

De context hiërarchie

Niet alle context is gelijk. Er is een hiërarchie:

1. System prompt

De basis: wie is de AI, wat mag het, wat niet. Dit wordt altijd meegestuurd en kost altijd tokens.

2. Project context

Domeinkennis, architectuur, conventies. Wat moet AI weten over jouw specifieke situatie? Dit wil je persistent maken, niet elke keer opnieuw typen.

3. Conversation context

Wat is er al besproken in dit gesprek? Eerdere vragen, antwoorden, beslissingen. Dit groeit tijdens het gesprek.

4. Task context

Wat moet er nu gebeuren? De specifieke vraag, de relevante bestanden, de huidige state.

De kunst is: de juiste informatie op het juiste niveau. Domeinkennis hoort niet in elke prompt. Maar een specifieke conventie die relevant is voor deze taak, wel.

Tool calling: AI die handelt

Tool calling is een van de krachtigste AI-features. De AI roept functies aan, krijgt resultaten terug, en gebruikt die in het antwoord. Anthropic's tool use documentatie legt de technische kant uit.

Bij SIA kan de AI:

  • Incidenten opslaan in de database
  • Foto's analyseren
  • Procedures opzoeken
  • Follow-up taken aanmaken

Maar elke tool call kost context. De tool definitie, de parameters, de response. Hoe meer tools je beschikbaar stelt, hoe meer context je kwijt bent voordat je überhaupt begint.

MCPs: krachtig maar hongerig

MCP servers zijn de standaard manier om AI tools en data te geven. MCP (Model Context Protocol) is Anthropic's open standaard voor AI-tool integratie. Laravel Boost, Ref, Context7, custom servers. Krachtig spul.

Maar MCPs slokken context op. Elke MCP registreert zijn tools bij de AI. Elke tool heeft een beschrijving, parameters, voorbeelden. Tel dat op voor vijf MCPs met elk tien tools en je bent zo 10-20K tokens kwijt. Voordat je iets gevraagd hebt.

Praktische tips:

  • Gebruik alleen MCPs die je echt nodig hebt
  • Disable tools die je niet gebruikt
  • Overweeg of een simpele API call niet genoeg is

Soms is een MCP overkill. Als je alleen een externe service wilt aanroepen, is een directe API call vaak efficiënter. Minder context overhead, sneller, simpeler.

CLAUDE.md: krachtig maar duur

In Claude Code leg je project context vast in CLAUDE.md. Conventies, architectuur, domeinkennis. Claude leest dit aan het begin van elke sessie. Zie de Claude Code documentatie voor de officiële richtlijnen.

Maar CLAUDE.md wordt altijd geladen. Alles wat erin staat kost tokens bij elke interactie. Een CLAUDE.md van 2000 woorden is zo 3000 tokens. Bij een lang gesprek met veel tool calls tikt dat aan.

Praktische tips:

  • Houd CLAUDE.md lean: alleen wat altijd relevant is
  • Verplaats details naar aparte bestanden die Claude kan lezen wanneer nodig
  • Gebruik .docs folders voor uitgebreide documentatie

Skills: laden wanneer nodig

Skills zijn dé oplossing voor context-efficiëntie. In plaats van alles in CLAUDE.md te proppen, maak je gerichte instructiesets die alleen geladen worden wanneer relevant.

Een /review skill wordt alleen geladen als je code wilt reviewen. Een /deploy skill alleen als je wilt deployen. De rest van de tijd kosten ze niks.

Hoe ik mijn skills inricht

Een skill is een folder met een SKILL.md en optioneel extra bestanden:

my-skill/
├── SKILL.md           # Hoofdinstructies + frontmatter
├── workflows/         # Sub-workflows voor complexe taken
│   ├── create.md
│   └── update.md
└── templates/         # Templates die Claude kan gebruiken

De frontmatter bepaalt wanneer de skill triggert:

---
name: laravel
description: Laravel development. USE WHEN writing Laravel code.
skills: php  # Laadt automatisch ook de php skill
---

Subagents voor isolatie

Bij complexe taken kun je een skill in een aparte "subagent" draaien. Die heeft een eigen context window en vervuilt je hoofdgesprek niet. Denk aan: een research taak die 50 bestanden moet lezen, of een refactor die veel code analyseert.

In James gebruik ik dit voor de documenter agent: die leest alle wijzigingen, analyseert wat er gedocumenteerd moet worden, en schrijft naar .docs/. Dat gebeurt in isolatie, zodat mijn hoofdsessie schoon blijft.

Skills zijn HET verschil tussen "AI die af en toe helpt" en "AI die systematisch meewerkt". Meer hierover in de skills deep dive.

De .docs pattern

In mijn eigen setup (James) gebruik ik een .docs folder voor projectdocumentatie. Maar je wilt niet dat Claude alle documenten leest bij elke vraag.

De oplossing: een README.md als index. Die staat in CLAUDE.md:

Project documentatie staat in .docs/
Lees .docs/README.md voor een overzicht.
Lees alleen specifieke docs wanneer relevant voor de taak.

De README bevat:

  • Korte beschrijving van elk document
  • Wanneer je welk document moet lezen
  • Links naar de bestanden

Claude leest de README (klein), bepaalt welke docs relevant zijn (meestal 1-2), en leest alleen die. In plaats van 50K tokens aan documentatie, gebruik je er misschien 5K.

Context vol? Ga door met docs

Lange sessies lopen vast. Context raakt vol, Claude vergeet dingen, je moet opnieuw beginnen.

De oplossing: persistente state in bestanden. Werkplannen, task lists, specs. Alles wat je niet wilt verliezen, schrijf je naar een bestand.

Bij complexe taken maak ik een spec bestand aan het begin. Claude werkt, updatet de spec met voortgang, en als de context vol zit start ik een nieuwe sessie met "Lees de spec en ga verder waar je gebleven was."

Dit is het Hydration Pattern: state opslaan zodat je later kunt rehydrateren. Onmisbaar voor taken die meerdere sessies duren.

Praktijkvoorbeelden

Bij SIA:

  • System prompt definieert de AI assistenten en hun capabilities
  • Tools voor database, foto-analyse, procedure lookup
  • RAG voor het ophalen van relevante QHSE documenten
  • Conversation context voor follow-up vragen

Bij Dronelucht:

  • Context over prijsstructuur en services
  • Tool voor locatie-analyse
  • Template voor offerte format
  • Geen MCP nodig: directe API calls naar kaartservices

Samenvatting: context tips

  1. MCPs zijn krachtig maar duur - gebruik ze selectief
  2. CLAUDE.md lean houden - alleen wat altijd nodig is
  3. Skills voor specifieke taken - context alleen wanneer relevant
  4. README als index - niet alle docs altijd laden
  5. Simpele APIs vaak beter dan MCPs - minder overhead
  6. Persisteer state in bestanden - zodat je kunt doorgaan

Volgende stap

Dit is de basis van context engineering. Wil je dieper? Lees over Claude Code context management voor specifieke technieken, of over het Hydration Pattern voor lange taken.

Soms is tekst niet genoeg om context over te brengen. Voor visuele problemen - architectuur, design, complexe flows - bekijk Interactive Playgrounds.

In mijn AI trainingen behandel ik context engineering uitgebreid met praktijkoefeningen. Of bekijk hoe ik dit toepas bij AI implementatie projecten.

Vragen? Neem contact op.

Wil je dit soort oplossingen in je eigen organisatie?

Vragen over dit onderwerp?

Ik denk graag mee over hoe dit toepasbaar is voor jouw situatie.

Deze site gebruikt cookies voor analytics. Privacybeleid