Gebaseerd op een echt geval van automatisch programmeren met Claude Code, deel ik enkele prompttechnieken

2/11/2026
4 min read

In dit artikel deel ik via een echt geval een praktijkvoorbeeld van het gebruik van Claude Code. Voordat ik begin, eerst een kleine enquête.

Oorspronkelijke behoefte: Een gewaardeerde betaalde gebruiker wilde dat ik in artikelen de wijzigingstijd van het artikel zou toevoegen.

Op het eerste gezicht lijkt deze behoefte moeilijk te realiseren. Omdat de artikelen op mijn website niet in een database zijn opgeslagen, maar allemaal zijn gebouwd met SSG van next.js. Ze hebben helemaal geen bijwerkingstijd.

Een techniek hier is: bij het oplossen van problemen, moeten we de oorspronkelijke behoefte niet direct aan Claude Code voeren, om de volgende redenen:

1. De oorspronkelijke behoefte is relatief vaag, wat tot misinterpretatie kan leiden. Als het eenmaal verkeerd begrepen is, kan het uiteindelijk wel een tijd toevoegen, maar die tijd is mogelijk niet betrouwbaar.

2. Het tokenverbruik van Claude Code is echt erg duur. Daarom kan een vage behoefte leiden tot zinloze verbruik van veel tokens.

Daarom moeten we de oorspronkelijke behoefte eerst ontleden. Ik heb eerst deepseek geraadpleegd, en deepseek gaf me twee oplossingen:

1. Bestandsbouwdatum: bij elke build moeten we de bouwtijd van het bestand verkrijgen. Maar de bundelstrategie van turbopack is iets anders; bij elke build verandert de hashwaarde van het bestand, dus deze bouwtijd is mogelijk niet betrouwbaar.

2. Git commit-tijd, dacht ik, dat zou betrouwbaarder moeten zijn.

Met een ruwe oplossingsrichting had ik deze eenvoudige prompt: Compileer de git commit-tijd in de kop van elk .mdx artikel.

Claude Code is redelijk betrouwbaar; als de prompt nauwkeurig is, is er over het algemeen niets mis mee, het voert gewoon uit.

Na het verbruik van 7 dollar aan tegoed en ongeveer 20 minuten tijd, was het eindelijk succesvol uitgevoerd.

Zoals verwacht, gebeurde er iets onverwachts: het sloeg 171 bestandswijzigingen over.

Een vervelend aspect hier is dat de overgeslagen bestanden slechts een extra pass parameter doorgeven, verder zijn ze volledig identiek.

<PostLayout pass>...

Maar het was niet flexibel en definieerde deze extra parameter als een volledig andere aangepaste component. Vervolgens sloeg het de verwerking over ~ ~

import Layout from 'components/post-layout';
import { getGitFileInfo } from '@/utils/git-info';
export default function Article({ children }: any) {
  const gitInfo = getGitFileInfo('src/app/jouwpad/page.mdx');
  return (
    
      {children}
    
  );
}

Maar in werkelijkheid had ik dit resultaat nodig, en de uitvoer was volledig identiek.

import MdxLayout from 'components/mdx-layout';
export default function Article({ children }: any) {
  return (
    
      {children}
    
  );
}

En toen viel ik in een valkuil met de prompt.

Ik voerde opnieuw een prompt in: Refactor de overgeslagen 171 bestanden op dezelfde manier als hierboven.

Mijn uitdrukking was, bij nader inzien, enigszins dubbelzinnig. Omdat Claude Code al een voorgestelde oplossing had gegeven, maar ik was het er niet mee eens. Mijn bedoeling was om de overgeslagen bestanden te wijzigen volgens het schema van de reeds gewijzigde honderden bestanden, maar tijdens de uitvoering interpreteerde het het als: het voorgestelde schema hierboven.

Deze dubbelzinnigheid zorgde ervoor dat het 20 minuten lang volgens het ongewenste schema uitvoerde, met tussendoor 2 fouten die het zelf herstelde, en het verslond gulzig mijn tokens. De twee interpretaties begonnen te botsen en veroorzaakten fouten.

Uiteindelijk moest ik deze uitvoering opgeven en mijn betekenis opnieuw verduidelijken.

Samenvatting

1. In prompts is het beter om relatief stabiele en nauwkeurige oplossingen op te nemen, zodat de AI zo min mogelijk hoeft na te denken, wat het hallucinatiepercentage vermindert.

2. Zorg ervoor dat er geen dubbelzinnigheid is in de behoefte-prompt, want dubbelzinnigheid kan tot fouten leiden. Hoewel Claude Code uiteindelijk kan herstellen, veroorzaakt dit veel tokenverbruik. En omdat LLM's resultaten produceren op basis van voorspellingsmechanismen, kunnen vroege misinterpretaties en dubbelzinnigheden ervoor zorgen dat elke volgende stap verder in de verkeerde richting gaat. Het zal ook proberen logisch consistent te blijven, waardoor het dingen genereert die niet bestaan, waardoor het probleem groter wordt en de controle door ontwikkelaars moeilijker wordt. Als je wordt misleid door zijn hallucinaties, kan dit ernstige gevolgen hebben.

3. De beperkingen van natuurlijke taal zijn minder nauwkeurig dan code. Het opnemen van bestandsnamen, codevariabelen, codespecifieke termen en vakjargon in prompts vermindert de hallucinaties van Claude Code aanzienlijk.

Published in Technology

You Might Also Like