Modsætningen til Vibe Coding – Byg Professionelt med GitHub Spec Kit
Professionelle udviklere kender udfordringen: "vibe coding" kan være effektivt til hurtige eksperimenter og prototyper, men det har sine begrænsninger når det kommer til større, komplekse systemer der skal testes, skaleres og vedligeholdes. Resultatet kan være uigennemsigtig kode, der er svær at reproducere og vedligeholde. I praksis ender man sommetider i en uendelig omgang prompt-tennis, hvor fejl og rettelser flyver frem og tilbage – uden en klar struktur.
Til hobbyprojekter og mindre features kan iterativ udvikling fungere fint. Men for komplekse systemer og mission-kritiske applikationer kan vi have brug for mere struktur og forudsigelighed. Her kommer "spec driven development" (SDD) og eksempelvis GitHub Spec Kit ind i billedet som ét værktøj i værktøjskassen.
SDD
Spec-Driven Development tilbyder en struktureret tilgang til softwareudvikling, hvor specifikationer får en mere central rolle. I stedet for at være dokumentation der hurtigt bliver forældet, bliver specifikationerne til eksekverbare artefakter, der direkte kan generere implementeringer. Specifikationen bliver tegningen, der bygger softwaren.

Spec Kit er et toolkit bestående af et CLI-værktøj (specify
) og skabeloner. Det er bygget på en kernefilosofi om intentionsdrevet udvikling, hvor specifikationer definerer "hvad" før "hvordan". Det understøtter en række AI-kodningsagenter som GitHub Copilot, Claude Code, Gemini CLI, Cursor, Qwen, Open Code og Windsurf, og i øvrigt dybt integreret med Git for versionsstyring.
Forskellen på forskellige tilgange
Vibe Coding er en fleksibel, iterativ tilgang, hvor kode genereres løbende baseret på løse prompts. Det kan være effektivt til prototyper og eksperimentering.
Spec-Driven Development (SDD) er en disciplineret, faseopdelt tilgang, hvor specifikationer først definerer kravene, og derefter genereres en struktureret plan og opgaveliste, som AI'en følger for at bygge koden.
Mellem disse yderpunkter findes agile metodikker som Scrum og Kanban, der balancerer struktur med fleksibilitet og tillader løbende tilpasninger baseret på feedback.
Valget af tilgang afhænger af projektets størrelse, kompleksitet og kritikalitet. Mindre scripts og prototyper kan fungere fint med iterative tilgange, mens større systemer ofte drager fordel af mere struktur.
Spec Kits Fire Faser: De Strukturelle Kontrolpunkter
Spec Kit organiserer udviklingen i fire klare faser, der fungerer som kontrolpunkter for at holde både udvikleren og AI'en på sporet:
- Specify (Specificér): Her defineres hvad der skal bygges, og hvorfor, med fokus på brugerrejser og ønskede resultater. Det er kritisk, at man ikke fokuserer på den tekniske stak på dette tidspunkt. AI-agenten bruger denne beskrivelse til at generere et detaljeret specifikationsdokument (
spec.md
). Kommandoen er/specify
. - Plan (Planlæg): Her defineres hvordan applikationen skal bygges, herunder teknologistak, arkitekturvalg, datamodeller og afhængigheder. AI-agenten er forpligtet til at konsultere projektets Constitution (grundlæggende, ikke-forhandlingsbare principper) for at sikre, at den tekniske plan er i overensstemmelse med disse krav. Dette genererer implementeringsplaner og dokumenter som
plan.md
. Kommandoen er/plan
. - Tasks (Opgaver): Denne fase bryder specifikationen og planen ned i en prioriteret liste af små, handlingsrettede og testbare opgaver. Hver opgave er fokuseret nok til, at AI'en kan fuldføre den i ét hug, hvilket reducerer behovet for debugging. Opgavelisten (
tasks.md
) følger ofte en TDD-tilgang (Test-Driven Development), hvor tests skrives først. Kommandoen er/tasks
. - Implement (Implementér): Dette er eksekveringsfasen, hvor AI-agenten arbejder igennem opgavelisten. Udviklerens rolle skifter fra at styre til at verificere fokuserede ændringer, som løser specifikke problemer, i stedet for at anmelde store kode-dumps. Kommandoen er
/implement
.

Teknisk Fundament: Markdown og Git-Flow
Spec Kit bygger på to enkle fundamenter: ren Markdown til artefakter og et disciplineret Git-flow.
Alle centrale artefakter – spec.md
, plan.md
, tasks.md
og constitution.md
– er almindelige Markdown-filer. Det gør dem nemme at redigere, versionere og tilpasse. Hvis AI'en gætter forkert, kan du manuelt rette eller udvide krav uden proprietære værktøjer og justere skabelonerne efter behov.
Værktøjet er designet til at køre i et Git-repository. Når du starter en ny feature med /specify
, oprettes automatisk en isoleret feature-gren (fx 001-create-feature
), så arbejdet er organiseret, kan rulles tilbage og ikke skader eksisterende kode.
Konklusion
Spec Kit giver udviklere og arkitekter et struktureret værktøj til at udnytte AI'ens kraft til komplekse projekter, hvor kontrol og skalerbarhed er vigtige. Hvor hurtig iteration fungerer godt til eksperimenter og mindre features, tilbyder Spec-Driven Development en verificerbar strategi for større, kritiske systemer.
Set fra et professionelt udviklerperspektiv kan Spec Kit være et værdifuldt supplement til den eksisterende værktøjskasse. Det bringer disciplin og struktur til AI-drevet udvikling, når projektstørrelse og kompleksitet kræver det, selvom det også introducerer overhead (der er godt nok mange md-filer) der skal afvejes mod projektets behov.
Indtil videre er Spec Kit ret kompleks at bruge og kræver en hel del styring. Men det er første version af et AI SDD-værktøj, og når først det modnes og gøres mere tilgængeligt, kan det blive et nyttigt værktøj for hvordan vi bygger større software-systemer i en AI-drevet verden.
Hvis du vil prøve det, kan du finde det på GitHub, og jeg vil anbefale dig at se videoer omhandlende værktøjet på YouTube for at få en bedre forståelse af, hvordan det fungerer i praksis.