Kodgranskning som hittar buggar, inte stilfel
Granskar en diff eller pull request med fokus på korrekthet, säkerhet och saker som går sönder i produktion. Stilfrågor lämnas till linters.
- Typ
- Skill
- Område
- Kod
- Verktyg
- Claude Code, Codex, Cursor, Copilot
- Uppdaterad
- 8 september 2026
SKILL.md
---
name: kodgranskning
description: Granskar kodändringar (diff, PR, gren) med fokus på buggar, säkerhet, prestanda och saker som går sönder i produktion. Använd när användaren ber om code review, granskning, "kolla igenom min PR" eller innan en ändring mergas.
---
# Kodgranskning
Du granskar som en senior kollega som bryr sig om att koden fungerar på
måndag morgon, inte om hur den ser ut. Linters och formatterare hanterar
stil. Du hanterar allt de inte kan se.
## Innan du läser diffen
1. Ta reda på vad ändringen ska åstadkomma. Läs PR-beskrivningen,
commit-meddelandena eller fråga.
2. Läs den kod som ändringen anropar och anropas av. En diff är aldrig
hela sanningen.
3. Kör testerna om det går. Notera vad som inte är testat.
## Granska i denna ordning
1. Korrekthet. Gör koden det som var avsikten? Leta efter felaktiga
villkor, off-by-one, null och undefined, felaktig hantering av tomma
listor, tidszoner, teckenkodning, avrundning, race conditions.
2. Säkerhet. Indata som inte valideras, SQL eller kommandon som byggs med
strängkonkatenering, hemligheter i kod, saknad behörighetskontroll,
känslig data i loggar.
3. Fel- och kanthantering. Vad händer när nätverket är nere, svaret är
tomt, filen saknas, användaren skickar 10 MB i stället för 10 kB?
4. Data och migrationer. Är migrationen reversibel? Låser den tabellen?
Fungerar gammal kod mot nytt schema under en utrullning?
5. Prestanda som märks. N+1-frågor, oindexerade sökningar, oändliga listor
utan paginering, synkrona anrop i loopar.
6. Tester. Testar de beteendet eller implementationen? Saknas testfall för
det som är svårast?
7. Läsbarhet, men bara när något faktiskt är svårt att förstå. Föreslå
inte omdöpningar för smakens skull.
## Skriv resultatet så här
Börja med en mening om helheten: går den att merga, med vilka ändringar?
Sedan varje fynd som en punkt:
- Fil och rad.
- Vad som är fel, i en mening.
- Varför det spelar roll: vilken situation utlöser felet.
- Förslag på fix, gärna som kod om det är kort.
Sortera efter allvarlighet. Blanda inte ihop "det här kraschar" med "det
här hade jag gjort annorlunda". Om det senare inte påverkar korrekthet,
skriv det under en egen rubrik "Övrigt" eller hoppa över det.
Om du inte hittar något: säg det, och säg vad du granskade så att läsaren
vet vad som täckts.
## Ton
Skriv till en kollega. Inga utrop, inga beröm, inga ursäkter. Var konkret.
När den gör nytta
- Innan du begär review av en människa: låt agenten ta första varvet.
- Som automatisk granskare i CI på varje pull request.
- När du ärvt en kodbas och vill veta var riskerna sitter.
Så installerar du
- Claude Code
- Spara som .claude/skills/kodgranskning/SKILL.md i projektet, eller ~/.claude/skills/kodgranskning/SKILL.md för alla dina projekt. Skillen laddas automatiskt när uppgiften matchar beskrivningen.
- Codex, Cursor och andra
- Verktyg som följer Agent Skills-standarden läser samma format. Lägg mappen kodgranskning/ där ditt verktyg letar efter skills, ofta .agents/skills/ eller motsvarande. Kontrollera dokumentationen för din version.
Om skills
En mapp med en SKILL.md som agenten laddar när uppgiften matchar. Kunskap och rutiner som följer med mellan sessioner.
Närliggande
SKILL.mdSkill SKILL.mdSkill AGENTS.mdInstruktionsfil
Säkerhetsgranskning av en webbfunktion
Går igenom en funktion eller ett API mot OWASP:s vanligaste sårbarheter plus de fel som agentbyggda appar ofta gör: läckta nycklar, saknade behörighetskontroller, promptinjektion.
Tillgänglighetsgranskning enligt WCAG 2.2 och svensk lag
Granskar ett gränssnitt mot WCAG 2.2 AA, EN 301 549 och de svenska kraven i DOS-lagen och tillgänglighetslagen för produkter och tjänster.
AGENTS.md som fungerar i Codex, Cursor, Copilot och Claude Code
En verktygsoberoende projektinstruktion i det format de flesta kodagenter läser. Kort nog att faktiskt läsas, konkret nog att göra skillnad.