Ga naar hoofdinhoud

Code Review met Claude Code: Bugs onderscheppen vóór productie

Een praktische gids voor het reviewen van Python data science-pull requests met Claude Code, GitHub en ultrareview.
Bijgewerkt 14 sep 2026  · 15 min lezen

Verkennen met AI

ChatGPTClaudePerplexity

Een pull request (PR) kan er prima uitzien en toch een bug bevatten die de uitkomsten van businessmetrics verandert. Stel, je voegt een script weekly_revenue.py toe om omzet te berekenen uit een orders-tabel. De code is netjes, de tests slagen en de PR telt maar 40 regels. Je PR triggert Claude om de code te reviewen, en het ziet dat de nieuwe aggregatie een onjuiste join naar de customer-tabel gebruikt, waardoor orders stilzwijgend worden gedupliceerd en de wekelijkse omzet wordt overschat.

Dat is de usecase die ik belangrijk vind met Claude Code Review. Het draait meerdere review-agents op een PR, bekijkt de repo, verifieert bevindingen tegen daadwerkelijk codegedrag en rapporteert issues als inline GitHub-comments. De primaire focus ligt op correctheid, security, edge cases en regressies, niet op formatteringsvoorkeuren of diepe contextuele kennis.

In deze gids loop ik dezelfde kleine Python-datasectie na op 3 plekken: een lokale /code-review, GitHub Code Review en de cloudgebaseerde /code-review ultra (die je misschien kent onder de oorspronkelijke naam /ultrareview). Ik besteed ook tijd aan de vraag of Claude’s bevinding daadwerkelijk klopt.

Als je nieuw bent met Claude Code, begin dan met onze Claude Code-tutorial, die installatie en basisworkflows behandelt voordat we op reviews ingaan. Een andere goede bron is onze gids met best practices voor Claude Code.

TL;DR

  • Claude Code Review is een reviewer, geen merge-poort. De GitHub check run is neutraal, dus een mens of een ander CI-proces beslist nog steeds of de PR wordt gemerged.

  • Gebruik /code-review vóórdat je een PR opent. Het reviewt je lokale branch en ongecommitete wijzigingen zonder dat de GitHub App nodig is.

  • Gebruik GitHub Code Review wanneer je organisatie reviews direct aan PR’s wil koppelen. Dit is momenteel een Team- en Enterprise-onderzoekspreview en kost gemiddeld $15–$25 per review.

  • Gebruik /code-review ultra voor een diepere pre-merge-pass. Het stuurt de review naar een externe sandbox met meerdere agents die gemelde bugs onafhankelijk reproduceren en verifiëren. Pro- en Max-accounts krijgen eenmalig 3 gratis runs, daarna worden reviews afgerekend via gebruikstegoeden.

  • De businesslogica blijft jouw verantwoordelijkheid. Claude kan verdachte joins en ontbrekende filters aanwijzen, maar jij moet weten of het schema het juiste business-granulatieniveau vertegenwoordigt.

Wat is Claude Code Review?

Claude Code Review is een multi-agent code-reviewsysteem dat een PR in de context van de repo bekijkt en mogelijke bugs, beveiligingsissues en regressies rapporteert. GitHub Code Review draait die agents op een GitHub-PR, terwijl lokale /code-review je direct vanuit Claude Code een review geeft op je huidige diff.

Het sleutelwoord is context. Een conventionele diff-review vraagt iemand de gewijzigde regels te inspecteren. Claude’s review-agents bekijken die wijzigingen in de context van de repo. De GitHub-workflow heeft meerdere gespecialiseerde agents die parallel werken, gevolgd door verificatie, deduplicatie en ernstclassificatie.

Een wijziging van 10 regels in een pandas-transformatie kan bijvoorbeeld afhangen van het schema dat upstream door een dbt-model is gemaakt, de granulariteit van een Snowflake-tabel en aannames in een downstream-dashboard.

Claude keurt een PR niet goed en blokkeert ‘m ook niet. GitHub Code Review rapporteert een neutrale check-conclusie, dus je bestaande branch-protection-regels blijven ongewijzigd tenzij je eigen CI-logic bouwt rond de check-output.

Drie review-oppervlakken

Er zijn momenteel 3 hoofdmanieren om code te reviewen met Claude Code.

Review-oppervlak

Waar het draait

Beste gebruik

Huidige beschikbaarheid

/code-review

Je Claude Code-sessie

Snel feedback tijdens ontwikkelen

Beschikbaar op elk betaald plan

GitHub Code Review

Anthropic-infrastructuur

Geautomatiseerde PR-review met inline comments

Team- en Enterprise-onderzoekspreview (niet beschikbaar met Zero Data Retention)

/code-review ultra

Externe cloud-sandbox

Diepere pre-merge-review

Onderzoekspreview, authenticatie via claude.ai vereist

De lokale /code-review-opdracht bekijkt de commits op je branch. Je kunt ook een specifiek bestand, branch, PR-nummer of Git ref-range opgeven.

GitHub Code Review is ingericht rond de PR zelf. Afhankelijk van de repo-configuratie kan het één keer reviewen na het aanmaken van de PR, na elke push, of alleen wanneer iemand een review aanvraagt met @claude review.

/code-review ultra is de zwaardere optie. Anthropic noemt de feature ultrareview, en /ultrareview werkt als alias wanneer de feature voor je account beschikbaar is. Het draait een vloot reviewer-agents in een externe sandbox, waarbij elke gemelde bug wordt gereproduceerd en geverifieerd voordat die in de bevindingen verschijnt. Dit is momenteel een onderzoekspreview en een typische review duurt zo’n 5 tot 10 minuten.

Wat Claude markeert vs. wat het overslaat

Claude Code Review focust eerst op correctheid. De documentatie van Anthropic onderscheidt expliciet productie-impactvolle bugs van formatteringsvoorkeuren en ontbrekende testdekking.

De bevindingen gebruiken 3 ernstniveaus:

Ernst

Betekenis

Voorbeeld datapijplijn

🔴 Belangrijk

Een bug die je moet fixen vóór het mergen

Orders op het verkeerde niveau joinen en omzet dupliceren

🟡 Nit

Een klein issue dat het fixen waard is, maar de PR niet blokkeert

Een verwarrende variabelenaam, zoals df2

🟣 Bestaand

Een bug die al bestond vóór de huidige PR

Een bestaande helper die een customer-identifier blootlegt

Dat onderscheid is nuttig omdat data scientists vaak sterk uiteenlopende meningen hebben over wat reviewtijd verdient. Een naamsuggestie over revenue_df versus weekly_revenue valt niet in dezelfde categorie als omzet keer 2 doen omdat een many-to-many-join in een transformatie is geslopen.

Hoe stel je Code Review in binnen Claude Code?

Het instellen van Claude Code Review vraagt verschillende stappen, afhankelijk van of je lokaal wilt reviewen of een GitHub PR-code-review wilt. Lokale /code-review heeft de GitHub App niet nodig en kan zelfs voordat je een PR opent.

Voor GitHub Code Review moet een Owner of Primary Owner van de organisatie de Claude GitHub App configureren en repo’s selecteren. Bij PR-reviews wil je ook een gespecialiseerd bestand REVIEW.md maken met specifieke, alleen-voor-review-regels.

CLAUDE.md vs. REVIEW.md

CLAUDE.md en REVIEW.md hebben verschillende doelen, en ze door elkaar gebruiken is een makkelijke manier om rumoerige reviews te creëren.

CLAUDE.md bevat algemene projectinstructies die Claude over taken heen gebruikt. Code review leest die instructies ook, en nieuw geïntroduceerde overtredingen worden als nits gerapporteerd. REVIEW.md daarentegen is specifiek voor reviewgedrag en vertelt de review-agents wat je team gemarkeerd, overgeslagen of als Belangrijk behandeld wil zien.

Voor een Python-datarepo zou ik CLAUDE.md toespitsen op zaken als de repo-structuur, hoe je pytest draait, of transformaties pandas of polars gebruiken, en waar SQL-modellen leven.

Reviewregels zou ik in REVIEW.md zetten. Enkele voorbeelden van mogelijke regels:

  • “Controleer elke nieuwe transformatie op een bijbehorende test.”
  • “Nooit credentials loggen."
  • “Sla gegenereerde bestanden over.”

Een kleine REVIEW.md kan er zo uitzien:

# Review instructions

## Important findings

Report as Important:
- Incorrect joins or filters that can change dataset grain
- Missing tenant or customer scoping
- Secrets or credentials written to logs
- Silent changes to revenue or customer metrics

## Do not report
- Formatting already enforced by Ruff
- Generated files
- *.lock files

## Always check
- New transformations have tests
- Joins use the intended keys
- Datetime operations specify timezone assumptions
- Missing values are handled explicitly

Ik raad aan je REVIEW.md gefocust te houden, omdat lange instructies belangrijke regels kunnen verwateren. De huidige implementatie leest het bestand ook als platte instructies, dus je moet regels direct erin zetten in plaats van de @-snelkoppeling te gebruiken.

Trouwens, tijdens lokaal ontwikkelen leest /code-review geen REVIEW.md. Het volgt CLAUDE.md, terwijl de GitHub Code Review-pipeline REVIEW.md gebruikt voor review-specifieke instructies.

Wil je dezelfde reviewregels lokaal en in GitHub, zet de algemene regels in CLAUDE.md en herhaal de review-specifieke regels waar nodig in REVIEW.md.

Voor meer diepgang raad ik aan onze gids voor het schrijven van de beste CLAUDE.md te lezen.

GitHub App en trigger-modus

GitHub Code Review wordt geconfigureerd door een Owner of Primary Owner van de organisatie via de admin-instellingen van Claude. De admin moet de Claude GitHub App installeren, repo-toegang verlenen, de te reviewen repo’s selecteren en vervolgens per repo een reviewgedrag toewijzen.

Er zijn 3 verschillende trigger-modi:

Trigger

Gedrag

Kostengevolg

Eenmalig na PR-creatie

Reviewt wanneer de PR opent of gereed komt

Één review per PR

Na elke push

Reviewt elke nieuwe push

Hoogste reviewfrequentie en -kosten

Handmatig

Draait alleen op verzoek

Je bepaalt wanneer reviews gebruik verbruiken

Eén uitzondering op alle 3: Claude reviewt nooit automatisch een pull request vanaf een fork. Iemand moet @claude review posten.

Sinds de update van juli 2026 zijn de handmatige commands ook veranderd: 

  • @claude review start één review en abonneert de PR niet op toekomstige pushes.

  • @claude review always start een review en abonneert de PR op toekomstige push-getriggerde reviews.

  • @claude review once gedraagt zich hetzelfde als het kale command.

Als je Claude Code Review eerder in 2026 hebt geleerd, konden oudere tutorials zeggen dat @claude review de PR op toekomstige reviews abonneert, maar dat gedrag is in juli 2026 veranderd en is nog steeds zo in september 2026.

Pro- en Max-gebruikers die geen toegang hebben tot de GitHub Code Review van de organisatie kunnen de App volledig overslaan en /code-review lokaal gebruiken, met /code-review ultra voor een diepere review.

Hoe review je lokaal een diff met /code-review?

De lokale /code-review-opdracht reviewt je huidige branch vóórdat je een PR opent. Ik begin hier altijd mee, omdat het problemen vangt terwijl ik nog bezig ben en mislukte CI kan voorkomen.

De casus om te reviewen

Stel, we hebben een e-commerce-repo met een orders-tabel met order_id, customer_id, order_date, status en revenue, en we maken weekly_revenue.py om de wekelijkse omzet te berekenen:

orders = load_orders()
customers = load_customers()

# Derive the reporting week from the order date
orders["week"] = orders["order_date"].dt.to_period("W").dt.start_time

weekly_revenue = (
    orders
    .merge(customers, on="customer_id", how="inner")
    .groupby("week", as_index=False)["revenue"]
    .sum()
)

Op het eerste gezicht ziet niets er vreemd uit. De merge() is expliciet, de groepering is leesbaar en omzet wordt na de join geaggregeerd.

Het probleem is dat de customer-tabel voor sommige klanten meerdere historische records bevat. Een klant met 2 records levert na de join nu 2 rijen op, waardoor de aan die klant gekoppelde omzet wordt verdubbeld. Dit is precies het soort bug dat je lokaal makkelijk mist als je de transformatie leest zonder de granulariteit van de tabel te checken.

Beperk de diff

Draai vanuit je Claude Code-sessie /code-review.

De opdracht reviewt de commits van de huidige branch die voorlopen op de upstream-branch, samen met ongecommitete wijzigingen. Je kunt ook een specifiek bestand, branch, PR of range targeten, zoals main...feature/weekly-revenue.

Bijvoorbeeld:

/code-review weekly_revenue.py

of:

/code-review main...feature/weekly-revenue

Je kunt ook een effortniveau meegeven, zoals /code-review high. Bij low en medium rapporteert de review alleen de bevindingen waar het het meest zeker van is, terwijl high tot en met max de dekking uitbreidt ten koste van mogelijk meer false positives. 

Gebruik flags om de review te sturen

Als je eenmaal gewend bent aan de workflow, worden twee flags handig: 

  • --fix past de bevindingen toe op je working tree na de review.

  • --comment plaatst ze als inline comments.

Claude draait de review als een subagent op de achtergrond, zodat je kunt doorwerken terwijl de wijziging wordt verwerkt. De bevindingen komen terug in je sessie zodra de review klaar is.

De review kan zoiets rapporteren als:

🔴 Important
weekly_revenue.py:9

The merge on customer_id can duplicate order rows because
customers contains multiple records per customer. This can
inflate revenue when a customer has more than one matching
customer record.

Verify that customer_id is unique in customers or join against
the intended current-record subset before aggregating revenue.

De review vond een concreet faalpatroon en geeft me iets dat ik kan verifiëren tegen het daadwerkelijke schema, in plaats van me te vragen Claude op z’n woord te geloven.

Lees de bevindingen

Ik zou alsnog alles handmatig nalopen voordat ik /code-review --fix draai. Zoek eerst de code die customers opbouwt, inspecteer de uniekheidsconstraints en bekijk de tests rond weekly_revenue.py.

Als customers.customer_id echt uniek is, is Claude’s bevinding een false positive. Als de tabel één rij per klant per ingangsdatum bevat, is de bevinding reëel en moet de transformatie worden aangepast.

Het kernpunt is dat Claude’s reviewer naar codegedrag kijkt, terwijl ik verantwoordelijk blijf voor wat de data vertegenwoordigt.

Je kunt Claude na de review laten onderzoeken:

Investigate the customer_id join finding.
Check how the customers table is built and determine whether
customer_id is unique at the point of this merge. Do not modify
the code yet.

Die tweede stap is vaak nuttiger dan Claude blind de comment laten fixen. Het maakt van de review een korte onderzoeksronde in plaats van een codegeneratie-oefening.

Hoe draai je Claude Code Review op een GitHub-PR?

GitHub Code Review zet Claude’s bevindingen direct op de PR, zodat reviewers het issue naast de gewijzigde code zien.

De volgorde doet ertoe, omdat de review zich hecht aan een PR die al bestaat:

  1. Push de weekly-revenue-branch naar GitHub via git push.

  2. Open de pull request. Claude kan alleen een open PR reviewen, dus vóór dit punt gebeurt niets.

  3. Als de repo op een automatische trigger staat, start de review vanzelf. Staat deze op Handmatig, plaats dan @claude review als top-level PR-comment om te starten.

Drie vereisten gaan hier vaak mis. Het command moet een top-level PR-comment zijn in plaats van een reply op een inline review-comment, en je hebt schrijf-, onderhouds- of adminrechten op de repo nodig. Het command moet ook de comment beginnen, met once of always op dezelfde regel als ze worden toegevoegd.

Trigger de review

De keuze die je daadwerkelijk geld kost, is die tussen de twee handmatige commands, niet tussen handmatig en automatisch.

@claude review draait één review en laat de PR niet geabonneerd. @claude review always draait een review en abonneert op de PR, zodat elke latere push een nieuwe start.

Dit is het gedrag na juli 2026 en in september 2026. Vóór die update abonneerde het kale @claude review-command de PR op toekomstige reviews, dus als je een oudere tutorial volgt, check dit eerst.

De review duurt vaak zo’n 20 minuten, al zegt Anthropic dat kosten en duur afhangen van de grootte en complexiteit van de PR. Elke review wordt ook afzonderlijk afgerekend via gebruikstegoeden en gaat niet af van het inbegrepen gebruik van het Team- of Enterprise-plan. Wil je meer weten over de kostenstructuur, lees dan onze gids over gebruikslimieten van Claude Code.

Lees de inline comments en de check run

Wanneer de review klaar is, plaatst Claude inline comments op de relevante regels. De GitHub check run bevat ook een samenvatting per ernst, wat handig is wanneer een PR meerdere bevindingen heeft in weekly_revenue.py, SQL-modellen en testbestanden.

Bijvoorbeeld:

Ernst

Bestand

Bevinding

🔴 Belangrijk

weekly_revenue.py:9

Join kan order-rijen dupliceren

🟡 Nit

weekly_revenue.py:12

Variabelenaam beschrijft het aggregatieniveau niet

🟣 Bestaand

utils/dates.py:42

Bestaande timezone-aanname

De inline comment is waar ik het daadwerkelijke issue zou onderzoeken. De check run is waar ik het algemene beeld van de review zou halen.

Let op: op 👍 of 👎 klikken triggert geen nieuwe review, en op een inline comment reageren zorgt niet dat Claude antwoordt. Voor een nieuwe review: fix de code en push, of post @claude review als een nieuwe top-level PR-comment.

De review blokkeert het mergen ook niet uit zichzelf. De check geeft een neutrale conclusie, al bevat de check-output machineleesbare ernstinformatie die een team via gh en jq kan gebruiken om een eigen merge-poort te bouwen.

Hoe triageer je Claude’s reviewcomments?

Het draait erom de mens in the loop te houden tijdens de reviewcyclus. Dit betekent dat elke Claude-review vereist dat je bepaalt of elke bevinding een echte bug is, een niet-blokkerende verbetering, of een false positive. Een code-reviewer kan immers implementatiegedrag inspecteren zonder elke businessaanname achter een dataset of metric te kennen.

Ik gebruik een eenvoudige driesprong:

Beslissing

Wanneer

Voorbeeld

Fixen

De bevinding is echt en verandert de output

De customer-join dupliceert order-rijen

Overslaan

Reëel maar niet blokkerend

Een nit over het hernoemen van df2

Tegenspreken

Reëel maar niet blokkerend

customer_id is upstream echt uniek

Die laatste categorie is belangrijk. Een reviewer die 30 bevindingen rapporteert, is niet per se beter dan iemand met 5. Een false-positive comment over een pandas-merge kan meer tijd kosten dan de oorspronkelijke codewijziging.

Fixen, overslaan of tegenspreken

Als de bug met gedupliceerde customer-rijen echt is, kan ik Claude vragen het upstream-model te inspecteren en dan de volgende fix te doen:

The customer_id finding is valid. Inspect the existing customer
model and update weekly_revenue.py to join only the current
customer record. Add a regression test for a customer with
multiple historical records, then run the relevant tests.

Claude kan vervolgens de repo inspecteren, de Python-code aanpassen, de test toevoegen en de testsuite draaien.

Als je vanuit GitHub-reviewcomments wilt werken, kan Claude Code ook via de GitHub CLI (gh) met de repo interageren. Het belangrijkste onderscheid: kies de specifieke fixes die je geldig vindt, in plaats van de hele review te geven om “alles te fixen”.

Zo blijven developers in de reviewloop:

  1. Claude vindt een mogelijk probleem.
  2. Ik verifieer het probleem tegen code en data-aannames.
  3. Claude maakt de gevraagde fix.
  4. Tests draaien.
  5. Claude reviewt de resulterende diff opnieuw.

Die loop is veel veiliger dan de eerste reviewoutput behandelen als een geautomatiseerde refactoringsqueue.

Waar is bij een data-PR nog een mens voor nodig?

De faalmodus die Claude niet dekt, is code die correct draait en toch het verkeerde doet. Drie versies daarvan zie je steeds terug:

  • Aannames buiten de diff. Claude leest je repo, niet je datawarehouse, je configservice of het contract van een ander team. Een join kan de juiste keys gebruiken en toch de granulariteit van het resultaat veranderen, omdat het aantal rijen per key een eigenschap is van de upstream-tabel, niet van de code ervoor.

  • Definities die alleen je team kent. Of omzet op order-, klant- of weekniveau telt, is een businessbeslissing. Claude kan je vertellen dat een groupby() vrolijk optelt wat het krijgt. Het kan je niet vertellen welk getal je finance-team accordeert.

  • Tijd- en typeaannames. Betekent 2026-08-27 een UTC-dag, een lokale werkdag of een rapportagedatum ingesteld door een upstream-model? Stille coercion heeft hetzelfde patroon: operaties over object-, nullable integer-, timezone-aware datetime- en stringkolommen kunnen iets plausibels teruggeven terwijl ze stilletjes veranderen hoe vergelijkingen werken.

Data leakage is het scherpste voorbeeld van de eerste categorie. Een featuretransformatie kan een trainingsset joinen met een tabel die informatie bevat die pas ná de predictiedatum bestond. De join is geldig, het aantal rijen is wat je verwachtte, en het model is vervuild.

Daarom behandel ik Claude als reviewer van implementatiegedrag, niet als eigenaar van de definitie.

Wanneer gebruik je Code Review versus Ultrareview?

Gebruik /code-review voor snel lokaal feedback en /code-review ultra voor een diepere pre-merge-pass. Beide reviewen code, maar /code-review is ontworpen voor iteratie, terwijl de ultra-review meerdere externe agents draait en gemelde bugs onafhankelijk verifieert.

 

/code-review

/code-review ultra

Locatie

Lokale Claude Code-sessie

Externe cloud-sandbox

Reviewstijl

Enkele lokale reviewworkflow

Multi-agent-review met onafhankelijke verificatie

Typische duur

Seconden tot enkele minuten

Ongeveer 5 tot 10 minuten

Kosten

Normaal Claude Code-gebruik

3 gratis Pro/Max-runs, daarna $5 tot $25 aan gebruikstegoeden

Beste fase

Tijdens het ontwikkelen

Vóór het mergen van substantiële wijzigingen

GitHub PR

Kan een PR targeten

Kan een PR op nummer reviewen

Authenticatie

Authenticatie van Claude Code

claude.ai-account vereist

Anthropic beschrijft ultra-review momenteel als een onderzoekspreview. Pro- en Max-abonnees krijgen eenmalig 3 gratis runs die niet verversen, waarna een review doorgaans $5 tot $25 kost, afhankelijk van de omvang van de wijziging. Team- en Enterprise-gebruikers krijgen die gratis runs niet, en de feature is niet beschikbaar op Amazon Bedrock, Google Cloud’s Agent Platform, Microsoft Foundry, en voor organisaties met Zero Data Retention ingeschakeld.

Het belangrijke verschil is verificatie. /code-review ultra stuurt de repo-status naar een externe sandbox en draait een vloot reviewer-agents, waarbij gemelde bugs onafhankelijk worden gereproduceerd voordat ze als bevinding worden teruggestuurd.

Ik zou dit niet op elke commit draaien. Als ik een variabelenaam verander in een Python-notebook of de opmaak van een dbt-model aanpas, is een lokale /code-review ruim voldoende. Als ik de featuregeneratielogica voor een productiemodel wijzig, een omzettransformatie herschrijf of een aggregatie op klantniveau aanpas, is de extra reviewpass logischer.

Er is ook een naamgevingsdetail dat je goed wilt doen. Het gedocumenteerde command is /code-review ultra, en /ultrareview is een alias die werkt wanneer ultrareview voor je account beschikbaar is. Oudere tutorials presenteren /ultrareview vaak als primair command, maar de documentatie van Anthropic ziet de diepe cloudreview nu als onderdeel van de /code-review-commandfamilie, en /code-review ultra valt terug op een lokale review wanneer de cloudfeature niet beschikbaar is.

Draai de ultra-review op dezelfde PR

Draai vanuit de repo:

/code-review ultra

Om direct een GitHub-PR te reviewen:

/code-review ultra <pr#>

Zonder argument vergelijkt /code-review ultra je huidige branch met de default-branch en neemt ongecommitete en gestagede wijzigingen mee. Een branch-review kapt standaard rond 500 gewijzigde bestanden en 8.000 gewijzigde regels af, al merkt Anthropic op dat deze aantallen kunnen wijzigen. Is je diff te groot, push de branch en review ‘m dan als PR.

Met een PR-nummer kloont de remote-omgeving de PR vanaf GitHub, en wordt er niets vanaf jouw machine geüpload.

Voor de start toont Claude de reviewscope, resterende gratis runs en geschatte kosten. Na bevestiging draait de review op de achtergrond, dus je kunt Claude Code blijven gebruiken terwijl de externe agents werken.

Voor ons weekly_revenue.py-voorbeeld zou ik de bevindingen vergelijken in plaats van aannemen dat de diepere review per definitie gelijk heeft.

Als /code-review de customer-join markeert en de ultra-review dezelfde omzetduplicatie onafhankelijk reproduceert, groeit mijn vertrouwen in die bevinding. Als de ultra-review ‘m negeert omdat de upstream-tabel uniekheid garandeert, bekijk ik het bewijs van beide reviews en de daadwerkelijke modeldefinitie voordat ik de code wijzig.

Dat is een nuttige eigenschap van meerdere reviewers: onenigheid geeft je iets om te onderzoeken.

Comparing code review options

Er is ook een kostenoverweging. GitHub Code Review kost momenteel gemiddeld $15 tot $25 per review, terwijl de ultra-review na de gratis Pro- en Max-runs doorgaans $5 tot $25 kost. Kosten voor GitHub Code Review staan los van inbegrepen planverbruik, en Anthropic biedt uitgavencontrole voor organisaties.

Werk je solo, dan is lokaal /code-review plus af en toe /code-review ultra een prima startworkflow. Zit je op een Team- of Enterprise-plan en wil je dat elke PR een geautomatiseerde review krijgt, dan ligt GitHub Code Review meer voor de hand.

Een praktische Claude Code Review-workflow

De nuttige workflow is niet “draai Claude vóór elke merge”. Het is een reeks waarbij elke review op een ander moment in de ontwikkeling gebeurt, omdat elk moment anders kost en een andere klasse problemen vangt.

Zo zou ik het proces voor een productiechange inrichten:

Write code
	   ↓
Run tests and data checks
	   ↓
/code-review
	   ↓
Fix verified findings
	   ↓
Open GitHub PR
	   ↓
GitHub Code Review
	   ↓
Human triage
	   ↓
/code-review ultra for higher-risk changes
	   ↓
Final tests
	   ↓
Human merge

De lokale review vangt problemen terwijl ze goedkoop zijn om te fixen. De GitHub-review geeft het bredere team een gedeeld logboek van bevindingen, terwijl de ultra-review een zwaardere second opinion biedt voor een belangrijke merge.

A Practical Claude Code Review Workflow

Aanvullende checks voor data scientists

Voor datawerk zou ik 4 checks toevoegen rondom Claude, in plaats van verwachten dat het model de hele review doet:

  • Check rijtellingen en granulariteit van datasets vóór en na belangrijke joins
  • Draai unit- of integratietests rond transformaties en featurelogica.
  • Check op leakage bij het bouwen van machinelearning-features.
  • Valideer businessmetrics tegen een bekende goede query of dashboard.

Claude kan aan alle 4 deelnemen, maar het verwachte resultaat moet uit code, tests of data komen en niet uit Claude’s uitleg.

Slotgedachten

Claude Code Review werkt het best wanneer ik het behandel als een andere engineer in de reviewthread, niet als een geautomatiseerde goedkeuringsstempel.

Het lokale /code-review-command geeft je een snelle review voordat de PR bestaat. GitHub Code Review brengt multi-agent-bevindingen in de PR voor Team- en Enterprise-organisaties, terwijl /code-review ultra je een diepere externe review geeft wanneer de wijziging een extra pass verdient.

Ik zou klein beginnen. Zet /code-review in je normale branch-workflow, schrijf een korte REVIEW.md voor je GitHub-reviews en probeer /code-review ultra bij wijzigingen waar een slechte merge je echt iets kost.

Voor de onderliggende modelconcepten biedt onze cursus Introductie tot Claude-modellen de bredere context, terwijl GitHub Foundations en Intermediate GitHub Concepts de Git- en GitHub-workflow behandelen waar Code Review op voortbouwt. Voor meer inspiratie over het triageren van GitHub-repo’s met Claude raad ik ook onze Claude Code connector-tutorial aan.

Claude Code Review FAQ's

Vervangt Claude Code Review een menselijke code-reviewer?

Nee. Claude Code Review rapporteert bevindingen, maar keurt een pull request niet goed of af, en de GitHub check run heeft een neutrale conclusie. Een mens moet nog steeds beslissen of de bevinding klopt, zeker bij datalogica rond granulariteit, leakage, businessdefinities en tijdsgebonden aannames.

Wat is het verschil tussen /code-review en GitHub Code Review?

/code-review draait lokaal vanuit Claude Code en reviewt je branch, commits en working-tree-wijzigingen zonder dat de GitHub Code Review App nodig is. GitHub Code Review draait tegen GitHub-pull requests en plaatst bevindingen als inline comments, maar is momenteel een Team- en Enterprise-onderzoekspreview.

Wat is het verschil tussen /code-review en /ultrareview?

/code-review is bedoeld voor snelle feedback tijdens ontwikkeling, terwijl /code-review ultra de review naar een externe sandbox stuurt waar meerdere agents bugs onafhankelijk onderzoeken en verifiëren. Anthropic beschrijft de ultra-review (ook bereikbaar via de alias /ultrareview) momenteel als een onderzoekspreview, met typische runs van ongeveer 5 tot 10 minuten.

Reviewt @claude review automatisch elke toekomstige push?

Niet meer. Sinds de gedragswijziging van juli 2026 en in september 2026 vraagt @claude review één review aan, terwijl @claude review always een review aanvraagt en de PR abonneert op toekomstige push-getriggerde reviews. @claude review once gedraagt zich hetzelfde als het kale command.

Wanneer moet ik REVIEW.md gebruiken?

Als je repository GitHub Code Review gebruikt en je review-specifieke regels hebt. Regels over joins, metricdefinities, gegenereerde bestanden, secrets, tests en datakwaliteitschecks zijn betere kandidaten voor REVIEW.md dan algemene projectinstructies, al volgt lokale /code-review momenteel CLAUDE.md in plaats van REVIEW.md.


Tim Lu's photo
Author
Tim Lu
LinkedIn

Ik ben een data scientist met ervaring in ruimtelijke analyse, machine learning en datapijplijnen. Ik heb gewerkt met GCP, Hadoop, Hive, Snowflake, Airflow en andere data science- en engineeringprocessen.

Onderwerpen
Kunstmatige intelligentie
AI Agents

Leer Vibecoding met Claude Code

Cursus

Claude Code 101

3 Hr
26.3K
Learn how to use Claude Code effectively in your daily development workflows.
Bekijk detailsRight Arrow
Begin Met De Cursus
Meer zienRight Arrow
Gerelateerd

blog

AI vanaf nul leren in 2026: een complete gids van de experts

Ontdek alles wat je moet weten om in 2026 AI te leren, van tips om te beginnen tot handige resources en inzichten van industrie-experts.
Adel Nehme's photo

Adel Nehme

15 min

Meer ZienMeer Zien