Claude Code autonoom laten werken: de complete gids

Leer hoe je Claude Code volledig autonoom laat werken met AFK-modus en de Ralph Wiggum plugin — zodat de AI doorwerkt terwijl jij weg bent.

Erik van de Blaak
Erik van de Blaak
8 min leestijd 111 weergaven
Claude Code autonoom laten werken: de complete gids

Stel je voor dat je Claude Code een complexe taak geeft, je laptop dichtklapt, gaat slapen — en de volgende ochtend wakker wordt met een volledig werkende codebase. Geen pauzes, geen vragen, geen half werk. Dat is precies wat er mogelijk is als je AFK-modus combineert met de Ralph Wiggum plugin. Twee technieken die samen van Claude Code een volledig autonome ontwikkelassistent maken.

In dit artikel leg ik uit wat beide technieken zijn, hoe ze werken, waarom ze zo krachtig zijn — en hoe je ze vandaag nog inzet.


Het probleem: Claude stopt te vaak

Standaard heeft Claude Code twee gedragingen die AFK-gebruik onmogelijk maken:

  1. Hij vraagt constant toestemming. Wil hij een bestand aanpassen? Pauze. Een commando uitvoeren? Pauze. Je komt terug en Claude staat al een uur te wachten op Enter.
  2. Hij stopt te vroeg. Claude denkt dat hij klaar is, maar de tests falen nog, de code heeft nog bugs, of de taak is maar halfaf. Hij stopt en wacht op een nieuwe opdracht van jou.

De combinatie van deze twee problemen maakt het praktisch onmogelijk om Claude onbeheerd te laten werken. Tot nu.


Oplossing 1 — AFK-modus: Claude die niet pauzeert

AFK staat voor Away From Keyboard — letterlijk "weg van het toetsenbord". De AFK-modus zorgt ervoor dat Claude geen toestemming vraagt voor zijn acties en gewoon doorgaat zonder op jou te wachten. Dit doe je met drie tools tegelijk.


De vlag: --dangerously-skip-permissions

Dit is de belangrijkste instelling voor AFK-gebruik. De naam klinkt eng — en dat is bewust. Het vertelt je dat je Claude vertrouwt met je bestanden, zonder tussenkomst van jou. Claude kan hiermee zonder te vragen bestanden aanmaken, aanpassen of verwijderen.

Gebruik dit altijd in een afgebakende projectmap, nooit als root-gebruiker, en nooit op een systeem met gevoelige productiedata.

# Basis gebruik — Claude vraagt niets, werkt gewoon door
claude --dangerously-skip-permissions "bouw de login module af"

# Met logging — bewaar alles wat Claude doet
claude --dangerously-skip-permissions "schrijf unit tests" | tee claude-output.log


tmux — zodat je sessie blijft leven

Zelfs met de juiste vlaggen stopt alles als je de verbinding verbreekt of je laptop dichtklapt. tmux is de oplossing. Het is een programma dat je terminal "los" koppelt van jou — de sessie blijft draaien op de achtergrond, ook als je de verbinding verbreekt. Vergelijk het met een kamer waar het licht aanbleef, ook als jij er niet meer bent.

# Stap 1 — Start een nieuwe sessie met een naam
tmux new -s claude-sessie

# Stap 2 — Start Claude in die sessie
claude --dangerously-skip-permissions "bouw het dashboard component af"

# Stap 3 — Loskoppelen: Ctrl+B, daarna D
# Claude werkt nu door op de achtergrond

# Stap 4 — Later terugkeren
tmux attach -t claude-sessie


CLAUDE.md — Claudes instructiehandboek

Hoe meer Claude weet over jouw project, hoe minder hij vastloopt op onduidelijkheden. Een CLAUDE.md bestand in de root van je project is een instructiedocument dat Claude automatisch leest bij de start van elke sessie. Zie het als een briefing die je aan een nieuwe collega geeft: wat mag hij, wat niet, hoe werkt het project, en wat zijn de conventies?

# CLAUDE.md — Projectinstructies voor Claude

## Stack
- Backend: PHP (Laravel 11)
- Frontend: React + Vite
- Database: MySQL 8

## Wat mag Claude zelfstandig doen?
- Bestanden aanmaken en aanpassen in /app en /resources
- Composer packages installeren
- Migrations aanmaken

## Wat mag Claude NIET doen?
- .env aanpassen
- Database droppen of truncaten
- Code pushen naar git


Oplossing 2 — Ralph Wiggum: Claude die niet stopt

AFK-modus zorgt dat Claude niet pauzeert voor toestemming. Maar er blijft een tweede probleem: Claude stopt te vroeg. De Ralph Wiggum plugin lost dit op door een zelfherhalende lus te creëren. Claude werkt aan een taak, probeert te stoppen — maar wordt automatisch teruggestuurd om verder te gaan, totdat de taak écht klaar is.


Waarom heet het "Ralph Wiggum"?

Ralph Wiggum is een personage uit The Simpsons, bekend om zijn vrolijke doorzettingsvermogen ondanks tegenslagen. De techniek werd bedacht door ontwikkelaar Geoffrey Huntley, die het omschreef als: "Ralph is a Bash loop" — een simpele while true die een AI steeds opnieuw dezelfde opdracht geeft totdat het werk klaar is.


Hoe werkt de loop?

Het principe is even simpel als briljant:

  1. Jij geeft één keer een opdracht via /ralph-loop
  2. Claude werkt aan de taak
  3. Claude probeert te stoppen
  4. De Stop Hook onderschept dat en stuurt dezelfde opdracht opnieuw
  5. Claude ziet zijn eigen vorige werk (bestanden + git history) en verbetert het
  6. Herhaal totdat de taak klaar is — dan stopt de loop vanzelf

Het slimme zit in de Stop Hook — een script dat het exacte moment onderschept waarop Claude de sessie wil beëindigen. In plaats van stoppen, stuurt de hook Claude terug naar het begin met dezelfde prompt. Maar Claude is niet blind: hij ziet de bestanden die al zijn aangemaakt en de git-history van vorige iteraties. Elke ronde is hij dus slimmer dan de vorige.


De commando's

# Start een loop
/ralph-loop "[jouw taakomschrijving]" \
  --completion-promise "COMPLETE" \
  --max-iterations 50

# Loop annuleren als je tussentijds wil stoppen
/cancel-ralph

De parameter --completion-promise is de exacte tekst die Claude moet uitvoeren als de taak klaar is. De parameter --max-iterations stopt de loop na maximaal N pogingen — dit is je veiligheidsnet bij onmogelijke taken. Stel dit altijd in.


Hoe schrijf je een goede prompt?

Dit is de meest bepalende vaardigheid bij Ralph. Een vage prompt leidt tot een vage uitkomst — of een oneindige loop. Vergelijk het zelf:

Slecht — te vaag:

"Bouw een todo API en maak het goed."

Goed — helder en meetbaar:

Bouw een REST API voor todos. Wanneer klaar:
- Alle CRUD endpoints werken (GET, POST, PUT, DELETE)
- Input validatie aanwezig op alle endpoints
- Tests slagen (coverage > 80%)
- README met API documentatie aanwezig

Output <promise>COMPLETE</promise> als aan alle criteria is voldaan.

Slecht — te groot in één keer:

"Bouw een compleet e-commerce platform."

Goed — gefaseerde aanpak:

Fase 1: Gebruikersauthenticatie (JWT, registratie, login, tests)
Fase 2: Productcatalogus (lijst, zoeken, detail, tests)
Fase 3: Winkelwagen (toevoegen, verwijderen, afrekenen, tests)

Werk fase voor fase. Begin pas met fase 2 als fase 1 volledig klaar is.
Output <promise>COMPLETE</promise> als alle drie de fases klaar zijn.


De combinatie: AFK + Ralph = volledig autonoom

Afzonderlijk zijn AFK-modus en Ralph Wiggum al krachtig. Samen zijn ze ongekend. Ze lossen elk een ander probleem op en versterken elkaar perfect:

  • AFK-modus zorgt dat Claude niet pauzeert voor toestemming
  • Ralph Wiggum zorgt dat Claude niet stopt totdat de taak écht klaar is
  • tmux zorgt dat de sessie blijft leven ook als jij weg bent
  • CLAUDE.md zorgt dat Claude de context en conventies kent

Dit is de complete workflow voor een volledig onbeheerde Claude-sessie:

# Stap 1 — Ga naar je projectmap (zorg dat CLAUDE.md aanwezig is)
cd ~/projects/mijn-app

# Stap 2 — Start een tmux-sessie zodat alles blijft draaien
tmux new -s ralph-werk

# Stap 3 — Start Claude met AFK-vlag + Ralph loop + logging
claude --dangerously-skip-permissions \
  '/ralph-loop "Bouw de volledige auth module af.
  Requirements:
  - JWT authenticatie (login, registratie, refresh token)
  - Wachtwoord reset via e-mail
  - Tests met coverage > 80%
  - Volg de conventies in CLAUDE.md
  Output <promise>COMPLETE</promise> als alles klaar en getest is."
  --completion-promise "COMPLETE"
  --max-iterations 30' | tee claude-output.log

# Stap 4 — Koppel los en ga weg (Ctrl+B → D)

# Stap 5 — Later: bekijk wat er is gedaan
tmux attach -t ralph-werk

Je geeft het één keer op, gaat weg, en Claude werkt aan de taak — vraagt nergens toestemming voor — blijft zichzelf verbeteren en herhalen — en stopt vanzelf als het klaar is.


Bewezen resultaten

Ralph Wiggum is niet alleen theorie. De techniek is uitgebreid getest in echte productiesituaties:

  • 6 repositories in één nacht gegenereerd tijdens een Y Combinator hackathon
  • Een $50.000 contract afgerond voor slechts $297 aan API-kosten
  • Een complete programmeertaal ("cursed") ontwikkeld over 3 maanden via iteratieve loops


De gouden regels

  1. Wees zo specifiek mogelijk in je taakomschrijving. Vaagheid leidt tot stilstand of verkeerde aannames. Geef Claude meetbare succescriteria.
  2. Gebruik altijd een CLAUDE.md. Zonder context maakt Claude aannames die jij misschien niet wil. Met CLAUDE.md werkt hij binnen jouw kaders.
  3. Stel altijd --max-iterations in. Zelfs de beste prompts kunnen leiden tot een oneindige loop als de taak onmogelijk blijkt. Max-iterations is je veiligheidsnet.
  4. Log altijd wat Claude doet. Gebruik | tee output.log zodat je achteraf precies kunt lezen wat er is gebeurd, ook al was je er niet bij.
  5. Controleer het werk als je terugkomt. Claude is krachtig, maar niet onfeilbaar. Review altijd de code die hij heeft geschreven voordat je het deployt of pusht.


Conclusie

De combinatie van AFK-modus en de Ralph Wiggum plugin markeert een verschuiving in hoe je met Claude Code werkt. Niet langer een assistent die om je aandacht vraagt, maar een autonome developer die doorwerkt zolang er werk te doen is. Of je nu 's avonds een feature wil laten bouwen terwijl je slaapt, of overdag een grote refactoring wil doorvoeren terwijl je vergadert: met deze setup geef je de opdracht één keer, en Claude zorgt voor de rest.

De enige vaardigheid die ertoe doet? Een goede prompt schrijven. De rest doet de loop.

Deel dit artikel

Reacties (0)

Laat een reactie achter

Wordt niet gepubliceerd

Je reactie wordt gecontroleerd voordat deze zichtbaar wordt.

Nog geen reacties. Wees de eerste!