Gids voor ontwikkelaars · 18 taken
AI voor ontwikkelaars: programmeeragents, kosten en veilig werk overdragen
Gebruik je al codeaanvulling en chat, dan is de volgende stap agents die de repository lezen, commando's uitvoeren en pull requests openen. Of dat tijd bespaart, hangt minder af van het model dan van de opzet. Het eerste deel werkt met elke programmeeragent; de delen over Claude Code en Codex gaan in op de commando's, bestanden en instellingen van elk, op basis van hun officiële documentatie.
Elke programmeeragent
01
Geef de agent een taak waarvan hij kan bewijzen dat die af is
Agents falen op “verbeter dit” en slagen bij taken die eindigen in een controle: een falende test die moet slagen, een commando waarvan de uitvoer moet veranderen. Schrijf het bewijs in de taak, dan gaat de agent door tot het af is, in plaats van te stoppen wanneer het af lijkt.
Voorbeeld
“Repareer de datumparser voor ISO-weekdatums. Klaar betekent dat npm test -- dates slaagt, inclusief de nieuwe test voor 2026-W01. Verander de tests niet.” De agent draait de test tot die slaagt en plakt de uitvoer; jij beoordeelt een diff van 30 regels in plaats van een gok.
Zo doe je het
- 1Schrijf de controle of wijs ernaar voordat je de taak overdraagt: de falende test, of het commando en de verwachte uitvoer.
- 2Geef de agent de taak met de prompt op deze pagina, inclusief de bestanden die hij mag wijzigen en de bestanden die hij niet mag wijzigen.
- 3Laat de agent de controle zelf uitvoeren en de uiteindelijke uitvoer plakken.
- 4Beoordeel de diff als de pull request van een collega; een geslaagde controle is het begin van de review, niet het einde.
Ingebouwd
Prompt om te kopiëren
Taak: [wijziging]. Klaar betekent: [test of commando] slaagt en toont [verwachte uitvoer]. Voer het uit voordat je afrondt en plak het resultaat. Je mag wijzigen: [paden]. Wijzig niet: [paden], de dependencies of de tests. Lukt het je niet om het te laten slagen, stop dan en leg uit waarom, in plaats van de controle te omzeilen.Waar het misgaat
- Agents laten een test soms slagen door hem af te zwakken. Verbied het wijzigen van tests en let er in de diff op.
- Een taak die te groot is voor één controle, is te groot om in één keer over te dragen. Splits hem op.
02
Laat taken in de cloud draaien terwijl jij aan iets anders werkt
Cloudagents werken in hun eigen omgeving aan je repository en komen terug met wijzigingen om te beoordelen, zodat er meerdere taken lopen terwijl jij iets anders doet. Dat loont alleen bij goed omschreven taken; vage taken komen terug als grote diffs die je moet ontrafelen.
Voorbeeld
Drie kleine taken voor de lunch: één dependency upgraden, een ontbrekende database-index toevoegen, een onbetrouwbare test repareren. Elke taak gaat met een eigen controle naar een cloudagent, en 's middags beoordeel je drie pull requests in plaats van drie keer van context te wisselen.
Zo doe je het
- 1Kies de agent die het dichtst bij je code staat: Codex Cloud, de Copilot cloud agent op GitHub of Claude Code op het web.
- 2Zorg dat de omgeving van de agent je dependencies kan installeren en je tests kan draaien; zonder die twee gokt de agent.
- 3Stuur kleine, onafhankelijke taken, elk met een eigen controle, zoals bij de taak hierboven.
- 4Laat eerst een automatische reviewer elke pull request lezen en beoordeel hem daarna zelf.
Ingebouwd
Prompt om te kopiëren
In deze repository: [taak]. Context: [waar in de code, bijbehorende issue]. Klaar als: [test of commando] slaagt in jouw omgeving; zet de uitvoer in de beschrijving van de pull request. Houd de pull request onder [aantal] gewijzigde regels. Is er meer nodig, stop dan en stel voor hoe je hem opsplitst.Waar het misgaat
- Tests die geheimen of diensten nodig hebben die je niet hebt ingesteld, worden overgeslagen of falen. Een groene run zonder die tests bewijst weinig.
- Meerdere agents op samenhangende code leveren pull requests op die met elkaar conflicteren. Houd parallelle taken in aparte delen van de code.
03
Laat de controles zonder jou draaien
Besteed geen reviewtijd aan wat een machine kan controleren. Hooks draaien je formatter, linter en tests na elke wijziging die de agent maakt, en een reviewbot leest elke pull request voordat jij dat doet. Jouw review gaat dan over het ontwerp, niet over typefouten.
Voorbeeld
Een hook draait na elke bewerking de formatter en de unittests. De wijziging van de agent breekt twee tests; hij ziet de fout in de uitvoer van de hook en herstelt die voordat jij kijkt. De reviewbot signaleert daarna één onafgehandelde foutsituatie, en daarover beslis jij.
Zo doe je het
- 1Zet je build-, test- en lintcommando's in het instructiebestand dat je agent aan het begin van elke sessie leest; de documentatie van elke agent noemt dat bestand.
- 2Voeg in Claude Code hooks toe die na elke bewerking de formatter en de tests draaien, zodat de agent fouten ziet en herstelt.
- 3Laat een bot elke pull request beoordelen: zet “Automatic review” aan in Codex, of vraag Copilot als reviewer.
- 4Maakt de agent een fout twee keer, maak er dan een test of een regel in het instructiebestand van.
Ingebouwd
Prompt om te kopiëren
Lees deze repository en schrijf het instructiebestand voor programmeeragents: 1. De exacte commando's om te installeren, te builden, te testen, te linten en te formatteren. 2. De opbouw van het project in hooguit 10 regels. 3. Conventies die nieuwkomers hier verkeerd doen, met telkens één voorbeeld. 4. Wat een agent hier nooit mag doen, bijvoorbeeld migraties wijzigen of gegenereerde bestanden bewerken. Noem alleen commando's die je met succes hebt uitgevoerd; markeer de rest als “niet geverifieerd”.Waar het misgaat
- Een instructiebestand met commando's die niet meer werken, leert de agent het te negeren. Voer ze opnieuw uit als de opzet verandert.
- Ook reviewbots maken fouten met grote stelligheid. Zie hun opmerkingen als suggesties.
04
Koppel de agent aan je tools, met zo weinig mogelijk toegang
Een agent is maar zo goed als wat hij kan zien: issues, documentatie, logs, het databaseschema. MCP koppelt die, maar elke koppeling is toegang, en tekst die hij van buiten leest, kan instructies bevatten. Begin met alleen-lezen en breid alleen uit als een taak dat nodig heeft.
Voorbeeld
De agent leest issue 482 uit de tracker, vindt de stacktrace in de logs en raadpleegt de documentatie van de bibliotheek, en noemt dan het bestand waar de fout zit, allemaal via tokens met alleen leesrechten. De oplossing schrijft hij in je repository, waar je die zoals gewoonlijk beoordeelt.
Zo doe je het
- 1Zet op een rij wat je het vaakst in chats plakt, zoals issues, foutlogs, documentatie of het schema. Koppel die eerst.
- 2Voeg voor elk de officiële MCP-server toe, met een token dat alleen kan lezen. In Gemini CLI kan een extensie de MCP-server en de configuratie ervan bundelen.
- 3Geef de agent een taak waarvoor die koppelingen nodig zijn en controleer of hij de juiste heeft aangeroepen.
- 4Verwijder om de paar weken de servers die je niet meer gebruikt.
Ingebouwd
Prompt om te kopiëren
Voordat je iets wijzigt: lees issue [id] in de tracker, zoek de fout in de logs en raadpleeg de documentatie van [bibliotheek]. Zeg wat elk ervan je vertelde en in welk bestand volgens jou de fout zit. Schrijf niet naar een gekoppelde tool.Waar het misgaat
- Een webpagina, issue of document kan tekst bevatten die is geschreven om de agent te sturen. Geef geen schrijfrechten aan tools die content van buiten lezen.
- Tokens in configuratiebestanden lekken uit. Gebruik de geheimenopslag van de client of omgevingsvariabelen, nooit de repository.
05
Kies tussen een abonnement en betalen per token
Agentsessies lezen bestanden en voeren veel stappen uit, dus ze gebruiken veel meer tokens dan een chat. Bereken wat een gewone week van je eigen gebruik kost voordat je kiest: een abonnement begrenst wat je zelf met de hand doet, met betalen per token kun je elke geautomatiseerde run begrenzen.
Voorbeeld
Een week waarin je dagelijks een agent gebruikt, komt uit op ongeveer 40 miljoen invoer- en 3 miljoen uitvoertokens. Bereken de prijs daarvan op de pagina met API-prijzen voor het model dat je gebruikt, en vergelijk die met een maand abonnement. Is het abonnement goedkoper en passen de limieten bij je week, neem het dan, en houd een API-sleutel met limiet aan voor CI.
Zo doe je het
- 1Kijk waarvoor je al betaalt: abonnementen van ChatGPT bevatten Codex, en de betaalde abonnementen van Claude bevatten Claude Code.
- 2Noteer het tokengebruik van een paar gewone sessies, waar je agent dat laat zien.
- 3Bereken de kosten van dat gebruik op onze pagina met API-prijzen en vergelijk die met het abonnement.
- 4Gebruik voor automatisering en CI API-sleutels met een bestedingslimiet, zodat een lus geen hoge rekening kan opbouwen.
Ingebouwd
Prompt om te kopiëren
Hier is mijn gebruik uit [aantal] gewone sessies: [tokens in en uit]. Ik werk ongeveer [dagen] dagen per week. Schat mijn maandelijkse kosten bij betalen per token tegen deze prijzen: [plak van de pagina met API-prijzen]. Vergelijk dat met een abonnement van [prijs] per maand. Laat de berekening zien, zodat ik die kan controleren.Waar het misgaat
- Ook abonnementen hebben gebruikslimieten. Midden in een taak tegen een limiet aanlopen kost tijd; controleer de limiet, niet alleen de prijs.
- Het model bepaalt de rekening meer dan wat ook. Vergelijk op basis van het model dat je echt gebruikt.
Claude Code
06
Geef elke sessie dezelfde start met CLAUDE.md
Leg je aan het begin van elke sessie je buildcommando's en conventies uit, dan doe je waar CLAUDE.md voor is. Claude leest het aan het begin van elke sessie; houd het kort en juist, en dezelfde fouten komen niet meer terug.
Voorbeeld
Een repository waarin Claude steeds npm test draaide in plaats van pnpm test:unit van het project, en steeds gegenereerde bestanden bewerkte. Twee regels in CLAUDE.md, het juiste commando en “bewerk nooit src/gen/”, en beide fouten houden op.
Zo doe je het
- 1Voer /init uit in de repository: het analyseert de codebase en schrijft een eerste CLAUDE.md, of stelt verbeteringen voor aan het bestand dat je al hebt.
- 2Zet teamregels, zoals build- en testcommando's en codeerstandaarden, in ./CLAUDE.md en commit dat bestand. Je eigen voorkeuren horen in ~/.claude/CLAUDE.md voor elk project, of in CLAUDE.local.md voor dit project.
- 3Verwijs naar langere documenten in plaats van ze erin te plakken: @path/to/file importeert bij het starten een ander bestand.
- 4Elke keer dat Claude twee keer hetzelfde fout doet, voeg je de ene regel toe die dat had voorkomen.
Prompt om te kopiëren
Lees deze repository en verbeter CLAUDE.md. Houd het onder de 60 regels: 1. De exacte commando's om te builden, te testen en te linten. 2. De opbouw in een paar regels. 3. Conventies die een nieuwkomer hier verkeerd doet. 4. Bestanden en mappen die nooit bewerkt mogen worden. Verwijder alles wat niet meer klopt. Markeer commando's die je niet hebt uitgevoerd als “niet geverifieerd”.Waar het misgaat
- Alles in CLAUDE.md wordt elke sessie geladen en neemt context in beslag. Verplaats details naar bestanden die het importeert.
- Instructies die niet meer kloppen, zijn erger dan geen instructies. Controleer de commando's opnieuw als de opzet verandert.
Uit de officiële documentatie: Claude Code docs: How Claude remembers your project
07
Eerst plannen, dan laten bewerken
Bij een wijziging in veel bestanden is de dure fout een verkeerde aanpak, niet een verkeerde regel. In plan mode onderzoekt Claude de code en schrijft een plan zonder je bronbestanden te bewerken; jij corrigeert het plan en keurt het dan goed.
Voorbeeld
Authenticatie omzetten van cookies naar tokens in 14 bestanden. Het eerste plan vergeet de mobiele client; jij wijst daarop, het plan krijgt een extra stap, en pas dan bewerkt Claude iets.
Zo doe je het
- 1Druk op Shift+Tab tot de statusbalk “plan mode on” toont, of begin je prompt met /plan.
- 2Beschrijf de wijziging en wat er niet mag veranderen. Claude kan nog steeds commando's uitvoeren om te verkennen, maar bewerkt geen bestanden zolang het plant.
- 3Lees het plan als een ontwerpnotitie: een verkeerd bestand, een ontbrekend geval, een te grote wijziging. Vraag om aanpassingen tot het klopt en keur het dan goed.
- 4Begin voor de volgende taak, die er niets mee te maken heeft, opnieuw met /clear.
Prompt om te kopiëren
/plan Wijzig [wat] zodat [doel]. Randvoorwaarden: [wat niet mag veranderen]. Noem de bestanden die je gaat aanpassen, de volgorde van de wijzigingen, de test die elke stap bewijst en alles waarover je twijfelt. Bewerk niets tot ik het goedkeur.Waar het misgaat
- Een plan dat meer bestanden raakt dan je verwachtte, is het waarschuwingsteken. Vraag waarom voordat je het goedkeurt.
- Ook in plan mode worden commando's uitgevoerd om te verkennen. Het maakt een onbekende repository niet veilig om uit te voeren.
Uit de officiële documentatie: Claude Code docs: Choose a permission mode · Claude Code docs: Commands · Claude Code docs: Best practices
08
Keur niet langer vijftig keer hetzelfde commando goed
Als je elke testrun met de hand goedkeurt, leer je jezelf aan om op ja te klikken zonder te lezen. Sta de veilige, herhaalde commando's één keer toe in de instellingen van het project, weiger de gevaarlijke, en houd de vragen voor al het andere.
Voorbeeld
Een team staat in de gedeelde projectinstellingen zijn test- en lintcommando's toe en weigert het lezen van .env-bestanden. De vragen blijven beperkt tot de paar commando's die het lezen waard zijn, en geen enkele sessie kan de sleutels openen.
Zo doe je het
- 1Open /permissions om elke regel te zien en uit welk instellingenbestand die komt.
- 2Zet de regels van het team in .claude/settings.json en commit dat bestand. Persoonlijke regels horen in ~/.claude/settings.json of .claude/settings.local.json.
- 3Regels worden gecontroleerd in de volgorde deny, ask, allow, dus één deny-regel wint van elke allow-regel.
- 4Wissel van modus met Shift+Tab: acceptEdits keurt bestandsbewerkingen in de werkmap goed. bypassPermissions zet de vragen en veiligheidscontroles uit; volgens de documentatie gebruik je dat alleen in geïsoleerde containers of VM's zonder internettoegang.
Prompt om te kopiëren
Kijk naar de commando's die je in deze sessie hebt uitgevoerd. Stel permissieregels voor .claude/settings.json voor: sta de alleen-lezen- en testcommando's toe die we elke dag gebruiken, weiger alles wat geheimen leest of buiten het project iets verwijdert, en laat voor al het andere vragen. Leg elke regel uit in één zin.Waar het misgaat
- Een allow-regel die op elk commando past, komt neer op helemaal geen vragen. Sta exacte commando's toe.
- Regels in .claude/settings.json gelden voor het hele team zodra ze gecommit zijn. Beoordeel ze zoals code.
Uit de officiële documentatie: Claude Code docs: Configure permissions · Claude Code docs: Settings files and precedence · Claude Code docs: Choose a permission mode
09
Houd elke sessie gefocust
Een sessie waarin drie losse taken zijn gedaan, heeft alle drie nog in de context, en dat merk je. Maak de context leeg tussen taken, comprimeer lange taken met een focus, en laat subagents brede zoekacties doen in hun eigen context.
Voorbeeld
Na het oplossen van een bug vraag je in dezelfde sessie om een refactor, en Claude blijft de oude workaround voor de bug volgen. Na /clear en één zin context gebeurt dat niet meer.
Zo doe je het
- 1Tussen losse taken start /clear een nieuw gesprek met een lege context.
- 2Bij een lange taak vat /compact met een focus, bijvoorbeeld “/compact bewaar het plan en de falende test”, samen wat eraan voorafging.
- 3Geef brede zoekacties aan een subagent: elke subagent draait in een eigen contextvenster, zodat alleen het antwoord terugkomt in je sessie.
- 4Claude Code comprimeert ook zelf als de limiet in zicht komt; als je zelf op een goed moment comprimeert, blijft bewaard wat jij kiest.
Ingebouwd
Prompt om te kopiëren
/compact Bewaar: het doel, het plan, de tot nu toe gewijzigde bestanden en de test die nog faalt. Laat het verkennen weg.Waar het misgaat
- /clear vergeet het gesprek. Alles wat je later weer nodig hebt, hoort eerst in CLAUDE.md.
- Het antwoord van een subagent is alles wat je terugkrijgt. Vraag om bestandspaden en regelnummers, niet alleen om conclusies.
Uit de officiële documentatie: Claude Code docs: Commands · Claude Code docs: Best practices · Claude Code docs: Create custom subagents
10
Laat twee taken tegelijk draaien zonder botsingen
Twee sessies in één checkout bewerken dezelfde bestanden onder elkaars handen. claude --worktree geeft elke sessie een eigen kopie op een eigen branch, zodat een refactor en een bugfix naast elkaar kunnen draaien.
Voorbeeld
Een dependency-upgrade in de ene worktree en een UI-fix in een andere, allebei bezig terwijl jij een derde pull request beoordeelt. Geen van beide sessies ziet de halve bestanden van de andere.
Zo doe je het
- 1Start elke sessie met claude --worktree <name> (of -w). Dat maakt een git-worktree aan onder .claude/worktrees/<name>/ op de branch worktree-<name>.
- 2Voeg .claude/worktrees/ toe aan .gitignore, zoals de documentatie aanraadt.
- 3Geef elke sessie één taak met een eigen controle, zodat je ze een voor een kunt beoordelen.
- 4Beoordeel en merge elke branch zoals elke andere pull request.
Prompt om te kopiëren
Je werkt in een worktree op branch worktree-[naam]. Taak: [één wijziging]. Klaar als: [test of commando] slaagt. Commit alleen op deze branch; merge of rebase geen andere branches.Waar het misgaat
- Elke worktree is een eigen map, dus dependencies en build-uitvoer worden niet gedeeld. Installeer in elke worktree.
- Twee taken die dezelfde bestanden aanraken, geven bij het mergen nog steeds conflicten, met of zonder worktree.
Uit de officiële documentatie: Claude Code docs: Run parallel sessions with worktrees
11
Maak een verkeerde afslag ongedaan met rewind
Als een sessie misgaat, levert Claude vragen om zijn eigen wijzigingen terug te draaien vaak een tweede puinhoop op. Rewind zet het gesprek, de code of allebei terug naar een punt vóór de fout. Wat shellcommando's hebben gedaan, kan het niet ongedaan maken, dus commit vóór riskante stappen.
Voorbeeld
Een refactor die drie prompts geleden de verkeerde kant op ging. Terugspoelen naar het moment ervoor zet de bestanden en het gesprek terug, en jij formuleert het verzoek opnieuw in plaats van de code terug te praten.
Zo doe je het
- 1Druk twee keer op Esc bij een lege prompt, of typ /rewind (/checkpoint en /undo werken ook).
- 2Kies het punt voordat het misging en zet het gesprek, de code of allebei terug.
- 3Ken de grenzen: bestanden die zijn gewijzigd door shellcommando's zoals rm, mv of cp worden niet teruggezet, en bewerkingen buiten Claude Code of in een andere sessie ook niet.
- 4Commit vóór riskante stappen. Checkpoints zijn bedoeld om snel te herstellen binnen een sessie, niet als vervanging van git.
Prompt om te kopiëren
Commit voordat je begint de huidige toestand met het bericht “checkpoint vóór [taak]”. Daarna [taak]. Vraag het me voor elk commando dat bestanden verwijdert of verplaatst.Waar het misgaat
- Rewind haalt geen bestand terug dat een commando heeft verwijderd. Alleen git doet dat.
- Bewerkingen die je intussen met de hand hebt gedaan, worden ook niet vastgelegd. Commit ze voordat je terugspoelt.
Uit de officiële documentatie: Claude Code docs: Checkpointing · Claude Code docs: Commands
12
Draai het vanuit scripts en CI
Dezelfde agent draait ook zonder chat: claude -p neemt een prompt, doet het werk en stopt met een status die je script kan controleren. In CI slaat --bare je lokale hooks, skills, MCP-servers en CLAUDE.md over, zodat een run zich overal hetzelfde gedraagt.
Voorbeeld
Een nachtelijke job draait claude -p met “werk de changelog bij op basis van de pull requests die vandaag zijn gemerged” en --output-format json, en laat de build mislukken als de exitstatus niet 0 is, zodat een mislukte run de volgende ochtend opvalt.
Zo doe je het
- 1claude -p "..." draait niet-interactief. --output-format json of stream-json geeft uitvoer die een script kan parsen.
- 2Het stopt met 0 bij succes en met een andere waarde bij een fout, zodat CI daarop kan vertakken.
- 3Voeg in CI --bare toe voor runs die niet afhangen van de lokale configuratie.
- 4Voor pull requests stelt /install-github-app Claude Code GitHub Actions in (alleen voor repositories op github.com); noem daarna @claude in een reactie bij een pull request of issue.
Prompt om te kopiëren
claude -p "Lees de diff ten opzichte van main. Noem elke wijziging die een dependency toevoegt, authenticatie raakt of een databasemigratie wijzigt, als JSON: {\"files\": [], \"reason\": \"\"}. Geef een lege lijst terug als die er niet zijn." --output-format jsonWaar het misgaat
- Een script draait met de rechten die je het geeft. Geef CI zo weinig als het nodig heeft.
- /install-github-app werkt alleen met repositories op github.com.
Uit de officiële documentatie: Claude Code docs: Run Claude Code programmatically · Claude Code docs: GitHub Actions
Codex
13
AGENTS.md: de instructies waarmee elke Codex-taak begint
Codex leest AGENTS.md voordat het aan het werk gaat, van je globale bestand tot en met de map waarin het werkt. Schrijf de commando's en regels één keer op, dicht bij de code waarvoor ze gelden, en het dichtstbijzijnde bestand wint.
Voorbeeld
Een repository met een webapp en een betaaldienst. De AGENTS.md in de hoofdmap bevat de gedeelde commando's; payments/AGENTS.md voegt toe: “wijzig nooit de afronding van valuta zonder test”. Werk in payments/ volgt beide, en waar ze verschillen, wint het bestand dat dichterbij ligt.
Zo doe je het
- 1Voer /init uit in de CLI om een eerste AGENTS.md in de huidige map te schrijven.
- 2Zet persoonlijke richtlijnen in ~/.codex/AGENTS.md en projectregels in de repository. Een submap kan een eigen bestand hebben; bestanden dichter bij de plek waar Codex werkt, winnen.
- 3Houd de bestanden kort: hun gezamenlijke omvang is begrensd, standaard op 32 KiB.
- 4Voeg een sectie “## Code Review Rules” toe: de reviews van Codex op GitHub volgen die.
Prompt om te kopiëren
Lees deze repository en schrijf AGENTS.md: 1. De exacte commando's om te installeren, te builden, te testen en te linten. 2. De opbouw in een paar regels. 3. Conventies die een nieuwkomer hier verkeerd doet. 4. Een sectie “## Code Review Rules” met wat een reviewer altijd moet signaleren. Noem alleen commando's die je met succes hebt uitgevoerd; markeer de rest als “niet geverifieerd”.Waar het misgaat
- Lange bestanden werken tegen je: de gezamenlijke omvang is standaard begrensd op 32 KiB.
- Een bestand in een submap dat het bestand in de hoofdmap tegenspreekt zonder dat te zeggen, verwart mensen net zo goed als Codex. Zeg wat het overschrijft.
Uit de officiële documentatie: Codex docs: AGENTS.md · Codex docs: CLI commands · Codex docs: GitHub integration
14
Bepaal hoeveel Codex zelfstandig mag doen
De toestemmingsmodus bepaalt wat Codex doet zonder te vragen. “Ask for approval” werkt binnen de werkruimte en pauzeert voordat het daarbuiten gaat; “Full access” haalt de sandbox en de vragen weg. Kies per taak, niet één keer voor altijd.
Voorbeeld
Je leest een onbekende repository in alleen-lezen en schakelt dan over naar “Ask for approval” om één bug op te lossen. Codex bewerkt binnen de repository, maar stopt om te vragen voordat het daarbuiten gaat.
Zo doe je het
- 1In de CLI wisselt /permissions de modus, en /status toont het goedkeuringsbeleid en de beschrijfbare mappen die gelden.
- 2“Ask for approval”, de aanbevolen standaard, bewerkt en voert commando's uit binnen de werkruimte en pauzeert voordat het daarbuiten gaat.
- 3“Approve for me” houdt dezelfde sandbox, maar stuurt goedkeuringsverzoeken naar een automatische review in plaats van naar jou.
- 4“Full access” haalt de grenzen voor bestandssysteem en netwerk weg. De documentatie voegt een waarschuwing toe; bewaar het voor omgevingen die je kunt weggooien.
Prompt om te kopiëren
Voer voordat je begint /status uit en vertel me het goedkeuringsbeleid en de beschrijfbare mappen. Daarna [taak]. Vraag het voor elk commando dat het netwerk nodig heeft of buiten deze repository schrijft.Waar het misgaat
- Met “Approve for me” leest geen mens elk verzoek. Gebruik het waar een verkeerde actie makkelijk ongedaan te maken is.
- “Full access” geldt voor de hele machine, niet alleen voor de repository.
Uit de officiële documentatie: Codex docs: Permission modes · Codex docs: Sandboxing · Codex docs: Approvals and security · Codex docs: CLI commands
15
Draai Codex vanuit scripts en CI
codex exec voert een taak uit zonder chat: de voortgang gaat naar stderr en alleen het laatste bericht naar stdout, zodat een script het antwoord kan gebruiken. Het start in alleen-lezen; geef het alleen schrijfrechten als de job dat nodig heeft.
Voorbeeld
Een releasescript draait codex exec met “schrijf release notes op basis van de commits sinds de laatste tag” en slaat stdout op in RELEASE.md. Alleen-lezen is genoeg, omdat het script het bestand zelf schrijft.
Zo doe je het
- 1codex exec "..." draait niet-interactief en gebruikt standaard een alleen-lezen-sandbox.
- 2Voeg --sandbox workspace-write toe als het bestanden moet bewerken; --full-auto is verouderd.
- 3--json geeft een JSON Lines-stroom van events voor scripts die elke stap nodig hebben.
- 4In GitHub Actions draait openai/codex-action@v1 codex exec voor je.
Prompt om te kopiëren
codex exec "Lees de wijzigingen sinds tag [v1.2.0]. Schrijf release notes, gegroepeerd als Toegevoegd, Gewijzigd en Opgelost: één regel per wijziging, in woorden die een gebruiker begrijpt, geen commit-hashes."Waar het misgaat
- Oudere handleidingen gebruiken nog --full-auto. Dat is verouderd; gebruik --sandbox workspace-write.
- Een job die alleen leest, moet alleen-lezen blijven, ook in CI.
Uit de officiële documentatie: Codex docs: Non-interactive mode · Codex docs: GitHub Action
16
Laat je code reviewen voordat je pusht
Codex beoordeelt je working tree, een branch of een pull request. Op GitHub signaleert het alleen de ernstigste problemen, P0 en P1, dus de opmerkingen zijn het lezen waard. Draai het voordat je pusht en laat het elke pull request beoordelen.
Voorbeeld
Voordat je een migratie pusht, signaleert /review dat de nieuwe kolom geen standaardwaarde heeft, waardoor bestaande rijen zouden falen. Eén minuut vóór de push in plaats van een mislukte deploy.
Zo doe je het
- 1/review in de CLI beoordeelt je working tree. codex review doet hetzelfde zonder chat, ten opzichte van een basisbranch, een commit of niet-gecommitte wijzigingen.
- 2Plaats op GitHub de reactie @codex review bij een pull request.
- 3Zet automatische reviews aan onder “Personal preferences” in de instellingen van Codex; dan is er geen reactie nodig.
- 4Schrijf de regels van je team in een sectie “## Code Review Rules” van AGENTS.md.
Ingebouwd
Prompt om te kopiëren
## Code Review Rules - Signaleer elke wijziging aan authenticatie of rechten. - Signaleer databasemigraties zonder weg terug. - Signaleer nieuwe dependencies en zeg of ze nodig zijn. - Negeer opmaak; daar zorgt de linter voor.Waar het misgaat
- Reviews op GitHub signaleren alleen problemen van niveau P0 en P1. Geen opmerking betekent niet dat het ontwerp klopt.
- Een review is een tweede mening, geen testrun. Blijf testen.
Uit de officiële documentatie: Codex docs: CLI commands · Codex docs: GitHub integration
17
Geef taken aan Codex Cloud
Codex Cloud blijft werken terwijl je computer slaapt, elke taak in een eigen werkruimte op basis van een omgeving die je één keer instelt. Met een goede omgeving kan het installeren, builden en testen; zonder omgeving gokt het.
Voorbeeld
Vier kleine refactors, vóór een vergadering verstuurd met codex cloud exec, elk in een eigen werkruimte uit dezelfde omgeving. Voor de lastigste vroeg je om drie pogingen en houd je de beste; daarna beoordeel je vier diffs.
Zo doe je het
- 1Maak een omgeving met de repositories, dependencies, tools en toegangsinstellingen die taken nodig hebben. Nieuwe omgevingen leggen een installatiescript en een startskill vast.
- 2Stel internettoegang per omgeving in: alleen package managers, gekozen domeinen of alles.
- 3Start taken vanuit ChatGPT, vanuit de IDE-extensie voor langere jobs, of vanuit de terminal met codex cloud exec; --attempts 1-4 vraagt om meerdere pogingen om te vergelijken.
- 4Code Review en de integraties met GitHub en Linear draaien nog op het oudere Codex Cloud (Legacy), dat OpenAI van plan is uit te faseren.
Ingebouwd
Prompt om te kopiëren
codex cloud exec --attempts 3 "Taak: [wijziging]. Context: [bestanden]. Klaar als [test] slaagt in deze omgeving. Houd de diff onder [aantal] regels."Waar het misgaat
- Met onbeperkt internet kan een taak elke site bereiken, ook pagina's die zijn geschreven om hem te sturen. Sta alleen toe wat de job nodig heeft.
- Ontbreekt het installatiescript, dan zijn de tests misschien niet gedraaid. Controleer of een taak ze echt heeft uitgevoerd.
Uit de officiële documentatie: Codex docs: Cloud environments · Codex docs: CLI commands · Codex docs: IDE extension
18
Stel Codex één keer in: config, profielen en MCP
Verander je elke sessie met de hand het model en de instellingen, zet ze dan in config.toml. Codex leest elke keer ~/.codex/config.toml, in vertrouwde projecten ook de projectinstellingen, en een profiel wisselt een hele set in één keer.
Voorbeeld
Een profiel “deep” met hoge redeneerinspanning voor ontwerpvragen, en de standaard voor snelle fixes. codex --profile deep vóór een architectuurvraag; gewoon codex voor al het andere.
Zo doe je het
- 1Stel het standaardmodel en de redeneerinspanning in via ~/.codex/config.toml (model en model_reasoning_effort). De CLI en de IDE-extensie delen dat bestand.
- 2Maak een profiel als eigen bestand, ~/.codex/<name>.config.toml, en start met --profile <name>.
- 3Voeg MCP-servers toe met codex mcp add <name> -- <command>; elke server wordt een tabel [mcp_servers.<name>], en /mcp toont de actieve.
- 4/status toont wat er geldt, en codex resume --last pakt de laatste sessie in deze map weer op.
Prompt om te kopiëren
Lees ~/.codex/config.toml en .codex/config.toml van dit project. Vertel me welk model, welke redeneerinspanning, welke sandbox en welke MCP-servers gelden, uit welk bestand elk komt, en wat met elkaar conflicteert.Waar het misgaat
- Projectinstellingen worden alleen geladen in vertrouwde projecten. Lijkt een instelling genegeerd te worden, controleer dat dan eerst.
- Profielen zijn nu aparte bestanden. Handleidingen die [profiles.name] in config.toml zetten, zijn verouderd.
Uit de officiële documentatie: Codex docs: MCP · Codex docs: Config basics · Codex docs: Advanced config · Codex docs: CLI commands
Regels voor ontwikkelaars
- Plak nooit geheimen, sleutels of klantgegevens in een prompt; houd ze buiten geïndexeerde mappen.
- Laat agents op een branch draaien met rechten die eerst vragen voordat er een commando wordt uitgevoerd; bekijk elke diff.
- Draai de tests zelf voordat je merget wat een agent heeft geschreven.
- Stel een bestedingslimiet in op elke API-sleutel die een agent gebruikt.
Verder verdiepen
- Geef de juiste context les, ongeveer 8 min
- Laat voorbeelden en de gewenste vorm zien les, ongeveer 8 min
- Verbeter het antwoord stap voor stap les, ongeveer 8 min
- Claude Code 101 Anthropic (Claude Academy)
- Get Started with Codex OpenAI (OpenAI Academy)
- AI Agents Course Hugging Face
- Full Course: Spec-Driven Development with Coding Agents DeepLearningAI on YouTube