Blog
Tutorials·10 min read

Claude Code Meesterschap Deel 8: Productie Workflows

Ga van experimenteren naar productie met GitHub Actions-integratie, @claude-vermeldingen, geautomatiseerde PR-reviews en teamworkflows die schalen.

Jo Vinkenroye·January 15, 2026
Claude Code Meesterschap Deel 8: Productie Workflows

Je hebt Claude Code lokaal gebruikt—commando's, skills, subagents, MCP-servers. Het heeft je manier van werken getransformeerd. Maar wat als je niet achter je terminal zit? Wat als het om je team gaat?

De GitHub-integratie van Claude Code stelt je in staat om Claude direct te @mentionen in issues en PR's. Je team kan AI-ondersteuning krijgen zonder dat iedereen lokaal iets hoeft te installeren. En met GitHub Actions kan Claude elke PR automatisch reviewen.

De GitHub-integratie

Met een simpele @claude-vermelding in elke PR of issue kan Claude:

  • Code analyseren — PR's reviewen, wijzigingen uitleggen, problemen vinden
  • Pull requests aanmaken — Features implementeren vanuit issue-beschrijvingen
  • Bugs fixen — Onderzoeken, oorzaak identificeren, patches indienen
  • Vragen beantwoorden — Codebase-patronen en architectuur uitleggen
  • Jouw standaarden volgen — Gebruikt je CLAUDE.md-conventies

Dit alles gebeurt asynchroon. Je vermeldt @claude, haalt een koffie, en komt terug bij een PR of gedetailleerde analyse.

Installatie

De makkelijkste setup is via Claude Code zelf:

Claude
/install-github-app

Dit commando begeleidt je door:

  1. De Claude GitHub App installeren op je repository
  2. De vereiste rechten autoriseren
  3. Het instellen van het ANTHROPIC_API_KEY secret

Je hebt repository admin-toegang nodig om de installatie af te ronden.

Handmatige Setup

Als je de voorkeur geeft aan handmatige configuratie:

  1. Maak het workflow-bestand aan op .github/workflows/claude.yml:
Name: Claude Code Assistant
On:
issue_comment:
types: [created]
pull_request:
types: [opened, synchronize]
issues:
types: [opened, labeled]
Permissions:
contents: read
pull-requests: write
issues: write
Jobs:
claude:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: anthropics/claude-code-action@v1
with:
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
  1. Voeg je API-sleutel toe: Repository Settings → Secrets → Voeg ANTHROPIC_API_KEY toe

  2. Commit en push het workflow-bestand

@claude Vermeldingen

Na installatie kun je @claude vermelden in elke issue of PR om assistentie te activeren.

In Issues

@claude implementeer deze feature volgens onze auth-patronen

Claude analyseert de issue, maakt een plan en opent een PR met de implementatie.

@claude onderzoek waarom gebruikers timeout-fouten zien in de checkout-flow

Claude verkent de codebase, identificeert mogelijke oorzaken en rapporteert bevindingen.

In Pull Requests

@claude review deze PR op beveiligingsproblemen

Claude analyseert de diff, plaatst opmerkingen bij specifieke regels en biedt een samenvatting.

@claude leg uit waarom deze aanpak is gekozen in plaats van een state machine

Claude leest de wijzigingen, begrijpt de context en legt de redenering uit.

In PR-opmerkingen

@claude kun je dit refactoren naar async/await in plaats van callbacks?

Claude werkt de code bij en pusht een nieuwe commit naar de PR.

@claude voeg tests toe voor de edge cases die je hebt geïdentificeerd

Claude schrijft en commit de extra tests.

Workflow Triggers

Configureer wanneer Claude activeert:

Comment-getriggerd (Interactief)

On:
issue_comment:
types: [created]

Claude reageert op @claude-vermeldingen in opmerkingen. Meest flexibel—teamleden activeren het wanneer nodig.

PR-getriggerd (Automatische Review)

On:
pull_request:
types: [opened, synchronize]

Claude reviewt automatisch elke nieuwe PR en wanneer nieuwe commits worden gepusht. Voeg een prompt toe om te specificeren waar op gelet moet worden:

- uses: anthropics/claude-code-action@v1
with:
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
prompt: "Review deze PR op beveiligingskwetsbaarheden, prestatieproblemen en naleving van onze codeerstandaarden"

Issue-getriggerd (Auto-Triage)

On:
issues:
types: [opened, labeled]

Claude kan nieuwe issues triagen, labels toevoegen of met implementatie beginnen wanneer specifieke labels worden toegepast.

Gepland (Onderhoud)

On:
schedule:
- cron: '0 9 * * 1' # Elke maandag om 9 uur

Voer onderhoudstaken uit: dependency-updates, documentatie vernieuwen, codebase-gezondheidscontroles.

Productie Workflow Patronen

Patroon 1: Dubbele Review Loop

Combineer geautomatiseerde controles met AI-review:

Jobs:
automated-checks:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: npm ci
- run: npm run lint
- run: npm run typecheck
- run: npm run test
ai-review:
needs: automated-checks
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: anthropics/claude-code-action@v1
with:
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
prompt: |
Review deze PR op:
1. Logicafouten die de linter niet zou opvangen
2. Architectuur- en designoverwegingen
3. Prestatie-implicaties
4. Ontbrekende edge cases
Geautomatiseerde controles zijn al geslaagd. Focus op review op hoger niveau.

Waarom dit werkt: Linters vangen syntaxproblemen op. Claude vangt designproblemen op. Samen zijn ze volledig.

Two buttons meme - zweten over de linter vertrouwen vs Claude's review vertrouwen
Two buttons meme - zweten over de linter vertrouwen vs Claude's review vertrouwen

Patroon 2: Spec-gedreven Ontwikkeling

Structureer je workflow van requirements tot implementatie:

1. Requirements Fase
└── Maak een gedetailleerde issue met acceptatiecriteria
└── @claude om een implementatieplan te maken
└── Review en verfijn het plan
2. Implementatie Fase
└── Keur plan goed → Claude maakt PR
└── Geautomatiseerde tests draaien
└── Menselijke review
3. Merge Fase
└── Definitieve goedkeuring
└── Merge en deploy

Voorbeeld-issue:

## Feature: Gebruikersexport
### Requirements
- Exporteer gebruikersdata als CSV of JSON
- Inclusief: naam, email, aanmelddatum, laatste login
- Alleen admins
- Maximaal 10.000 records per export
### Acceptatiecriteria
- [ ] Exportknop op het admin-dashboard
- [ ] Formaatselectie (CSV/JSON)
- [ ] Voortgangsindicator voor grote exports
- [ ] Downloadlink via email voor exports > 1000 records
@claude implementeer dit volgens onze bestaande exportpatronen in src/exports/

Patroon 3: Bug Fix Pipeline

Gestroomlijnd bugonderzoek en -oplossing:

## Bug: Checkout faalt voor internationale adressen
### Reproductie
1. Voeg item toe aan winkelwagen
2. Voer verzendadres in met niet-VS land
3. Klik "Doorgaan naar Betaling"
4. Fout: "Invalid address format"
### Verwacht
Checkout moet internationale adressen accepteren
@claude onderzoek en fix deze bug

Claude zal:

  1. De codebase analyseren op adresverwerking
  2. De hoofdoorzaak identificeren
  3. Een PR aanmaken met de fix
  4. Tests toevoegen voor internationale adressen

Patroon 4: Pad-specifieke Reviews

Trigger verschillende reviewdiepte op basis van wat er is gewijzigd:

Jobs:
security-review:
if: contains(github.event.pull_request.changed_files, 'auth/') ||
contains(github.event.pull_request.changed_files, 'payments/')
runs-on: ubuntu-latest
steps:
- uses: anthropics/claude-code-action@v1
with:
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
prompt: |
KRITISCHE BEVEILIGINGSREVIEW
Deze PR wijzigt authenticatie- of betaalcode.
Voer een grondige beveiligingsaudit uit:
- Controleer op injectiekwetsbaarheden
- Verifieer authenticatie/autorisatie
- Zoek naar risico's voor dataexposure
- Valideer inputsanitisatie
Markeer eventuele zorgen voor menselijke review vóór merge.

Teamconfiguratie

Gedeelde CLAUDE.md voor Teams

De CLAUDE.md van je project wordt gebruikt door zowel lokale Claude Code als GitHub Actions. Voeg teamspecifieke instructies toe:

Belangrijk: Wanneer je Claude @vermeldt op GitHub, leest het automatisch de CLAUDE.md-configuratie uit Deel 3 om de standaarden, conventies en beperkingen van je team te begrijpen.

# Team Project Standaarden
## @claude Triggers
Bij het reageren op GitHub-vermeldingen:
- `@claude review` - Volledige code review met beveiligingsfocus
- `@claude implement` - Maak PR vanuit issue-beschrijving
- `@claude fix` - Onderzoek en patch bugs
- `@claude explain` - Leg code of architectuurbeslissingen uit
- `@claude triage` - Analyseer en label nieuwe issues
## PR Vereisten
- Alle PR's vereisen geslaagde tests vóór Claude review
- Beveiligingskritieke wijzigingen vereisen menselijke goedkeuring
- Databasemigraties vereisen goedkeuring van teamlead
## Codeerconventies
[Je bestaande codeerstandaarden...]
## Beperkte Gebieden
Wijzig niet automatisch:
- config/production.json - Vereist handmatige review
- database/migrations/ - Vereist goedkeuring van teamlead
- src/auth/ - Beveiligingskritiek, markeren voor review
- src/payments/ - PCI-compliance, markeren voor review

Rechtengrenzen

Configureer wat Claude wel en niet kan doen:

Permissions:
contents: read # Kan bestanden lezen
pull-requests: write # Kan reageren op PR's
issues: write # Kan reageren op issues
# Let op: Kan PR's niet mergen zonder extra configuratie

Vereist altijd menselijke goedkeuring voor merges. Claude kan reviewen, suggesties doen en zelfs committen—maar een mens moet op de merge-knop klikken.

Change my mind meme - Claude moet PR's auto-mergen zonder menselijke review
Change my mind meme - Claude moet PR's auto-mergen zonder menselijke review

Authenticatie-opties

Directe API (Aanbevolen)

- uses: anthropics/claude-code-action@v1
with:
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}

Meest eenvoudig. Je betaalt per token via je Anthropic-account.

Amazon Bedrock

- uses: anthropics/claude-code-action@v1
with:
provider: bedrock
aws_access_key_id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws_secret_access_key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws_region: us-east-1

Voor enterprise-omgevingen met AWS-infrastructuur.

Google Vertex AI

- uses: anthropics/claude-code-action@v1
with:
provider: vertex
gcp_project_id: ${{ secrets.GCP_PROJECT_ID }}
gcp_region: us-central1

Voor teams op Google Cloud.

Kostenbeheer

GitHub Actions-gebruik + API-tokens kunnen oplopen. Monitor en beheer kosten:

Stel Token Limieten in

- uses: anthropics/claude-code-action@v1
with:
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
max_tokens: 4096

Beperk Triggerfrequentie

On:
pull_request:
types: [opened] # Alleen bij openen, niet bij elke push
paths:
- 'src/**' # Alleen wanneer bronbestanden wijzigen
- '!**.md' # Negeer documentatiewijzigingen

Gebruik Labels als Poort

On:
pull_request:
types: [labeled]
Jobs:
claude-review:
if: github.event.label.name == 'needs-ai-review'

Trigger alleen wanneer een specifiek label wordt toegepast.

Best Practices

1. Wees Specifiek met Instructies

# Vaag (slechtere resultaten)
@claude review dit
# Specifiek (betere resultaten)
@claude review deze PR op SQL-injectiekwetsbaarheden
in het nieuwe gebruikerszoekendpoint, met focus op de query-
opbouw in src/api/users.ts

2. Bied Context

@claude implementeer deze feature
Dit moet dezelfde patronen volgen als onze bestaande
exportfunctionaliteit in src/exports/. Gebruik de ExportJob
Queue voor async verwerking zoals we doen voor rapportgeneratie.

3. Itereer en Verfijn

Behandel Claude als een junior developer die profiteert van feedback:

@claude dat is bijna goed, maar we moeten het geval afhandelen
waarbij de gebruiker geen emailadres heeft. Kun je een
fallback toevoegen om in plaats daarvan hun gebruikersnaam te gebruiken?

4. Documenteer Teamcommando's

Maak een teamreferentie voor @claude-gebruik:

## Team @claude Commandoreferentie
- `@claude review` — Volledige code review — Gebruik bij alle PR's
- `@claude security` — Beveiligingsgerichte review — Gebruik bij auth/betaalwijzigingen
- `@claude implement` — Maak implementatie — Gebruik bij feature-issues
- `@claude fix` — Onderzoek en patch — Gebruik bij bug-issues
- `@claude explain` — Leg code/beslissingen uit — Gebruik voor onboarding, complexe PR's

Let op: Zie Globale vs Projectcommando's in Deel 4 voor het organiseren van teambreed aangepaste commando's die lokaal werken (niet alleen op GitHub).

5. Bescherm Gevoelige Code

Configureer Claude om kritieke gebieden te markeren in plaats van te wijzigen:

## In CLAUDE.md
Bij het reviewen of implementeren van wijzigingen die raken aan:
- src/auth/
- src/payments/
- config/production.json
- database/migrations/
Breng GEEN directe wijzigingen aan. In plaats daarvan:
1. Markeer het bestand als beveiligingskritiek
2. Beschrijf welke wijzigingen nodig zouden zijn
3. Verzoek menselijke review vóór enige wijzigingen

Probleemoplossing

Claude Reageert Niet op Vermeldingen

  1. Controleer of het workflow-bestand bestaat op .github/workflows/claude.yml
  2. Verifieer dat het ANTHROPIC_API_KEY secret is ingesteld
  3. Controleer de Actions-tab voor workflow-runlogs
  4. Zorg dat de issue_comment-trigger is geconfigureerd

Antwoord Wordt Afgekapt

Token-limieten zijn mogelijk te laag. Verhoog max_tokens in de actieconfiguratie.

Claude Maakt Verkeerde Aannames

Voeg meer context toe aan CLAUDE.md of wees specifieker in je vermelding.

Hoge Kosten

  • Gebruik label-gepoortde triggers in plaats van automatisch bij elke PR
  • Beperk tot specifieke bestandspaden
  • Verlaag max_tokens
  • Gebruik Haiku voor eenvoudige taken, Opus voor complexe

Wat Volgt

Je hebt Claude nu geïntegreerd in je ontwikkelworkflow—lokaal en op GitHub. Commando's, skills, subagents, MCP-servers en GitHub Actions geven je een complete AI-ondersteunde ontwikkeltoolkit.

In Deel 9: Power User Geheimen verkennen we geavanceerde technieken waar ervaren gebruikers op vertrouwen: prompt engineering-patronen, debugstrategieën en workflows die de mogelijkheden van Claude maximaliseren.

Quick Reference

Setup/install-github-app

Workflow-bestand.github/workflows/claude.yml

Veelgebruikte @claude commando's

@claude review — Code review

@claude implement — Bouw vanuit issue

@claude fix — Debug en patch

@claude explain — Leg code uit

@claude add tests — Schrijf tests

@claude refactor — Ruim code op

Workflow triggers

issue_comment — @claude-vermeldingen

pull_request — Automatische PR-review

issues — Issue-triage

schedule — Gepland onderhoud

Stay Updated

Get notified about new posts on automation, productivity tips, indie hacking, and web3.

No spam, ever. Unsubscribe anytime.

Comments

Related Posts