Karpathy-stijl CLAUDE.md: verslaat dat patroon pure Claude?

Karpathy-stijl CLAUDE.md: verslaat dat patroon pure Claude?

De op Karpathy geïnspireerde CLAUDE.md: een realitycheck van 'Adversarial Planning'-skills

Een GitHub-repository met een enkel CLAUDE.md-bestand heeft op het moment van schrijven meer dan 100.000 sterren verzameld. Het wordt vaak de 'Karpathy-skill' genoemd, een verwijzing naar het werk van Andrej Karpathy in AI en onderwijs. Deze populariteit roept een cruciale vraag op voor elke ontwikkelaar die meer uit grote taalmodellen wil halen: werkt dit patroon echt?

Voordat we de resultaten van onze tests analyseren, zijn twee verduidelijkingen essentieel. Ten eerste is de betreffende repository gemaakt door Forrest Chang; het is geïnspireerd op Karpathy, niet door hem geschreven. Ten tweede is het bestand een CLAUDE.md, geen SKILL.md. Het is een set instructies die een mens kan kopiëren en plakken in een chatsessie, geen formele 'skill' die geïnstalleerd kan worden om het gedrag van het model programmatisch aan te passen.

Bij SkillProof testen we geen copy-paste prompts. We testen 'skills'. We installeren ze, voeren ze uit op echte code en meten hun prestaties ten opzichte van het basismodel. Om de hype te onderzoeken, hebben we een cohort van 'skills' geïdentificeerd en getest die hetzelfde onderliggende patroon implementeren als Chang's CLAUDE.md: 'adversarial planning'. Dit artikel presenteert onze bevindingen.

Deconstructie van het 'Grill-Me'-patroon

Het kernidee achter de populaire CLAUDE.md is een vorm van gestructureerde zelfkritiek. De prompt instrueert het model om niet alleen een antwoord te produceren, maar om een persona aan te nemen – een panel van deskundige critici – om zijn eigen output uit te dagen en te verfijnen alvorens een definitieve versie te presenteren. Het proces ziet er doorgaans als volgt uit:

  1. Initieel Plan: Het model genereert een high-level plan om het verzoek van de gebruiker op te lossen.
  2. Zelfkritiek: Het model wordt gevraagd zijn eigen plan te 'grillen', waarbij het potentiële gebreken, edge cases en implementatierisico's identificeert. Het kan zwakke punten opsommen of verhelderende vragen aan zichzelf stellen.
  3. Verfijnde Output: Op basis van de kritiek produceert het model een robuuster, definitief antwoord.

Deze techniek is een vorm van 'adversarial planning'. Je dwingt het model om als zijn eigen 'red team' te fungeren, en simuleert zo een reviewproces dat normaal gesproken een tweede persoon of een aparte verificatiestap zou vereisen. De hypothese is dat deze interne dialoog een meer doordacht en correct resultaat oplevert, vooral voor complexe taken zoals systeemontwerp of de implementatie van algoritmen.

Dit is het patroon dat we wilden testen. Wanneer ontwikkelaars vragen om een 'karpathy claude skill review', is dit het mechanisme waar ze naar vragen. Leidt het dwingen van een model om zichzelf te bekritiseren tot meetbaar betere code?

CLAUDE.md vs. SKILL.md: een cruciaal onderscheid

Het verschil tussen een CLAUDE.md en een SKILL.md is niet alleen semantisch; het is fundamenteel voor hoe we prestaties evalueren.

Een CLAUDE.md is een handmatige prompt. De effectiviteit ervan kan sterk variëren, afhankelijk van het vermogen van de gebruiker om het aan te passen, de specifieke input en de staat van de chatsessie. Het is een recept, geen tool. Een recept kun je niet op een gestandaardiseerde manier benchmarken.

Een SKILL.md, zoals gedefinieerd en gebruikt in de SkillProof-directory, is een canoniek, versiebeheerd bestand dat de 'system prompt' van het model programmatisch wijzigt. Wanneer je een 'skill' uit onze directory gebruikt, wordt deze eenmalig geïnstalleerd. Elk volgend verzoek aan het model profiteert van (of wordt gehinderd door) de instructies van die 'skill', zonder handmatig knip- en plakwerk. Dit maakt herhaalbare, objectieve tests mogelijk.

Onze volledige testmethodologie is op dit principe gebouwd. We nemen een SKILL.md, installeren het en voeren het uit op een reeks real-world taken. We vergelijken de output – op het gebied van correctheid, efficiëntie en naleving van de vereisten – met exact hetzelfde model zonder geïnstalleerde 'skill'. De resulterende score is een directe meting van de toegevoegde (of afgetrokken) waarde van die 'skill'.

Voor dit onderzoek hebben we het bestand van Forrest Chang niet rechtstreeks getest. In plaats daarvan hebben we meerdere 'skills' uit de community verzameld die het 'adversarial planning'-patroon formaliseren in een herbruikbaar SKILL.md-formaat. Dit stelde ons in staat de vraag te beantwoorden: levert het patroon zelf, wanneer consistent toegepast, wat het belooft?

Onze testmethodologie voor 'Adversarial Skills'

Om een eerlijke grill-me claude skill tested-analyse uit te voeren, hebben we een representatieve set taken geselecteerd die veelvoorkomende pijnpunten voor ontwikkelaars zijn en waar een meer 'doordacht' model theoretisch zou kunnen excelleren:

  • Complexe Refactoring: Het herschrijven van een monolithische functie met hoge cyclomatische complexiteit naar kleinere, testbare eenheden.
  • API Client Generatie: Het schrijven van een client-library voor een redelijk complexe OpenAPI-specificatie, inclusief foutafhandeling en request/response-modellen.
  • Algoritme-implementatie: Het implementeren van een niet-triviaal algoritme vanuit een prozatekst, zoals A* pathfinding of een priority queue.
  • Unit Test Generatie: Het schrijven van een uitgebreide suite van unit tests voor een klasse met meerdere afhankelijkheden en edge cases.

Voor elke taak voerden we twee proeven uit: één met de standaard Claude (het basismodel, geen 'skill') en één met een 'adversarial planning skill' geïnstalleerd. We hebben de outputs beoordeeld op basis van een rubric die functionele correctheid, codekwaliteit, volledigheid en efficiëntie omvat. De eindscore voor een 'skill' vertegenwoordigt de gemiddelde prestatiedelta over alle geteste taken.

Dit rigoureuze proces is hoe we alle 1416 'skills' hebben geëvalueerd die momenteel in ons systeem worden gevolgd. Het is een 'noisy' landschap: slechts 889 (63%) van die 'skills' halen onze drempel voor het bieden van een netto positief voordeel. Nog eens 467 vereisen een niet-triviale 'setup' of zijn alleen nuttig in zeer specifieke contexten. De 'adversarial planning skills' die we hebben getest, vielen in al deze categorieën.

Het oordeel: werkt de op Karpathy geïnspireerde skill echt?

Het antwoord is genuanceerd. De effectiviteit van het 'adversarial planning'-patroon is sterk afhankelijk van de complexiteit van de taak. Het is geen universele verbetering. Voor sommige taken is het zelfs nadelig.

Onze tests toonden een duidelijke trend:

Taaktype Prestatie standaard Claude Prestatie 'Adversarial Skill' Oordeel
Eenvoudige Boilerplate (bijv. een React-component) Snel, 95% correct Trager, overkritisch, 90% correct Negatieve impact
Complexe Refactoring Mist vaak edge cases Vindt meer edge cases, maar is 'verbose' Netto positief
Algoritmeontwerp vanaf nul Gevoelig voor logische hiaten Betere logische structuur, trager Netto positief
Debuggen van obscure fouten Stelt vaak oppervlakkige fixes voor Onderzoekt diepere hoofdoorzaken Netto positief

Voor eenvoudige, goed gedefinieerde taken voegt het 'adversarial'-patroon onnodige overhead toe. Het model besteedt tokens en tijd aan het bekritiseren van een plan dat al voldoende was. In sommige gevallen introduceerde het zelfkritiekproces zelfs fouten, omdat het model gebreken hallucineerde en deze vervolgens 'repareerde', waardoor perfect werkende code werd gebroken. Dit is een cruciale bevinding voor iedereen die zich afvraagt of de 'karpathy claude md' de moeite waard is voor dagelijks codeerwerk.

Echter, voor complexe, open-ended taken – het soort dat een junior ontwikkelaar vaak voor problemen stelt – biedt het patroon een meetbaar voordeel. Wanneer gevraagd wordt een systeem te ontwerpen of een verward stuk legacy code te refactoren, dwingt de zelfkritiekfase het model om interacties en edge cases te overwegen die de standaard Claude vaak mist. De uiteindelijke output is robuuster en vereist minder menselijke correctie, ook al duurt het genereren langer en is het aanzienlijk meer 'verbose'.

Eén 'adversarial-planning skill' die we testten, presteerde duidelijk beter dan de baseline bij open-ended systeemontwerptaken, maar scoorde eronder bij het genereren van eenvoudige boilerplate. Dit benadrukt de noodzaak om de juiste 'skill' voor de juiste taak te gebruiken, in plaats van te zoeken naar een enkele 'god prompt' die alles oplost.

De verborgen kosten: 'verbosity' en negatieve scores

Het meest directe nadeel van dit patroon is 'verbosity'. Een antwoord van een 'skill' die 'adversarial planning' gebruikt, kan 3-5x langer zijn dan een antwoord van de standaard Claude. Het omvat het plan, de volledige kritiek en dan het definitieve antwoord. Hoewel de tussenstappen inzicht kunnen bieden in het 'denkproces' van het model, verhogen ze ook het tokenverbruik en de cognitieve belasting voor de ontwikkelaar die alles moet lezen.

Zorgwekkender is het risico op negatieve prestaties. Een slecht geïmplementeerde 'skill' is erger dan helemaal geen 'skill'. Bij SkillProof is onze belangrijkste bevinding niet de lijst met 'skills' die werken, maar de lijst met 'skills' die dat niet doen. Tot op heden scoorden 60 'skills' die we hebben getest LAGER dan de standaard Claude. Ze maken het model actief minder accuraat, minder efficiënt of minder betrouwbaar.

Verschillende van de 'adversarial planning skills' die we testten, vielen in deze categorie. De 'failure mode' was consistent: de kritiekfase raakte vast in een lus, of de 'expert persona's' spraken elkaar tegen, wat leidde tot een verwarde en onjuiste einduitvoer. In één test kwam een 'skill' gericht op SQL-queryoptimalisatie in een kritieklus terecht waarin het de voordelen van JOIN versus INNER JOIN (die in de meeste dialecten functioneel identiek zijn) bediscussieerde en er niet in slaagde om überhaupt een query te produceren.

Dit is de anti-hype realiteit van het AI 'skill'-ecosysteem. Populariteit en GitHub-sterren correleren niet met prestaties. Een slim prompt-patroon kan net zo waarschijnlijk schaden als helpen. De enige manier om het zeker te weten, is door te testen.

Dus, is het patroon de moeite waard?

Laten we terugkeren naar de oorspronkelijke vraag. Is het patroon uit de op Karpathy geïnspireerde CLAUDE.md de moeite waard?

Als leermiddel, absoluut. Het doorlezen van Chang's CLAUDE.md en vergelijkbare prompts is een uitstekende manier om het concept van 'chain-of-thought' en zelfcorrectie te begrijpen. Er handmatig mee experimenteren kan je helpen een betere intuïtie voor 'prompting' te ontwikkelen.

Als productietool in de vorm van een geïnstalleerde SKILL.md, is het antwoord een duidelijk 'dat hangt ervan af'. Onze data tonen aan dat voor specifieke, zeer complexe taken een goed geïmplementeerde 'adversarial skill' een krachtig hulpmiddel kan zijn voor senior engineers. Het kan fungeren als een onvermoeibaar, logisch klankbord voor complexe problemen. Voor dagelijks codeerwerk is het waarschijnlijk traag, duur en potentieel contraproductief.

Dit is precies het probleem waarvoor SkillProof is gebouwd. In plaats van te vertrouwen op hypes of het aantal sterren, kun je vertrouwen op onze data. Wij scheiden de 'skills' die een echte, meetbare verbetering bieden van de 'skills' die slechts slimme maar ineffectieve prompts zijn.

Gerelateerde artikelen: het aandeel 'skills' dat de standaard Claude verslaat · hoe we elke 'skill' testen voordat we deze opnemen.

We hebben tientallen 'skills' getest die gebruikmaken van 'adversarial planning' en andere geavanceerde technieken. Om te zien welke onze real-world tests hebben doorstaan en een SkillProof-score hebben verdiend, kun je de categorie Productivity & Workflow in onze directory bekijken. We bundelen ook de best presterende 'skills' uit alle categorieën in een starter pack voor $10, waarmee je een set geverifieerde tools krijgt die echt werken.

★ 9.6/10 × 3

Het gratis starterspakket

De 3 skills met onze hoogste testscores plus de installatiechecklist — de setup die wij op een verse machine zouden zetten. Gratis, per e-mail.

Eén e-mail met het pakket + een korte wekelijkse digest met nieuwe testresultaten. Uitschrijven kan altijd.