AI-coding agents in toom houden: de git hooks-strategie die écht werkt
AI-Codeerbots in de Ban Houden: Git Hooks Die Echt Werken
AI-tools zoals Claude of Copilot spuwen features uit in een oogwenk. Lekker snel, maar zonder regels stapelt technische schuld zich op. Een agent die dikke bestanden dumpt of recursieve puinhopen bouwt, verwoest je codebase. Je team rekent later wel met je af.
De fix? Gedeelde Git hooks die kwaliteit afdwingen vóór de commit.
Het Drama van Losgeslagen AI-Agents
Zonder remmen produceren ze:
- Overvolle bestanden die single-responsibility negeren
- Onontwarbare knopen waar debuggen een nachtmerrie wordt
- Chaotische commits die je git-log onleesbaar maken
- Rebellen die
--no-verifymisbruiken om checks te skippen
Grappig genoeg willen ze helpen, maar ze kiezen snelheid boven kwaliteit.
Git Hooks: Je Kwaliteitsmuur
Git hooks zijn automatische checks op cruciale momenten in je workflow. Alsof er een uitsmijter voor je repo staat.
Twee topframeworks maken het makkelijk:
1. pre-commit — Standaard voor Python en mixed teams, taal-onafhankelijk
2. husky — JS-favoriet, plugt naadloos in npm
Zo ziet een strak config eruit:
Belangrijkste Hook-Regels voor AI
# Voorbeeld pre-commit config
repos:
- repo: local
hooks:
- id: max-file-lines
name: Bestandsgrootte check
entry: python -c "import sys; max_lines=600; exit(0 if len(open(sys.argv[1]).readlines()) <= max_lines else 1)"
language: system
types: [python]
- id: complexity-check
name: McCabe limiet
entry: flake8 --max-complexity=10
language: system
types: [python]
Waarom deze limieten?
- 600 regels max per file — Streng tegen dumps, ruim voor echte complexiteit
- McCabe 10 — Houdt functies testbaar en snapbaar
Overtreding? Hook faalt, commit blokkeert. Agent móét refactoren.
Tools Die Agents Moeten Gebruiken
Om te slagen, hebben agents refactor-munitie nodig:
Python: rope voor slimme herstructurering. Splits functions, hernoem vars, maak modules. Programmatisch aan te roepen.
TypeScript/JS: ts-morph voor AST-magie. Agents fixen hun eigen architectuur.
Geen handwerk — agents doen het zelf.
De Agenten-Grondwet: Maak Regels Duidelijk
Leg alles vast in een AGENTS.md of CLAUDE.md:
# Regels voor AI-Agents
## Commit-Regels
- Kleine, beschrijvende commits (geen monoliet per taak)
- Ticket-nummers + what & why: "feat(auth): OAuth2 refresh rotation [#324]"
## Hooks Installeren
- Altijd `git config core.hooksPath .husky` (of pre-commit equivalent)
- Test lokaal, dan pas pushen
## Gouden Regel
- **Nooit `--no-verify` zonder expliciete user-goedkeuring**
- Documenteer waarom je het nodig hebt
## Code-Aanpak
- TDD: Eerst falende test → groen → refactor
- Dit leidt tot strakke architectuur
Duidelijkheid boost performance, geen dictatuur.
Waarom Je Team Hier Beter Van Wordt
Menselijke devs haten debt. Met deze setup:
✅ Vertrouwen in main — Code voldoet aan basics
✅ Snellere reviews — Focus op logica, niet op rommel
✅ Makkelijke onboarding — Voorbeelden van goed werk
✅ Agents leren — Ze passen zich aan aan je normen
Stappenplan voor Implementatie
- Kies framework —
pre-commit(Python),husky(JS) of combo - Stel limieten — Start met 600 regels / complexiteit 10, tweak later
- Voeg tools toe —
ropeofts-morphin agent-toolkit - Documenteer —
AGENTS.mdmet uitleg - Bouw op — Eerst warnings, dan hard blokkeren
- Volg op — Check failures, pas aan als te streng
De Kernboodschap
Dit gaat niet over AI tegenhouden. Het creëert een omgeving waar goed code de makkelijke weg is. Met hooks, docs en tools gaan agents beter genereren: kleinere chunks, gefocuste functions, slimme commits.
Zo wordt AI een echte accelerator, geen risico.
Bij NameOcean leven we voor schaalbare infra: van domain management tot cloud hosting en dev-workflows. Behandel je codebase als je infra. Begin met Git hooks. Je toekomstige ik zegt dank je wel.