Stel je voor: je neemt een briljante medewerker aan. Slimmer dan wie ook in je team. Maar je geeft geen onboarding, geen procesbeschrijvingen, en geen huisregels. Na een week heeft die medewerker vijf keer het verkeerde bestandsformaat gebruikt, de database-conventies genegeerd, en een email gestuurd in een toon die niet bij je merk past.
Dat is wat er gebeurt als je Claude Code gebruikt zonder configuratie.
In het vorige deel behandelde ik de basis: installatie en de 3-laag structuur. Nu gaan we de diepte in. Hoe schrijf je een CLAUDE.md die echt werkt? Wanneer gebruik je rules? En wat zijn skills — en waarom zijn ze het verschil tussen een tool en een teamlid?
CLAUDE.md schrijven: de onboarding die alles verandert
Je CLAUDE.md is het belangrijkste bestand in je project. Het wordt bij elke sessie geladen en bepaalt hoe Claude Code zich gedraagt. Behandel het als een onboarding-document voor een nieuwe developer.
Wat erin moet staan
1. Wat is dit project? (2-3 zinnen)
Niet een essay. Een korte context zodat Claude begrijpt waar het mee werkt:
## Project
E-commerce platform voor vintage kleding.
Next.js 14 frontend met App Router, Supabase backend, Stripe betalingen.
Doelgroep: vrouwen 25-45 die tweedehands designer merken zoeken.2. Mapstructuur (met beschrijvingen)
Claude Code kan je bestanden lezen, maar een expliciete structuur scheelt het duizenden tokens aan verkenning:
## Mapstructuur
- src/app/ — Next.js pagina's (App Router)
- src/components/ui/ — Herbruikbare UI componenten (Radix UI + Tailwind)
- src/components/features/ — Feature-specifieke componenten
- src/lib/ — Utility functies, Supabase client, Stripe helpers
- src/hooks/ — Custom React hooks
- supabase/migrations/ — Database migraties (NOOIT handmatig bewerken)
- tests/ — Alle tests (NOOIT naast bronbestanden)3. Expliciete regels (do's en don'ts)
Dit is waar de meeste mensen te vaag zijn. Wees letterlijk:
## Regels
- NOOIT inline styles — altijd Tailwind classes
- NOOIT directe Supabase queries in componenten — gebruik src/lib/queries/
- NOOIT console.log in commits — gebruik de logger uit src/lib/logger.ts
- Tests staan ALTIJD in tests/ (niet naast bronbestanden)
- Nieuwe API routes ALTIJD met rate limiting (src/lib/rate-limit.ts)
- Commitberichten in het Engels, in imperatief: "Add feature X" niet "Added feature X"4. Beschikbare commando's
## Development
- `bun dev` — lokale server (NIET npm, wij gebruiken bun)
- `bun test` — tests draaien
- `bun run build` — productie build controleren
- `bunx supabase db push` — migraties toepassenWat er NIET in moet staan
- Wisselende informatie (planning, sprint-details) → gebruik MEMORY.md
- Domeinspecifieke regels → gebruik .claude/rules/
- Herbruikbare workflows → gebruik .claude/skills/
- Secrets of API keys → gebruik .env en settings.json
Het @import systeem
CLAUDE.md ondersteunt imports voor documenten die altijd geladen moeten worden:
@Strategie/02-positionering.md
@Strategie/04-content-strategie.mdIk gebruik dit voor mijn positionering en content-strategie — documenten die bij elke content-taak relevant zijn. Maar wees zuinig: elke import kost context-ruimte. Maximaal 500 regels totaal aan imports.
Let op: @import werkt alleen in CLAUDE.md, niet in rules-bestanden.
Rules: Claude Code configuratie die automatisch wisselt
Rules zijn CLAUDE.md-fragmenten die alleen laden wanneer Claude werkt met bestanden in een specifiek pad. Dit is krachtig omdat je domeinspecifieke regels hebt zonder je hoofdconfiguratie te vervuilen.
Hoe het werkt
Maak een bestand in .claude/rules/ met YAML frontmatter:
---
paths:
- "src/components/**"
- "src/app/**"
---
# Frontend Regels
Alle componenten gebruiken Radix UI als basis.
Styling gebeurt via Tailwind — nooit inline CSS.
Elk component exporteert een type-definitie.
Loading states zijn verplicht voor async componenten.Zodra Claude een bestand in src/components/ aanraakt, laden deze regels automatisch. Werkt het in supabase/migrations/, dan laden ze niet.
Mijn rules-structuur (echt voorbeeld)
Mijn content-workspace heeft 5 rules die automatisch wisselen:
| Bestand | Laadt wanneer | Wat het doet |
|---|---|---|
tone-of-voice.md | Altijd (geen paths) | Vincent's schrijfstijl, verboden zinnen, authority signalen |
content-workflow.md | Altijd (geen paths) | Opslagconventies, werkwijze per content type |
linkedin-rules.md | Content/linkedin/** | Algoritme regels, format-mix, hook formules |
blog-rules.md | Content/blog/** | Frontmatter template, SEO vereisten, categories |
email-rules.md | Content/email/** | MJML standaarden, kleurenschema, naamgeving |
Het resultaat: als ik aan een LinkedIn post werk, kent Claude de LinkedIn-algoritme regels. Werk ik aan een blog, dan kent het de SEO-vereisten en het juiste frontmatter-formaat. Zonder dat ik iets hoef te schakelen.
Universele vs. pad-specifieke rules
Rules zonder paths: in de frontmatter laden altijd — net als content in CLAUDE.md zelf. Gebruik dit voor regels die projectbreed gelden (toon, werkwijze).
Rules met paths: laden alleen wanneer Claude bestanden in die paden aanraakt. Gebruik dit voor domeinspecifieke conventies.
Waarom rules en niet subdirectory CLAUDE.md bestanden?
Je kunt ook CLAUDE.md bestanden in submappen zetten (src/components/CLAUDE.md). Maar die laden alleen als Claude's werkdirectory precies die map is. In de praktijk werk je bijna altijd vanuit de project root — waardoor ze nooit laden. Rules met paths laden zodra Claude een bestand aanraakt dat matcht. Veel betrouwbaarder.
Skills: herbruikbare workflows
Skills zijn het meest onderschatte onderdeel van Claude Code. Een skill is een instructieset die Claude vertelt hoe het een specifieke taak moet aanpakken — van begin tot eind.
Het verschil met rules
- Rules zeggen: "houd je aan deze regels" (passief, context)
- Skills zeggen: "voer deze taak zo uit" (actief, workflow)
Skill-structuur
.claude/skills/
├── blog-writer/
│ ├── SKILL.md — De instructies
│ └── references/ — Optioneel: referentiedocumenten
├── linkedin-writer/
│ └── SKILL.md
└── seo-agent/
└── SKILL.mdEen SKILL.md heeft YAML frontmatter met een name en description. De description bepaalt wanneer Claude de skill automatisch activeert:
---
name: blog-writer
description: >
Write SEO-optimized blog posts for vincentvandeth.nl.
Use whenever the user mentions "blog", "artikel", or "post schrijven".
---
# Blog Writer
Je schrijft blogposts voor vincentvandeth.nl. Volg deze stappen:
1. Bepaal het topic, de doelgroep, en het type (pillar, supporting, how-to)
2. Maak de folder structuur aan
3. Schrijf de complete index.md met frontmatter
4. Voeg image placeholders toe
5. Sla op in Content/blog/drafts/Skills vs. Plugins: het verschil
Dit is een veelgestelde vraag. Het korte antwoord:
| Aspect | Skill | Plugin |
|---|---|---|
| Activering | Automatisch (op basis van description) of via Skill tool | Via slash command (/naam) |
| Locatie | .claude/skills/ in je project | .claude/plugins/ of marketplace |
| Scope | Eén taak of workflow | Kan meerdere skills + commands bevatten |
| Volgorde | Model bepaalt wanneer het past | Gebruiker roept het expliciet aan |
Skills zijn ideaal voor taken die Claude zelfstandig moet herkennen en uitvoeren: "de gebruiker wil een blogpost schrijven → activeer blog-writer skill."
Plugins zijn ideaal voor pipelines met een vaste volgorde: "voer eerst research uit, dan SEO-analyse, dan schrijven, dan validatie." Een plugin bundelt meerdere skills en dwingt de volgorde af via slash commands.
Mijn skills in productie
Ik heb 30+ skills in mijn content-workspace:
Content creatie: blog-writer, linkedin-writer, email-sequence, copywriting, cold-email Strategie: content-strategy, marketing-ideas, pricing-strategy, launch-strategy SEO: seo-agent (keyword research), seo-interlinker (interne links) Research: research-agent (bronnen zoeken via Perplexity + Brave Search) Data: audience-intelligence (live Supabase queries voor doelgroep-inzichten) Publicatie: blog-publisher (Git pipeline), blog-images (visuals maken)
Elke skill is getest en geëvalueerd met de Skill Creator plugin. Daarover meer in deel 4.

Alles samenvoegen: een echt project configureren
Hier is hoe je een nieuw project in 15 minuten configureert:
Stap 1: Maak CLAUDE.md in je project root
touch CLAUDE.mdBeschrijf: wat is het project, mapstructuur, conventies, commando's.
Stap 2: Maak de rules directory
mkdir -p .claude/rulesMaak 1-2 domeinspecifieke rules voor je belangrijkste werkgebieden.
Stap 3: Maak je eerste skill
mkdir -p .claude/skills/mijn-eerste-skillBeschrijf een taak die je regelmatig uitvoert. Wees specifiek over de stappen.
Stap 4: Configureer settings
# .claude/settings.json
{
"permissions": {
"allow": ["Read", "Write", "Edit"]
}
}Stap 5: Start Claude Code en test
claudeGeef het een taak en kijk of het je regels volgt. Verfijn waar nodig.
De investering die zich terugbetaalt
Een goede CLAUDE.md schrijven kost je een uur. Rules en skills opzetten nog een uur. Maar die twee uur besparen je tientallen uren per week aan:
- Context opnieuw uitleggen bij elke sessie
- Fouten corrigeren die regels hadden voorkomen
- Workflows handmatig herhalen die een skill automatiseert
Na een week merkt je het verschil. Na een maand vraag je je af hoe je ooit zonder hebt gewerkt.
Volgende stap
In deel 4 leer je hoe je je skills niet alleen schrijft, maar ook evalueert en meetbaar verbetert — met de Skill Creator plugin.
- Deel 1: Van ChatGPT naar AI Agent
- Deel 2: Claude Code Instellen
- Deel 4: AI Skills Evalueren met de Skill Creator Plugin
- Deel 5: Mijn AI Development Stack
Wil je dit niet zelf uitzoeken? Plan een kennismakingsgesprek — ik configureer Claude Code voor jouw bedrijfsproces en draag de kennis over aan je team.
Vincent van Deth
AI Strategy & Architecture
Met jarenlange ervaring in marketingstrategie en AI-architectuur help ik bedrijven om hun groeipotentieel te maximaliseren met data-gedreven inzichten en AI-automatisering.
Mijn expertise ligt in het ontwerpen van AI-agent workflows, het strategisch inzetten van multi-agent systemen en het verbeteren van processen door schaalbare, auditeerbare oplossingen.
Of het nu gaat om het verfijnen van je AI-strategie, het selecteren van de juiste modellen of het implementeren van governance voor AI-gestuurde processen — ik bied maatwerkadvies dat leidt tot meetbare resultaten.