Ooit geprobeerd uit te leggen wat een pull request is aan je niet-techneutische vriend en gezien hoe hun ogen glazig werden als een Krispy Kreme lopende band? Stel je nu voor dat je ze vertelt dat een AI niet alleen je repo kan begrijpen, maar ook PR's voor je kan openen. Welkom in 2025, waar je code editor een beetje een co-piloot is, een beetje een backseat driver, en - als je het goed instelt - een behoorlijk aardige stagiair.
Deze gids laat je zien hoe je GitHub verbindt met Claude Code en automatisch pull requests genereert. We gaan van "Huh?" naar "Ship it" met stapsgewijze setup, real-world workflows en een paar valkuilen die je moet vermijden. Je gaat GitHub aansluiten, Claude Code laten zien wat er gaande is, en het PR's laten openen en bijwerken die je daadwerkelijk kunt mergen zonder het gevoel te hebben dat je een deal hebt gesloten met de algoritmische duivel.
Let op: Je gaat hier twee hoofdpaden zien: het gebruik van Claude Code's GitHub Actions-integratie en het gebruik van Model Context Protocol (MCP)-servers om Claude veilige, afgebakende toegang tot GitHub API's te geven. Welke moet je kiezen? Als je plug-and-play PR-hulp direct in GitHub wilt, is de Actions-route je beste keuze. Als je lokale, chat-gestuurde repo-controle wilt met fijnmazige permissies, is MCP je power tool.
Wat we gaan bouwen
- Verbind GitHub veilig met Claude Code.
- Laat Claude je repo analyseren, wijzigingen voorstellen en PR's openen.
- Automatiseer reviews, labels, checklists en zelfs follow-up commits.
- Voeg guardrails toe zodat het niet je hele monorepo hernoemt naar “final_final_v2.”
Waarom dit belangrijk is
Omdat context switching de productiviteitsbelasting is waar niemand voor heeft gestemd. AI die een PR kan openen met dezelfde nauwkeurigheid die je zou verwachten van een junior ontwikkelaar (op hun goede dag) is een echte tijdbespaarder. Niet om mensen te vervangen - kalmeer - maar om de "ugh, boilerplate" delen van engineering te vervangen.
Pad A: Automatisch PR's genereren met Claude Code GitHub Actions
Als je de hele dag in GitHub leeft (sluit je aan bij de club), geeft dit pad je een bot die code in issues en PR's kan analyseren, wijzigingen kan voorstellen en zelfs PR's kan openen of bijwerken - rechtstreeks vanuit je repo.
Wat je nodig hebt
- Een GitHub-repo die je beheert (of een branch die je kunt breken zonder te huilen).
- Repo admin toegang om Actions en secrets te configureren.
- Een Claude API-sleutel als je action of workflow het nodig heeft.
Stap 1: Schakel GitHub Actions in je repo in
- Ga naar je repository → Settings → Actions → General.
- Schakel "Allow all actions and reusable workflows" in (of beperk tot de goedgekeurde actions van je organisatie als je security mensen je al scheef aankijken).
Stap 2: Voeg een Claude Code workflow toe
Maak .github/workflows/claude-pr-bot.yml met een trigger op basis van je favoriete workflow. Hier zijn twee veel voorkomende patronen:
Optie 1: Issue-gestuurde PR's
- Wanneer je een issue opent met een speciaal label (bijv. ai-pr), wordt de workflow uitgevoerd.
- Het leest de issue prompt (bijv. "Voeg dark mode toggle toe"), maakt een nieuwe branch, bewerkt bestanden met behulp van Claude, pusht commits en opent een PR met een gedetailleerde samenvatting.
Optie 2: Comment-gestuurde bewerkingen op een bestaande PR
- Wanneer je @claude please refactor the settings modal comment, wordt de workflow uitgevoerd.
- Het analyseert de diff, stelt wijzigingen voor en pusht updates naar de PR branch.
Starter workflow (high-level schets)
name: Claude PR Bot
on:
issues:
types: .
- Een korte handleiding over de integratie en use cases geeft je een vogelvluchtperspectief van wat het verstandig is om te automatiseren (en wat niet) in echte teams.
- Als je een visuele leerling bent, laat deze walkthrough automatisch gegenereerde AI PR's in actie zien, van begin tot eind.
Pad B: Verbind GitHub met Claude Code via MCP (voor lokale power users)
Als je wilt dat Claude werkt met je lokale repo context - bestanden op je machine, branches waarmee je jongleert, commando's die je vertrouwt - geeft MCP je een permissioned bridge. Beschouw het als een portier voor je repo: het beslist welke deuren Claude kan openen.
Wat je nodig hebt
- Claude Desktop of een IDE integratie die MCP tooling ondersteunt.
- Een GitHub MCP server die je lokaal draait, geconfigureerd met een token dat scopes beperkt.
- Een personal access token (PAT) met alleen de scopes die je echt nodig hebt (bijv. repo:status, public_repo, pull_request write).
Stap 1: Pak een GitHub MCP server
- Er is een officiële open-source server die geselecteerde GitHub API operaties exposeert (zoek issues, maak branches, open PR's, enz.). Het is configureerbaar zodat je alleen inschakelt wat je nodig hebt, wat ook AI verwarring vermindert en security tevreden houdt. Voor een breder overzicht van MCP servers en voorbeelden, bekijk de central directory.
Stap 2: Configureer je client om met de server te praten
- In je client config file (bijv. een JSON config voor je AI app), registreer de GitHub MCP server, geef het je token via environment variables, en whitelist toegestane repo's.
- Pro tip: Zet de token in je system keychain of een dotenv file, niet je config file. Word niet het waarschuwende voorbeeld in je volgende all-hands.
Stap 3: Test de tool surface area
- Vraag Claude om open issues op te sommen, een specifiek bestand te lezen of een branch te maken. Verifieer dat het niets kan doen wat je niet expliciet hebt toegestaan.
- Pas nadat je basic commando's hebt gecontroleerd, moet je create_pull_request inschakelen.
Stap 4: Laat Claude een PR voorstellen en openen
- Prompt voorbeeld: “In repo org/app-frontend, create a new branch feat/dark-toggle, implement a settings toggle for dark mode in SettingsPanel.tsx, update tests, and open a PR with a checklist for QA.”
- De server orkestreert: leest repo state, schrijft wijzigingen (als je local file tools hebt geconfigureerd), pusht een branch, opent een PR met je template en post een samenvatting.
Eerlijk: Guardrails die je echt nodig hebt
- Read-only dry runs: Laat Claude een unified diff (git diff) produceren voordat je schrijftoegang geeft. Merge nadat je het hebt bekeken.
- Templated PR bodies: Voeg risiconotities, testplannen en rollout stappen toe. Laat de bot de template invullen; laat mensen het beoordelen.
- Labeling rules: Auto-apply labels zoals ai-generated en needs-tests om dingen vindbaar en eerlijk te houden.
- Branch naming: Vereis een prefix (ai/ of bot/) met branch protection rules. Robots hebben ook uniformen nodig.
Anekdote tijd: Ik vroeg een AI om "de auth bug te fixen." Het "fixede" het door authenticatie te verwijderen. Geweldig voor productiviteit! Verschrikkelijk voor letterlijk al het andere. Houd scopes smal, prompts specifiek en CI tests gemeen.
Van nul naar PR: Een realistisch end-to-end scenario
Scenario: Fix flaky debounce test in een React project
- Je opent een issue: “Debounce util: flake on 200ms boundary in CI.” Je tagt het ai-pr.
- Workflow triggers. Het zoekt naar debounce.ts en gerelateerde tests.
- Claude stelt een diff voor: past timers aan met jest.useFakeTimers, voegt een marge toe in asserts, update docs.
- De bot opent een PR met: title, summary, rationale, test plan en risk rating.
- Je beoordeelt de diff, push back: “Edge case when delay=0.”
- Je comment @claude handle delay=0 with immediate flush; add test. Workflow reruns, pusht een commit.
- CI passes. Je squasht en merget. Ergens huilt een flaky test “uncle.”
Hoe goede prompts eruit zien (en wat je moet vermijden)
- Geweldig: “Add a dark mode toggle to SettingsPanel.tsx; persist to localStorage; update SettingsPanel.test.tsx; follow our ESLint rules; modify only /src/ui/ and /src/utils/; 250 lines max.”
- Meh: “Implement dark mode.”
Maak het veilig: Security en compliance quick-check
- Token scopes: Gebruik repo:contents write alleen indien vereist; geef de voorkeur aan pull_request write voor PR creation.
- Repository allowlist: Vergrendel de bot aan een enkele repo of org.
- Logging: Zorg ervoor dat de bot zijn acties en prompts logt (minus secrets). Je wilt bewijs wanneer het je Dockerfile “verbetert.”
- Branch protections: Vereis twee menselijke goedkeuringen voor ai/* branches.
Troubleshooting: Wanneer de bot niet wil botten
- Het kan geen branches pushen: Controleer Actions permissies voor contents: write en dat je token repo write toegang heeft.
- Het opent lege PR's: Je context builder geeft het niet de juiste bestanden. Verscherp je file selection logic.
- Het timed out op grote repo's: Beperk de context tot gewijzigde paden of een manifest. AI krijgt indigestie van 10GB monorepo's, net als de rest van ons.
- Het negeert je PR template: Bevestig dat de template in .github/pull_request_template.md staat of gelinkt is in je repo settings.
Wanneer welk pad te gebruiken
- Gebruik GitHub Actions als je een lichtgewicht manier wilt om automatisch PR's te genereren van issues of comments, waarbij alles in GitHub gebeurt.
- Gebruik MCP als je wilt dat Claude in je lokale omgeving of over meerdere tools werkt met zeer specifieke controles.
Vermeldenswaardig: Als je een snelle sanity check op de workflow wilt of een solide starter prompt wilt genereren, kan Sider.AI je helpen bij het opstellen van PR templates en guardrail prompts, en er vervolgens op itereren met echte repo snippets. Het is alsof je een eigenzinnige editor hebt die daadwerkelijk code schrijft. En je bureaustoel niet steelt. Veel voorkomende patronen die je wilt kopiëren
- AI PR labels en CODEOWNERS: Route ai/* PR's naar een review group die het leuk vindt om met robots te argumenteren.
- Stapsgewijze commits: Vraag Claude om kleine, atomic commits te maken met duidelijke berichten in plaats van één mega-commit genaamd “stuff.”
- Test-first mode: Laat de workflow eerst tests genereren, CI uitvoeren en vervolgens de implementatie genereren. Het is langzamer. Het is beter.
- Post-merge chores: Voeg een workflow toe om automatisch een follow-up issue te openen voor docs, feature flags of cleanup.
Een snelle competitieve gut check
- Sommige mensen verbinden andere LLM's met vergelijkbare GitHub flows. Ze werken - maar Claude Code's code reasoning en bereidheid om te zeggen "Ik weet het niet zeker" kan je uren van guess-and-check besparen. De GitHub Actions integratie houdt het recht waar reviews van nature gebeuren, en de MCP route is flexibel voor power users.
De 10-minuten setup checklist
- Kies een pad: GitHub Actions (sneller) of MCP (meer controle).
- Maak je token met minimale scopes.
- Voeg de workflow toe of configureer de MCP server.
- Bouw een tight context builder: file lists, limits en rules.
- Voeg branch protections en labels toe.
- Test eerst op een kleine wijziging. Merge. Vier het. Vertel je PM dat je “scaled throughput.”
Snelle referenties om bij de hand te houden
- Claude Code GitHub Actions documentatie (patronen, triggers, voorbeelden).
- Praktische gids voor de integratie en best practices.
- Video walkthrough: AI-gegenereerde PR's end to end.
- GitHub MCP server voor granular, permissioned access.
- MCP servers directory en voorbeelden ter inspiratie.
De Stern wrap-up
Het automatiseren van PR's met Claude Code zal je engineering team niet vervangen. Het zal de minst favoriete klusjes van je engineering team vervangen. Begin met tight scopes, duidelijke prompts en strikte reviews. Laat de bot de scaffolding afhandelen terwijl jij het denken afhandelt. Ga dan terug naar de leuke dingen - zoals eindelijk dat utils2.ts bestand verwijderen dat je hebt vermeden omdat je gewoon weet dat het de app bij elkaar houdt met duct tape en dromen.
Ga nu je toekomstige zelf wat minder chagrijnig maken. En als de bot rogue gaat? Je weet waar de Revert knop woont.
FAQ
V1:Kan Claude Code zelf pull requests openen?
Ja. Met GitHub Actions of een MCP setup kan Claude Code een branch maken, wijzigingen pushen en een pull request openen met een samenvatting en checklist. Houd permissies tight en vereis menselijke review zodat het je security niet "optimaliseert" door het te verwijderen.
V2:Wat is de veiligste manier om GitHub met Claude Code te verbinden?
Gebruik minimal-scope tokens, repository allowlists en branch protections. Of je nu voor Actions of MCP gaat, schakel dry runs in en vereis dat tests slagen voordat je een AI-gegenereerde pull request merget.
V3:Hoe stop ik AI PR's van het aanraken van mijn hele monorepo?
Scope de context met allowlisted directories en een file manifest en cap het aantal bestanden per run. Goede prompts helpen ook - wees specifiek over paden en size limits.
V4:Waarom zijn mijn AI pull requests leeg of van lage kwaliteit?
Je context builder geeft Claude mogelijk de verkeerde bestanden of te weinig detail. Geef duidelijke doelen, constraints en test expectations - en overweeg een two-pass flow: genereer eerst tests, dan de implementatie.
V5:Moet ik GitHub Actions of MCP gebruiken voor Claude Code?
Als je snelle, repo-native automatisering wilt voor PR's en reviews, gebruik dan GitHub Actions. Als je lokale controle, custom tools of fijnmazige permissies nodig hebt, geeft MCP je meer power - met iets meer setup.