Harness engineering: wat het is en hoe het werkt
Een gids in begrijpelijke taal over wat AI-harnesses zijn en hoe harness engineering bepaalt wat AI-agents kunnen doen.

Wat harness engineering betekent
Harness engineering is het bouwen van de harness van een AI-tool, oftewel elk onderdeel van de tool behalve het AI-model.
Het model is het AI-systeem, dat is getraind op grote hoeveelheden tekst zodat het taal kan lezen en schrijven. Voorbeelden van AI-modellen zijn GPT van OpenAI, Claude van Anthropic en Gemini van Google.
Op zichzelf kan een model alleen tekst (en soms afbeeldingen of audio) ontvangen en tekst teruggeven. Het kan geen eerdere gesprekken onthouden, geen actuele informatie opzoeken en geen code uitvoeren. Daarom heeft het een harness nodig die bepaalt welke informatie het model krijgt, welke apps het kan gebruiken, wat het mag doen en hoe het werk wordt gecontroleerd.
Zelfs een eenvoudige chatassistent heeft een harness nodig. Het model vergeet elke uitwisseling zodra het heeft geantwoord, dus de harness houdt het gesprek bij. Als iemand iets over Parijs vraagt en daarna vraagt "hoeveel inwoners heeft het?", stuurt de harness beide vragen samen naar het model. Zo weet het model dat "het" naar Parijs verwijst.
Harness engineering is een van de redenen waarom twee tools die op hetzelfde model zijn gebouwd zo verschillend kunnen presteren. In een onafhankelijke test hielden onderzoekers bijvoorbeeld het model (GPT5) gelijk en veranderden ze alleen de harness, waarna de score van het model op een programmeertest tot wel 11% verschoof.
Ontwikkelaars van AI-modellen zoals Anthropic en OpenAI bouwen harnesses voor hun eigen AI-producten, zoals Claude Code en Codex. En bedrijven die AI-producten bouwen, ontwerpen harnesses voor de onderliggende modellen die ze kiezen. Ook mensen die AI-tools gebruiken, bepalen een deel van de harness. Met veel tools kunnen ze vaste instructies toevoegen, apps koppelen en kiezen voor welke acties hun goedkeuring nodig is voordat de tool verdergaat.
Harness engineering voor AI-agents
Elke AI-tool heeft een harness, maar harness engineering wordt vooral belangrijk bij het werken met AI-agents. Agents voeren zelfstandig taken uit die uit meerdere stappen bestaan, zoals concurrenten onderzoeken en de bevindingen in een spreadsheet zetten, en de harness voert elke stap uit. Als de harness een fout maakt, bijvoorbeeld door de prijzen van vorig jaar op te halen, heeft dat dus ook gevolgen voor de rest van de stappen.
De meeste agent-harnesses bestaan uit zes hoofdonderdelen:
1. De agent-loop
De agent-loop is code binnen de harness die een taak stap voor stap vooruithelpt.
Het AI-model bepaalt de volgende stap die nodig is om de taak te voltooien en schrijft een toolaanroep: een kort verzoek dat een tool in de harness noemt, zoals zoeken op het web, en aangeeft wat de tool moet doen.
De harness herkent het verzoek, voert de zoekopdracht uit en voegt de resultaten toe aan wat het model kan zien. Het model leest ze en bepaalt wat het daarna doet.
2. Contextbeheer
Een model doet tijdens de training algemene kennis op, maar die kennis stopt bij de datum waarop de training eindigde. Er zit niets in dat specifiek is voor de taak in kwestie, zoals de bestanden van een bedrijf, het nieuws van vandaag of wat eerder in het gesprek is gezegd.
Voor dat alles is het model afhankelijk van zijn contextvenster: de tekst die de harness het vóór elk antwoord meegeeft, zoals de instructies, de vraag, het gesprek tot nu toe en zoekresultaten.
Het venster kan maar een vaste hoeveelheid tekst bevatten. En zelfs voordat het venster vol is, missen modellen soms informatie die midden in lange invoer verstopt zit.
Daarom verzorgt de harness het contextbeheer en selecteert alleen de informatie die elke stap nodig heeft. Als de taak bijvoorbeeld is om de prijzen van vijf concurrenten te vergelijken, kan de harness van elk bedrijf de prijspagina meegeven in plaats van de hele website. Bij lange taken kan de harness ook het gedetailleerde verslag van eerdere stappen vervangen door een korte samenvatting, zodat het model bijhoudt wat het al heeft gedaan zonder dat die geschiedenis het venster vult.
3. Tools
Tools zijn code die de acties uitvoert waar het model om vraagt. Elke tool verzorgt één soort actie, zoals zoeken op het web, een webpagina openen en lezen, code uitvoeren of een bestand bewerken. Wanneer het model een toolaanroep schrijft, geeft de harness die door aan de juiste tool en stuurt het resultaat terug.
Veel harnesses bevatten ook connectors: tools die de agent koppelen aan een specifieke app, zoals e-mail, een agenda of een gedeelde schijf, met toegang die iemand heeft verleend. Met een agendaconnector kan een agent bijvoorbeeld iemands beschikbaarheid controleren voordat hij een tijdstip voor een vergadering voorstelt.
4. Geheugen
Geheugen is opgeslagen informatie die van de ene sessie naar de volgende wordt meegenomen. De harness slaat tijdens een sessie korte notities op, zoals iemands voorkeuren of de stand van zaken in een project. Aan het begin van de volgende sessie voegt de harness die notities toe aan het contextvenster, zodat het model ze leest voordat het de nieuwe vraag leest. Zo kan een agent bijvoorbeeld verdergaan met een weekrapport waar hij was gebleven, in plaats van weer helemaal opnieuw te beginnen.
5. Machtigingen
Machtigingen zijn regels over wat een agent kan bereiken en doen. Toegangsregels bepalen welke bestanden, apps of websites hij kan openen. Goedkeuringsregels bepalen welke acties moeten wachten op akkoord van een persoon, zoals een bericht versturen of een aankoop doen.
Het bedrijf dat de agent maakt, legt een deel van deze regels vast in de code van de harness. Daarna kunnen de beheerders van een organisatie hun eigen regels toevoegen, en kunnen individuele gebruikers bijvoorbeeld kiezen welke accounts ze koppelen.
6. Verificatie
Verificatie is code die het werk van de agent controleert voordat het bij een persoon terechtkomt. Daarbij worden twee soorten controles gebruikt:
- Vaste regels: specifieke tests die elke keer op dezelfde manier slagen of falen, zoals controleren of elk cijfer in een rapport voorkomt in een document dat de agent daadwerkelijk heeft gelezen.
- Een beoordeling door een ander AI-model, dat het werk leest en beoordeelt. Zo'n beoordeling kan problemen opsporen die moeilijk in een regel te vatten zijn, zoals een samenvatting waarin een belangrijk punt ontbreekt.
Geen enkele controle vangt alles op, dus harnesses combineren meestal beide soorten. Wanneer een controle een probleem vindt, voegt de harness een beschrijving ervan toe aan het contextvenster van het model en stuurt de taak opnieuw door de agent-loop. Het model lost het probleem op en probeert het opnieuw, zodat veel fouten al zijn gecorrigeerd voordat de gebruiker het resultaat ziet.
Voorbeelden van harness engineering
Een klantafspraak voorbereiden
Taak: Een accountmanager vraagt een agent om een briefing voor te bereiden voor de afspraak van morgen met een klant, met openstaande kwesties en een conceptagenda.
Wat de harness doet:
- Via een e-mailconnector doorzoekt de agent de inbox van de accountmanager op berichten met de klant.
- Dankzij de machtigingen kan de agent e-mail lezen, maar niet versturen.
- Contextbeheer geeft het model alleen de berichten van de afgelopen drie maanden met die klant, niet de hele inbox.
- De agent-loop doorloopt meerdere rondes van zoeken en lezen, en het model groepeert wat het vindt in openstaande kwesties.
- Verificatie controleert vervolgens of elke kwestie in de briefing terugverwijst naar een echte e-mail.
Mogelijk resultaat: De accountmanager krijgt een briefing van één pagina waarin elk punt te herleiden is tot de bijbehorende e-mail.
Een maandelijks verkooprapport bijwerken
Taak: Een teamleider operations vraagt een agent om het maandelijkse verkooprapport bij te werken met de cijfers van deze maand.
Wat de harness doet:
- Het geheugen laadt notities uit de sessie van vorige maand, waaronder de opmaak van het rapport en het verzoek van de teamleider om cijfers af te ronden op duizendtallen.
- Een bestandstool opent de verkoopspreadsheet op de gedeelde schijf van het team.
- Dankzij de machtigingen kan de agent het conceptrapport bewerken, maar niet de bronspreadsheet, zodat de oorspronkelijke cijfers niet per ongeluk kunnen worden gewijzigd.
- Verificatie controleert of de totalen in het rapport overeenkomen met de spreadsheet.
Mogelijk resultaat: Het rapport wordt aangeleverd in dezelfde opmaak als dat van vorige maand, zonder dat de gebruiker het opnieuw hoeft uit te leggen.
Een gedeelde inbox sorteren
Taak: Een supportteam vraagt een agent om de binnengekomen verzoeken van die ochtend op onderwerp te sorteren en antwoorden op te stellen voor de veelvoorkomende verzoeken.
Wat de harness doet:
- De agent-loop werkt de inbox bericht voor bericht af.
- Voor elk bericht kiest het model een onderwerplabel, dat de harness via de e-mailconnector toepast.
- Aan het begin van de taak voegt de harness de goedgekeurde antwoordsjablonen van het team als leidraad toe aan het contextvenster, zodat het model elk concept op een sjabloon baseert.
- Een goedkeuringsregel bewaart elk antwoord als concept totdat iemand van het team het controleert en verstuurt.
Mogelijk resultaat: Het team begint de dag met gesorteerde verzoeken en antwoorden die klaarstaan om te worden gecontroleerd.
Een bug in een website oplossen
Taak: Een ontwikkelaar vraagt een codeeragent om een bug op te lossen waardoor een afrekenknop niet werkt.
Wat de harness doet:
- De agent werkt in een sandbox: een geïsoleerde kopie van de code waarin de wijzigingen geen invloed kunnen hebben op de live website.
- Met een codetool kan het model bestanden lezen en bewerken.
- Na elke wijziging voert de verificatie de geautomatiseerde tests van het project uit.
- Eventuele mislukte tests gaan als nieuwe informatie terug naar het model.
Mogelijk resultaat: De agent blijft de oplossing aanpassen totdat de tests slagen. De ontwikkelaar controleert de wijziging daarna voordat die live gaat.
Harness engineering vs. prompt engineering vs. context engineering
Prompt engineering is het opstellen en optimaliseren van één enkele vraag. Context engineering is het beheren van alles wat het model ziet. Harness engineering is het ontwerpen en verbeteren van het hele systeem waarbinnen het model werkt.
Term | Wie doet het meestal | Voorbeeld uit een concurrentieonderzoek |
Prompt engineering | Iedereen die een vraag schrijft | Vragen om "één rij per concurrent, één kolom per prijsniveau" |
Context engineering | De mensen die de harness bouwen, plus gebruikers die bestanden of sjablonen toevoegen | Het model de prijspagina van elke concurrent en het spreadsheetsjabloon van het team geven |
Harness engineering | Bedrijven die AI-producten maken, plus teams en gebruikers die instellingen en voorkeuren kiezen en informatie uploaden | Bepalen welke tools de agent kan gebruiken, welke acties goedkeuring nodig hebben en hoe het werk wordt gecontroleerd |
Hoe gebruikers een AI-harness kunnen beïnvloeden
Het grootste deel van een agent-harness komt van het bedrijf dat de agent maakt, maar met veel AI-producten kunnen gebruikers een deel ervan aanpassen via instellingen zoals aangepaste instructies, gekoppelde apps en goedkeuringen.
Gebruikers kunnen een agent-harness op vier manieren vormgeven en zo de resultaten van de agent verbeteren:
1. Vaste instructies
Vaste instructies zijn notities die je één keer schrijft, zodat de harness ze aan het begin van elke taak aan het contextvenster kan toevoegen. Ze zijn de moeite waard voor alles wat je anders bij elke vraag zou herhalen: wie je bent en wat je doet, hoe je wilt dat werk wordt geschreven, of de regels voor een terugkerende taak zoals het maandrapport van een klant.
Veel AI-producten bieden vaste instructies op twee niveaus. Instructies voor het hele account zijn geschikt voor zaken die voor al het werk gelden, zoals spellingvoorkeuren. Projectinstructies zijn geschikt voor één klant of workflow, zodat richtlijnen voor de een niet doorwerken in de ander.
Vaste instructies werken in chatassistenten en agents op dezelfde manier, maar agents zijn er meer van afhankelijk. In een chat kan iemand de AI na elk antwoord corrigeren. Een agent kan veel stappen zetten voordat iemand het werk ziet, dus instructies die vooraf worden gegeven zijn een van de weinige manieren om hem onderweg bij te sturen.
Zo schrijf je effectieve vaste instructies
- Begin met een korte instructie, zoals: "Ik ben marketingmanager bij een softwarebedrijf. Schrijf in helder Engels, houd samenvattingen onder de 200 woorden en gebruik Amerikaanse spelling."
- Vul ze aan wanneer de AI een fout maakt. Als de AI cijfers blijft afronden die het team exact nodig heeft, voeg dan een regel toe die dat aangeeft.
- Maak instructies specifiek: "Geef exacte cijfers, nooit afgerond" werkt beter dan "Wees nauwkeurig."
- Houd de lijst kort en verwijder regels zodra ze niet meer nuttig zijn, want elke regel neemt ruimte in het contextvenster in beslag.
2. Gekoppelde apps
Gekoppelde apps verbinden een AI-product met de tools die iemand al gebruikt, zoals e-mail, een agenda of een gedeelde schijf. Zodra een app is gekoppeld, kan de AI met iemands eigen informatie werken in plaats van alleen met wat in de chat is geplakt.
Koppelingen zijn de moeite waard wanneer een taak afhankelijk is van informatie in die apps, zoals een briefing voor een vergadering voorbereiden op basis van e-mailconversaties of documenten op een gedeelde schijf samenvatten.
Zo koppel je apps veilig
- Koppel alleen de apps die een taak nodig heeft, want elke koppeling is een extra kans op fouten.
- Kies voor alleen-lezentoegang als die wordt aangeboden. Een agent die briefings voor vergaderingen voorbereidt, moet bijvoorbeeld e-mail kunnen lezen, niet versturen.
- Stel koppelingen per project in als het product dat toelaat. In Perplexity kun je bijvoorbeeld kiezen welke connectors elk project gebruikt.
- Vergeet niet apps te ontkoppelen die je niet meer gebruikt.
3. Goedkeuringsinstellingen
Goedkeuringsinstellingen bepalen welke acties moeten wachten op akkoord van een persoon voordat de AI verdergaat. Sommige goedkeuringen zijn in het product ingebouwd, en bij sommige producten kun je zelf kiezen voor welke andere acties goedkeuring nodig is.
Zo stel je goedkeuringsregels in
- Vereis goedkeuring voor acties die niet ongedaan kunnen worden gemaakt, zoals een bericht versturen, een aankoop doen of een bestand verwijderen.
- Houd de lijst met goedkeuringen kort. Als een agent bij elke kleine stap om akkoord vraagt, gaan mensen goedkeuren zonder te lezen.
4. Standaarden en controles
De meeste AI-producten hebben al een aantal standaarden ingebouwd. Perplexity geeft bijvoorbeeld bronvermeldingen bij zijn antwoorden, zodat elke bewering kan worden gecontroleerd. Standaarden die gebruikers zelf instellen, voegen toe wat een product niet uit zichzelf kan weten, zoals het rapportformaat dat een team het liefst gebruikt.
Zo stel je standaarden in voor AI-werk
- Lever een sjabloon aan voor terugkerend werk, zodat de AI een vaste structuur heeft om in te vullen.
- Deel een voorbeeld van eerder werk waar het team tevreden over was, zodat de AI de toon en het detailniveau kan overnemen.
- Vraag om een bronlink bij elk cijfer.
- Beoordeel de eerste resultaten zorgvuldig en maak van tekortkomingen die steeds terugkomen een nieuwe vaste instructie.
Hoe Perplexity met agent-harnesses omgaat
Perplexity Computer draait op een modelonafhankelijke harness, die meer dan 20 geavanceerde modellen samenbrengt in één systeem. Computer splitst elke taak op in subtaken, geeft die door aan subagents (afzonderlijke agents die elk één deel voor hun rekening nemen) en stuurt elk onderdeel van het werk naar een model dat daar geschikt voor is.
Lees in de gids voor Perplexity Projects hoe je instructies, bestanden en connectors instelt.
Veelgestelde vragen
Wat is een harness engineer?
Een harness engineer ontwerpt en onderhoudt het systeem waarmee een AI-model betrouwbaar werk kan leveren. Dat kan betekenen: een nieuwe tool toevoegen die de agent kan gebruiken, uitzoeken waarom een agent steeds dezelfde fout maakt, of de controles aanscherpen die de agent uitvoert voordat hij een taak afrondt. Het is geen gangbare functietitel, al kan dat nog veranderen. Het werk wordt meestal gedaan door software-engineers bij AI-bedrijven of in teams die agents bouwen. In de maakindustrie verwijst dezelfde titel naar iemand die kabelbomen (Engels: wire harnesses) ontwerpt: de gebundelde kabels in auto's en machines.
Wat is een agent-harness?
Met een agent-harness wordt meestal alles in een AI-agent bedoeld behalve het model zelf. Daaronder valt de code die de agentloop uitvoert, context beheert, toolaanroepen afhandelt, geheugen opslaat, machtigingen afdwingt en het werk van de agent controleert voordat het bij een mens terechtkomt.
Heeft elke AI-tool een harness?
Ja. Zelfs een eenvoudige chatassistent is afhankelijk van een harness om het gesprek bij te houden, omdat het model eerdere berichten niet uit zichzelf onthoudt.
Ontwikkelaars kunnen een model ook gebruiken door er vanuit hun eigen software verzoeken naartoe te sturen via een API (een verbinding waarmee het ene programma verzoeken naar een ander programma kan sturen). In dat geval neemt de eigen code van de ontwikkelaar de taak van de harness over.
Maken betere modellen harnesses overbodig?
Betere modellen hebben misschien minder stapsgewijze begeleiding nodig, waardoor een deel van wat harnesses nu doen kleiner kan worden. Maar een model op zichzelf zet alleen tekst om in tekst. Het heeft geen internetverbinding en geen toegang tot andere apps. Toegang krijgen tot bestanden, acties uitvoeren en goedkeuringsregels afdwingen gebeurt allemaal in de software rondom het model. Dat werk blijft dus waarschijnlijk bij de harness liggen, hoe krachtig modellen ook worden.