Codex·4 min lezen

Opdrachten schrijven voor Codex: hij vraagt niets, dus zeg het vooraf

Codex stelt onderweg geen vragen. Hij vult ontbrekende gegevens zelf in en levert iets op. Zo schrijf je een opdracht waarin die aannames de goede kant op vallen.

Maak een contactformulier op de pagina Contact met naam, e-mailadres,
telefoon en bericht. Mail naar info@mijnsite.nl, met een bedankpagina na
verzenden. Spamcontrole zonder externe dienst. Verzin geen velden die ik
niet noem en raak de rest van de pagina niet aan.

Die laatste zin is het hele artikel. Codex werkt in onze assistent in één stand: hij voert je opdracht uit en toont daarna wat er veranderd is. Hij houdt niet halverwege stil om te vragen welk e-mailadres je bedoelde. Ontbreekt er iets, dan vult hij het zelf in en gaat verder. Dat maakt hem snel en het betekent dat de kwaliteit van je resultaat voor een flink deel in je opdracht zit.

Bij Claude Code kun je per wijziging beslissen. Zie Claude Code of Codex voor dat verschil. Dit artikel gaat over het andere pad: je geeft Codex alles vooraf mee.

Wat doorwerken met aannames betekent

Drie dingen die wij in de praktijk zien gebeuren:

Hij verzint een plausibel gegeven. Vraag je om een formulier dat mailt, maar noem je geen adres, dan kiest hij er een dat bij je domein past. Dat is bijna goed en dus makkelijk te missen.

Hij zet niets uit. Ontbreekt er een sleutel of een instelling, dan bouwt hij de functie toch, met de aanname dat jij het later invult. Je krijgt dus geen melding "dit kon niet", je krijgt iets dat er af lijkt.

Hij lost een blokkade om. Loopt een hulpmiddel vast op de grenzen van zijn sandbox, dan doet hij het werk met de hand. Dat werkt vaak, maar het resultaat ziet er anders uit dan wanneer ons eigen gereedschap het had gedaan. Dat is precies wat er in de sandbox gebeurt, zie Codex-sandbox: wat workspace-write betekent.

Geen van de drie is fout gedrag. Het is de prijs van een assistent die niet elke twee minuten een vraag stelt.

Vier dingen die in elke opdracht horen

1. De gegevens, letterlijk. Adressen, telefoonnummers, prijzen, openingstijden, de naam van het bedrijf. Alles wat hij niet kan weten, zet je erin. Zet er desnoods een regel bij: "gebruik precies deze gegevens, verzin er niets bij".

2. De grens. Zeg wat hij niet mag aanraken. "Alleen de pagina Contact." "De rest van het thema blijft zoals het is." "Niets in de database wijzigen." Dit is de belangrijkste regel, want een opdracht zonder grens wordt vaak een verbouwing.

3. Wat je verwacht als het niet kan. "Kun je dit niet zonder een externe dienst, stop dan en leg uit waarom." Zonder die zin kiest hij zelf een weg vooruit.

4. Hoe je het gaat controleren. "Maak een screenshot van de pagina op mobiel en desktop als je klaar bent." Dan hoef je niet eerst zelf te gaan kijken of het er goed uitziet.

Eerst een plan, dan uitvoeren

De truc die het vaakst helpt bij een grote klus: vraag hem het in twee opdrachten te doen.

Bekijk de pagina Contact en de rest van het thema. Schrijf op wat je zou
doen om er een werkend contactformulier in te zetten: welke bestanden,
welke keuzes, wat je niet zeker weet. Nog niets wijzigen.

Je leest het plan, je vult de open punten aan, en pas daarna geef je de bouwopdracht. Dat kost twee minuten en haalt precies de aannames eruit die je anders achteraf moet repareren.

Terugdraaien kan altijd

Elke opdracht krijgt een momentopname voordat hij begint. Valt het resultaat verkeerd uit, dan draai je de hele opdracht in één keer terug. Dat werkt ook als hij veel bestanden heeft aangeraakt.

Loop daarnaast de kaart na die na de opdracht verschijnt. Daarin staan de verschillen per bestand, inclusief wijzigingen die hij via de opdrachtregel heeft gedaan. Grote bulkacties, zoals de installatie van een pakket met honderden bestanden, worden als lijst samengevat in plaats van bestand voor bestand. Vind je iets dat je niet verwacht, dan weet je het voordat je site een dag live staat.

Veelgemaakte fouten

"Ik wachtte op een vraag die nooit kwam." Codex vraagt onderweg niets. Krijg je liever een vraag per stap, kies dan Claude Code in de balk boven de chat.

"Het formulier mailt naar een adres dat niet bestaat." Een klassieke aanname. Noem het adres in je opdracht en laat hem na het bouwen een testbericht sturen.

"Hij heeft mijn hele pagina herschreven." Er stond geen grens in de opdracht. Draai de opdracht terug, voeg de regel toe over wat niet mag veranderen en probeer het opnieuw.

"Hij zegt dat het klaar is, maar de helft werkt niet." Hij sluit af als hij zelf denkt dat de opdracht af is. Vraag in dezelfde opdracht om een controle: een screenshot, een testbericht, een lijst van wat hij heeft nagekeken.

"Ik gaf een opdracht van tien regels met vijf verschillende wensen." Dat werkt het slechtst van alles. Hij kiest dan zelf een volgorde en een invulling. Knip het in stappen, of vraag eerst het plan.

MK
Maarten Keizer

Oprichter van Invoker. Ruim twintig jaar hosting, systeembeheer en webdevelopment; bouwt de Claude-hosting zelf en test alles eerst op de eigen servers.

over maarten