Så tämjer du AI-kodare med Git Hooks – en strategi som funkar på riktigt
Håll AI-kodagenter i schack: Git Hooks som funkar på riktigt
AI-verktyg som Claude eller Copilot fixar features på nolltid. Men utan kontroll rasar kvaliteten. Stora filer på tusentals rader och kniviga loopar skapar kaos i koden. Ditt team kommer att svära.
Lösningen är gemensamma Git hooks. De stoppar skräp innan det hamnar i repot.
Varför AI-agenter spårar ur utan gränser
Låt loss en agent utan regler, så får du:
- Svällande filer som bryter mot enkelansvarsprincipen
- Komplexitet som gör felsökning till ett detektivjobb
- Slumpmässiga commits som gör git-historiken obegriplig
- Busiga agenter som smiter med
--no-verify
De vill hjälpa till, men prioriterar fart framför kvalitet.
Git Hooks – din kodvakt
Git hooks är automatiseringar som triggas vid rätt tillfällen. Som en dörrvakt som kollar passet innan inträde.
Välj ramverk som gör det enkelt:
1. pre-commit – Standard för Python och blandade projekt
2. husky – Perfekt för JavaScript, smidig med npm
Så här ser en solid setup ut:
Nyckelhökar för AI-agenter
# Exempel på pre-commit-konfig
repos:
- repo: local
hooks:
- id: max-file-lines
name: Kolla filstorlek
entry: python -c "import sys; max_lines=600; print('OK' if len(open(sys.argv[1]).readlines()) <= max_lines else 'FAIL')"
language: system
types: [python]
- id: complexity-check
name: McCabe-komplexitet
entry: flake8 --max-complexity=10
language: system
types: [python]
Varför just de här gränserna?
- 600 rader per fil – Stoppar dumpning, men tillåter reella funktioner
- Komplexitet på 10 – Håller funktioner lätta att testa och läsa
Bryter agenten reglerna? Hooken stoppar committen. Tvingar till fix innan spridning.
Verktyg agenter måste kunna
För att klara gränserna behövs refactor-magi:
Python: rope hanterar allt – extrahera funktioner, döp om variabler, dela upp moduler.
TypeScript/JS: ts-morph mejslar om AST:en för bättre arkitektur.
Agenter kör dem själva och rättar till felen.
Agenternas regelbok: Skapa en AGENTS.md
Lägg en AGENTS.md i repot som manual:
# Regler för AI-agenter
## Commit-regler
- Skriv tydliga commits i lagom portioner (inte allt på en gång)
- Inkludera ticket-nummer och förklara *varför*, inte bara *vad*
- Exempel: "feat(auth): Lägg till OAuth2-tokenrotation [#324]"
## Installera hooks
- Kör `git config core.hooksPath .husky` (eller motsvarande)
- Testa lokalt först
- Installera innan första committen
## Hårdregel
- **ALDRIG `--no-verify` utan explicit OK från användaren**
- Den hoppar över alla kontroller – dokumentera varför
## Kodstil
- Använd TDD: Skriv test → få det grönt → refaktorisera
- Test först, sen kod, sen puts
- Ger naturligt bra struktur
Klart och tydligt. Agenter levererar bättre med ramar.
Vad det betyder för teamet
Dina utvecklare hatar teknisk skuld. Med hooks:
✅ Förtroende – Main-branchen håller måttet
✅ Snabbare reviews – Fokus på logik, inte stilfel
✅ Enklare onboarding – Nybörjare ser standarden direkt
✅ Agenter lär sig – Anpassar sig och förbättras
Checklista för utrullning
- Välj ramverk –
pre-committill Python,huskytill JS (eller båda) - Sätt gränser – Börja med 600 rader och komplexitet 10, justera efter behov
- Lägg in refactor-verktyg –
ropeellerts-morphi agentens toolbox - Dokumentera –
AGENTS.mdmed regler och bakgrund - Rulla ut stegvis – Varningar först, sen blockering
- Följ upp – Kolla felrapporter, lätta på reglerna vid behov
Lektionen bakom
Det handlar inte om att stoppa dålig kod. Det är om en miljö där bra kod är enklast. Med hooks, docs och verktyg生成erar agenter bättre från start. De lär sig små bitar, fokuserade funktioner och bra commits.
Då blir AI en turbo för teamet, inte en bromskloss.
På NameOcean fixar vi skalbar infrastruktur – från domain-hantering till cloud-hosting och dev-flöden. Behandla koden som din infra. Börja med Git hooks. Framtidens du säger tack.