Tutorials 13 min

Karpathy's LLM Wiki: zo bouw je een AI-kennisbasis die echt blijft groeien

Andrej Karpathy deelde in april 2026 een patroon voor persoonlijke kennisbases met LLM's. Wat het is, waarom het beter werkt dan RAG, en hoe je begint.

Miniatuur diorama-illustratie bij artikel 'Karpathy'

Het patroon dat tienduizenden ontwikkelaars in april opmerkten

Op 2 april 2026 plaatste Andrej Karpathy een tweet over hoe hij persoonlijke kennisbases bouwt met LLM’s. De post werd in twee dagen 17.000 keer geliked en kreeg drie miljoen views (Bron: Karpathy gist). Twee dagen later, op 4 april, deelde hij een uitgewerkte versie als “idea file” op GitHub Gist — een document dat je rechtstreeks aan een LLM-agent geeft, zodat die er een eigen versie van bouwt.

Het patroon heet LLM Wiki. Niet “Wiki Layer” — dat is een afgeleide benaming uit derde blogs. En het is geen tool die je installeert. Het is een werkpatroon: drie mappen, één schema-bestand, en de afspraak met je LLM-agent dat hij voor jou een doorlopend onderhouden kennisbasis bouwt en bijhoudt.

Voor wie al wat met AI doet, klinkt dat alledaags — totdat je in de gist leest hoe Karpathy het scherp van RAG onderscheidt. En dat is waar het verhaal interessant wordt.

Beginner-tip:Heb je geen ervaring met termen als “RAG” of “agent”? Geen probleem. Lees eerst onze korteWat is RAG?-uitleg(vijf minuten) of dediepere technische deep dive— daarna pakt de rest van dit artikel logischer aan.

Waarom dit anders is dan RAG

Bij Retrieval-Augmented Generation (RAG) — de techniek waarop NotebookLM, ChatGPT file-uploads en de meeste enterprise-knowledge-systemen draaien — gebeurt het volgende: je upload een set documenten. De AI splits ze in stukjes, slaat ze op met embeddings, en zoekt bij elke vraag de meest relevante stukjes om een antwoord te componeren. Werkt prima.

Het probleem is dat niets zich opbouwt. Vraag iets dat vijf documenten samenbrengt, en het model moet die vijf stukjes elke keer opnieuw vinden en aan elkaar plakken. Vraag dezelfde subtiele vraag morgen opnieuw: zelfde werk, zelfde tokens, zelfde wachttijd. De kennis blijft in de documenten — er wordt niets uit gemaakt dat blijft staan.

Karpathy’s punt: bouw één keer een wiki op, en houd hem actueel. Als je een nieuwe bron toevoegt, leest de LLM hem, vergelijkt met wat er al in de wiki staat, werkt de samenvattingen bij, voegt nieuwe entity-pagina’s toe, markeert waar de nieuwe bron de oude tegenspreekt, en versterkt de overkoepelende synthese. Het tedious bookkeeping-werk dat menselijke wikis altijd doodt — cross-references onderhouden, summaries actueel houden, contradicties signaleren — doet de LLM nu. Karpathy gebruikt zelf Claude Code als zijn agent — onze analyse over wat zijn keuze betekent voor de bredere AI-race gaat daar dieper op in.

Karpathy zelf vat het bondig samen in zijn gist: “Obsidian is the IDE; the LLM is the programmer; the wiki is the codebase.” Jij stuurt, leest en stelt vragen. De LLM maakt en onderhoudt.

Gevorderden:RAG en LLM Wiki sluiten elkaar niet uit. Een volwassen setup gebruikt allebei: de wiki als hoogwaardig synthese-laag voor terugkerende vragen, RAG (of een lokale search-tool alsqmd) voor het zoeken in raw-bronnen wanneer een specifiek citaat nodig is. Karpathy schrijft expliciet dat bij~100 sources, ~hundreds of pageseen goed onderhoudenindex.mdvaak voldoende is — embedding-RAG wordt pas relevant zodra je daar overheen groeit.

De drie lagen van het patroon

Architectuur-diagram van Karpathy's LLM Wiki: drie lagen — raw/ met onveranderlijke bronnen, wiki/ met de door de LLM beheerde markdown-pagina's, en het schema-bestand (CLAUDE.md / AGENTS.md) dat de regels vastlegt — met de LLM-agent in het midden die leest, schrijft en bestuurd wordt

Karpathy’s gist is bewust abstract — hij beschrijft een patroon, geen implementatie. Maar de drie lagen zijn vast:

Laag 1 — Raw sources. Een directory met onveranderlijke brondocumenten. Artikelen, PDF’s, papers, transcripts, screenshots. De LLM léést hier alleen uit, hij schrijft hier nooit in. Dit is je single source of truth — als er ergens een feit klopt, moet de oorsprong hier traceerbaar zijn.

Laag 2 — De wiki. Een directory met markdown-bestanden die de LLM aanmaakt en onderhoudt. Karpathy noemt expliciet vier types pagina’s: summaries (één per bron), entity-pagina’s (personen, organisaties, producten), concept-pagina’s (uitleg van begrippen die in meerdere bronnen voorkomen) en comparison-pagina’s (synthese van wat verschillende bronnen over hetzelfde onderwerp zeggen). Plus twee speciale bestanden — meer daarover hieronder.

Laag 3 — Het schema. Eén bestand (CLAUDE.md voor Claude Code, AGENTS.md voor OpenAI Codex) waarin je vastlegt hoe je wiki gestructureerd is, welke templates gelden, hoe nieuwe bronnen verwerkt moeten worden, en welke workflow je wilt. Karpathy noemt dit nadrukkelijk de belangrijkste configuratielaag — “it’s what makes the LLM a disciplined wiki maintainer rather than a generic chatbot.” Jij en de LLM co-evolueren dit bestand naarmate je leert wat in jouw domein werkt.

Twee bestanden die de wiki samenhouden

Naast de pagina-types noemt Karpathy twee bestanden die je laten navigeren naarmate de wiki groeit.

index.md — content-georiënteerd. Een catalogus van alles in de wiki: elke pagina met een link, een one-liner, en optioneel metadata. Georganiseerd per categorie (entities, concepts, sources). De LLM werkt dit bij bij elke ingest. Bij een vraag leest hij eerst de index, vindt de relevante pagina’s, en duikt daar in. Dit schaalt verrassend goed — Karpathy beweert dat dit tot rond 100 bronnen en honderden pagina’s volstaat, zonder dat je embedding-RAG hoeft op te tuigen.

log.md — chronologisch. Een append-only logboek van wat er gebeurd is en wanneer. Ingests, queries, lint-rondes. Karpathy’s tip: laat elke entry beginnen met een consistente prefix (bijvoorbeeld ## [2026-04-02] ingest | Artikel Titel) zodat het log parseerbaar wordt met unix-tools. grep "^## \[" log.md | tail -5 geeft je de laatste vijf gebeurtenissen.

Drie operaties: ingest, query, lint

Het hele systeem komt neer op drie werkwoorden.

Ingest. Je zet een nieuw document in raw/ en zegt tegen de LLM: “verwerk dit.” De LLM leest, bespreekt key takeaways met je (Karpathy doet dit graag handmatig en stuurt bij), schrijft een summary-pagina, werkt index bij, update 10-15 verwante pagina’s, en voegt een log-entry toe. Eén bron kan dus heel veel files raken. Dat is precies de bookkeeping die je menselijk niet wil doen.

Query. Je stelt een vraag aan de wiki. De LLM doorzoekt de wiki, leest relevante pagina’s, en synthesiseert een antwoord — met citaties terug naar de bronnen. Karpathy’s belangrijke inzicht: goede antwoorden kun je terugfilen als nieuwe pagina’s. Een vergelijkings-tabel die je vandaag genereert, hoort niet in chat-history verloren te gaan. Dump ‘m in wiki/comparisons/ en hij compoundeert mee.

Lint. Periodiek vraag je de LLM: “controleer de wiki.” Wat staat tegen elkaar in? Waar zijn nieuwe bronnen oudere claims voorbij gestreefd? Welke concepten worden vaak genoemd maar hebben geen eigen pagina? Welke pagina’s hebben geen inbound links (orphans)? Een lint-pass is hoe je de wiki gezond houdt naarmate die groeit.

Hoe je vandaag begint — stap voor stap

Concreet. Open Claude Code, Codex of je favoriete LLM-agent met file-toegang. Doe dit:

Stap 1 — Maak je projectmap. Onder bijvoorbeeld ~/projects/mijn-wiki/:

mijn-wiki/
├── raw/         # bronnen
├── wiki/        # door LLM beheerd
└── CLAUDE.md    # schema

Stap 2 — Zet je eerste bronnen in raw/. Begin klein. Drie tot vijf documenten over één onderwerp dat je echt interesseert. Klipperen via Obsidian Web Clipper voor artikelen; transcript-tools voor podcasts; PDF’s gewoon kopiëren.

Stap 3 — Vul CLAUDE.md. Karpathy’s gist is letterlijk bedoeld om gekopieerd te worden naar je agent. Begin met zijn versie als startpunt en pas aan voor je domein. Wat verwacht je? Welke entity-types zijn voor jouw onderwerp belangrijk? Hoe wil je de log bijhouden? Dit bestand is jouw stijlboek.

Stap 4 — Open Obsidian op de map. Punt Obsidian (gratis, download op obsidian.md) naar mijn-wiki/wiki/ als vault. Je krijgt direct de graph-view, full-text search en de [[link]]-syntax. Onze gids over prompten voor beginners helpt je de eerste paar instructies aan Claude scherp te krijgen — hetzelfde principe geldt voor agent-prompts.

Stap 5 — Ingest je eerste bron. Vraag de agent: “Lees raw/<bestand>.md en maak een eerste wiki-structuur volgens CLAUDE.md.” Bekijk wat hij produceert. Pas het schema aan waar het anders moet. Itereer.

Stap 6 — Bouw de gewoonte. Bij elke nieuwe bron: in raw/, “ingest dit.” Bij elke vraag: stel hem aan de wiki, niet aan een lege ChatGPT-sessie. Bij twijfel: vraag een lint-pass.

Beginner-tip:Begin niet met “ik bouw een knowledge base voor mijn hele leven.” Karpathy zelf adviseert: één onderwerp, één projectmap. Pas als die werkt, splits je of voeg je toe. Een wiki van honderd losse onderwerpen wordt nooit goed onderhouden.

Wat de community ermee bouwt — twee maanden later

Karpathy’s gist is geen geïsoleerd idee gebleven. Binnen een week na de virale tweet stroomden de implementaties los. Een paar die opvielen.

claude-obsidian (open source). Op 13 april 2026 deelde maker @charliejhills een vrij beschikbare implementatie die Karpathy’s patroon één-op-één naar Obsidian vertaalt — automatische organisatie, cross-references, en een compounderende wiki (Bron: charliejhills op X). Twee weken later schreef @hasantoxr dat hij Notion AI eruit gooide omdat de architectuur fundamenteel anders is: een continu meewerkende notetaker in plaats van een chat-interface (Bron: hasantoxr op X).

Miles Deutscher’s setup. Op 8 april 2026 — vier dagen na de gist — postte creator Miles Deutscher zijn eigen setup: “Claude Code + Obsidian is the most powerful AI combo I’ve ever used. I literally built an AI second brain that runs my entire life. Inspired by Andrej Karpathy’s LLM Knowledge Wiki.” (Bron: milesdeutscher op X). Hij deelt sinds dan stap-voor-stap-tutorials voor wie zelf wil beginnen.

Het 4-stappenplan dat rondgaat. Een veel-gedeelde versie van @Bober_smart komt neer op vier handelingen (Bron: Bober_smart op X):

  1. Maak een nieuwe Obsidian-vault (gewoon een lege map).
  2. Open Claude Desktop of Claude Code.
  3. Wijs Claude naar het pad van je vault.
  4. Plak de prompt uit Karpathy’s gist en laat Claude de structuur opzetten.

Tien minuten, geen extra plugins, geen vector-database, geen embedding-pipeline.

Hier de oorspronkelijke post van Miles Deutscher waar veel van deze setups op leunen:

Video: een complete walkthrough met Obsidian + Claude Code

Voor wie de structuur eerst in beeld wil zien voor zelf te beginnen: onderstaande tutorial loopt door een werkende LLM Wiki-setup met Claude Code, Obsidian en een knowledge-graph-laag heen. Geen marketing — gewoon de schermen die je zelf gaat zien.

Voorbeeld-use-cases die werken

Karpathy noemt vijf brede toepassingen in zijn gist. Vertaald naar Nederlandse contexten:

Onderzoek. Een journalist die over twee maanden een artikel schrijft over een sectorvraagstuk. Elke interview-transcript, elk rapport, elke achtergrondnota gaat in raw/. De wiki bouwt zich op tot een synthesis-document waar het uiteindelijke artikel uit voortkomt.

Boek lezen. Een lange roman of dichte non-fictie — per hoofdstuk een ingest. De wiki bouwt character-pagina’s, theme-pagina’s, plot-threads. Aan het eind heb je een persoonlijk fan-wiki à la Tolkien Gateway, alleen voor jouw boek.

Personal goals en self-improvement. Journal entries, podcast-notes, gelezen artikelen over één thema (slaap, productiviteit, sport). De wiki houdt een evoluerend beeld bij van wat je hebt geleerd — en spot waar twee bronnen elkaar tegenspreken.

Concurrentie-analyse of due diligence. Voor een MKB-ondernemer of analyst die over weken materiaal verzamelt over een markt of een partij — productpagina’s, persberichten, financiële rapporten. De wiki blijft synchroon, ook als de markt verandert.

Team-context bij Claude Code of soortgelijke setups. Voor wie Claude Code op de desktop gebruikt: een team-wiki gevoed door Slack-threads, meeting-transcripts en project-documenten. Mensen reviewen, de LLM onderhoudt. Zie ook onze zustersite voor de Claude Code-review op debesteaitools.nl voor een uitgebreidere blik op de tool zelf.

Wat dit oplost — en wat het niet oplost

Wat het oplost: het onderhouds-probleem. Wikis falen niet omdat het idee slecht is — ze falen omdat het bijhouden te duur is in menselijke tijd. Een LLM die 15 pagina’s in één pass updatet, met versiebeheer via git, kan dat onderhoud op (bijna) nul brengen. Karpathy verwijst expliciet naar Vannevar Bush’s Memex (1945) — een visie van een persoonlijke, geannoteerde kennisstore met associative trails. Bush had de techniek niet om het onderhoud te automatiseren. Wij wel.

Wat het niet oplost: de keuze van bronnen. De LLM kan synthesiseren, niet zien. Als je raw/ vult met onbetrouwbare bronnen, krijg je een mooi onderhouden wiki vol gebakken lucht. Curatie blijft jouw werk. Karpathy is hier expliciet over: “The human’s job is to curate sources, direct the analysis, ask good questions, and think about what it all means. The LLM’s job is everything else.”

En wat het kostentechnisch betekent: elke ingest, elke query, elke lint kost tokens. Voor wie zwaar gebruikt, optellen die rekeningen. Onze analyse over wat AI-licenties écht kosten in 2026 geldt ook hier: het sticker-prijsje van een Claude-abonnement is niet de werkelijke kostprijs zodra je een agent dag in dag uit op je vault loslaat.

Drie privacy-overwegingen

Een wiki is gewoon een map met markdown-bestanden — wat in je gewone Documenten-map kan, kan in een vault. Drie dingen om aan te denken.

Eén: als je vertrouwelijke documenten ingest met een hosted LLM (Claude, ChatGPT), gaat die content via hun servers. Claude Team/Enterprise belooft geen training op input, maar lees de policy door voor je een NDA-document toevoegt.

Twee: wil je volledig lokaal? Dat kan. Zet Ollama op met een capabel model — onze gids lokale LLM draaien op je Mac loopt je daardoorheen. Sluit dat aan op een agent als OpenCode of Goose. Dan blijft alles op je harde schijf.

Drie: versiebeheer. De wiki is een git-repo by default. Commit dagelijks. Als de LLM een keer een pagina sloopt — en dat gebeurt — rol je terug.

Samenvatting — de 5-minuten-versie

  • Karpathy’s LLM Wiki is een patroon waarbij een LLM-agent doorlopend een gestructureerde, persoonlijke kennisbasis voor je bouwt en onderhoudt — uit raw bronnen die je verzamelt en in een vaste map zet.
  • Het verschilt fundamenteel van RAG: bij LLM Wiki staat de synthese al gemaakt voor je vraagt, met cross-references en samenvattingen die elke keer rijker worden, in plaats van per query opnieuw te worden afgeleid.
  • Drie lagen volstaan: raw/ (onveranderlijke bronnen), wiki/ (door LLM beheerde markdown-bestanden) en een schema-bestand (CLAUDE.md of AGENTS.md) dat regels en workflows vastlegt.
  • De gangbare stack is Claude Code of OpenAI Codex aan de ene kant en Obsidian aan de andere — de LLM schrijft, jij leest en stuurt via de graph-view en de [[link]]-syntax.
  • Begin klein: één onderwerp, drie tot vijf bronnen, één schema-bestand. Pas als die wiki werkt, splits of breid uit — een wiki van honderd onderwerpen wordt nooit goed onderhouden.

Bronnen

Veelgestelde vragen

Wat is Karpathy's LLM Wiki precies, kort uitgelegd?

Het is een patroon waarbij je raw bronmateriaal (artikelen, PDF's, transcripts) in een vaste map zet, en een LLM-agent die bronnen leest en daaruit een gestructureerde wiki bouwt — interlinked markdown-bestanden met samenvattingen, concept-pagina's, entity-pagina's en cross-references. Bij elke nieuwe bron werkt de agent de wiki bij. De wiki is een persistent, compounderend kennis-artefact, geen ad-hoc zoekresultaat.

Hoe verschilt LLM Wiki van een gewoon RAG-systeem?

Bij RAG retrieve je per vraag relevante fragmenten uit je documenten en bouwt het model on-the-fly een antwoord — dat werk wordt elke keer opnieuw gedaan. Bij LLM Wiki staat de synthese al gemaakt en gemarkeerd vóór jij vraagt: cross-references zijn er, tegenstrijdigheden zijn gemarkeerd, samenvattingen zijn actueel. Karpathy noemt het bewust een 'persistent, compounding artifact'.

Welke tools heb ik nodig om met LLM Wiki te beginnen?

Drie dingen. Een LLM-agent met file-toegang (Claude Code, OpenAI Codex of vergelijkbaar). Een markdown-editor met graph-view (Obsidian is de standaardkeuze, maar elke editor die [[links]] aankan werkt). En een projectmap met minimaal raw/ en wiki/-submappen plus een schema-bestand (CLAUDE.md of AGENTS.md) waarin je regels staan. Geen vector-database, geen embedding-pipeline.

Werkt LLM Wiki ook met privé- of vertrouwelijke documenten?

Ja, en dat is een van de sterke punten. De wiki is gewoon een map met markdown-bestanden op je eigen schijf. Wil je het volledig lokaal: gebruik een lokale LLM via Ollama in plaats van Claude of GPT. Wil je de zekerheid van enterprise-policies: Claude Team/Enterprise traint standaard niet op jouw input. Voor consumentenversies altijd de instellingen checken.

Wanneer is LLM Wiki teveel werk voor wat het oplevert?

Als je weinig bronnen hebt (minder dan 10-20 documenten over hetzelfde onderwerp) of als je content zelden gebruikt. Dan is een gewone notitie-app of een directe LLM-chat sneller. LLM Wiki rendeert zodra je over weken of maanden materiaal verzamelt en wilt dat synthese, cross-references en samenvattingen automatisch up-to-date blijven.

Bronnen

Waar deze informatie vandaan komt.

  1. Karpathy gistgist.github.com
  2. hasantoxr op Xtwitter.com