Spec-driven development vs. vibe coding: Vattenfall?
Specifikationer som källa till sanning, eller långsam ceremoni?
Spec-driven development (SDD) inledde 2026 som det seriösa alternativet för utvecklare som ville motverka drift i “vibe coding”.
Vibe coding är ett AI-drivet programmeringssätt där utvecklare beskriver önskad funktionalitet på naturligt språk och låter AI-verktyg generera koden automatiskt – med minimal direkt kodning.

Termen myntades av OpenAI-medgrundaren Andrej Karpathy i februari 2025. Han beskrev det som “inte riktigt kodning” utan snarare observation, beskrivning och iterering – ett arbetsflöde där programmerare fokuserar på att styra AI:s output istället för att skriva kod rad för rad. Till 2026 hade vibe coding gått från ett sociala-medier-koncept till standardterminologi för hur stora grupper av utvecklare, grundare och icke-ingenjörer faktiskt bygger mjukvara.
För en verktygspecifik uppdelning, se Jämförelse av AI-kodingsassistenter.
Vibe coding ligger längst ut på spektrumet för AI-stött utveckling. Konventionell AI-stött utveckling använder verktyg som autocomplete eller förslag i koden medan utvecklaren fortfarande skriver mestadels logiken. Vibe coding vänder på denna proportion: utvecklaren skriver nästan inget direkt, utan styr istället AI:n med intentioner och itererar på outputen.
Karpathys ursprungliga formulering var medvetet avslappnad. Han beskrev att man accepterar AI-förslag i sin helhet, använder röstinput och inte läser diffar noggrant. Poängen var inte slöshet – det var att flaskhalsen hade förskjutits från skrivande till tänkande, och ett nytt arbetsflöde förtjänade ett nytt namn.
I början av 2026 beskriver vibe coding en bred palett av praktiker:
Den gemensamma tråden är naturligt språk som huvudgränssnitt och AI som huvudproducent av kod.
Arbetsflödet börjar med en prompt. Användare beskriver vad de vill ha på vanligt engelska och AI-kodingsassistenten genererar fungerande kod. Utvecklaren granskar, testar och förfinar med uppföljande promptar istället för direkt redigering.
En typisk vibe coding-loop:
Iterationshastigheten är den verkliga förändringen. Det som skulle ta timmar av manuell kodning kan ta minuter med en kapabel AI-agent.
Inte alla vibe coding-verktyg fungerar på samma sätt. Det finns en viktig distinktion mellan kompletteringsverktyg och agenta verktyg:
Kompletteringsverktyg (GitHub Copilot, Continue.dev) föreslår kod medan du skriver. Utvecklaren sitter fortfarande i förarsätet och skriver mestadels strukturen.
Agenta verktyg (Cursor Agent, Claude Code, OpenCode, OpenHands) kan planera flerstegs-uppgifter, läsa och redigera flera filer, köra kommandon och iterera på misslyckanden. Utvecklaren beskriver ett slutmål och agenten arbetar mot det.
Vibe coding i Karpathys strikta mening är mestadels ett agentiskt arbetsflöde. Kompletteringsverktyg accelererar kodning; agenta verktyg ersätter betydande delar av det.
| Verktyg | Typ | Bäst för |
|---|---|---|
| Cursor | IDE-fork (VS Code) | Projektbrett agentiskt redigerande, stora kodbas |
| Claude Code | Terminalförst agent | Multi-fil-uppgifter, lokala eller molnbaserade LLM-bakgrunder |
| GitHub Copilot | IDE-tillägg | Förslag in i koden, PR-granskning, brett språkstöd |
| OpenCode | Öppen källkod terminalagent | CLI-arbetsflöden, automation, self-hostade modeller |
| Replit | Molnbaserad IDE | Prototyper i webbläsaren, omedelbar deployment |
| Lovable | Molnbaserad appgenerator | Fullstack app-generering från naturligt språk |
| Windsurf | IDE-fork | Multi-filkontext, sessionminne, agentiska flöden |
För en djupare jämförelse, se den fulla guiden för AI-utvecklingsverktyg.
Vibe coding:s risker växer med vad som byggs.
AI-genererad kod saknar ofta korrekt felhantering, defensiv validering, loggning och täckning av gränsfall. Koden fungerar på den lyckliga vägen men ackumulerar skuld som bara blir synlig under belastning eller när något kraschar i produktion. Utvecklare som accepterar AI-output utan granskning skapar underhållsbördor de kommer att betala av senare – ofta vid sämsta möjliga tidpunkt.
AI-modeller genererar kod från mönster i träningsdata. Dessa mönster inkluderar osäkra praxis: risker för SQL-injektion, felaktiga autentiseringsflöden, saknad inmatningsrensning och hardade inloggningsuppgifter. En utvecklare som inte läser diffen innan commit kan lansera en sårbarhet utan att förstå det.
Agenta verktyg kan göra stora förändringar över flera filer. När dessa förändringar accepteras utan arkitektonell granskning blir resultatet kod som klarar tester idag men är svår att utöka eller resonera kring om sex månader. AI:n modellerar inte långsiktig underhållbarhet av vad den producerar.
När något kraschar i AI-genererad kod har utvecklaren som inte läste den noggrant ingen mental modell av varför den skrevs på det sättet. Felsökning kräver först att man förstår kod man inte skrev och kanske inte ens granskat – vilket kan ta längre tid än att skriva den korrekt i första hand.
Juniorutvecklare som enbart använder vibe coding kanske inte bygger den grundläggande förståelse som behövs för att felsöka, optimera eller arkitektera system utan AI-hjälp. Detta är en karriärrisk för individer och en teamrisk för organisationer som befordrar vibe kodare till roller som kräver djupare ingenjörsmässigt omdöme.
Vibe coding fungerar bäst när det parats med ingenjörsmässig disciplin.
Granska varje diff innan du commitar. Hastighetsvinsten ligger i generation, inte granskning. Att läsa AI:s output är inte valfritt – det är hur du fångar säkershålor, dåliga mönster och kod som tekniskt kör men inte gör det du tänkte.
Använd strukturerad projektkontext. Verktyg som Claude Code använder CLAUDE.md och Skills för att ge agenten konsekvent, projectspecifik kunskap. En välskött CLAUDE.md innebär att AI:n förstår dina konventioner, föredragna bibliotek och arkitektoniska begränsningar utan att du behöver förklara dem i varje prompt.
Paketera upprepbara arbetsflöden i Skills. Om du upptäcker att du promptar samma checklista eller deploy-playbook, extrahera det till en återanvändbar Claude Skill. Återanvändbara, testbara Skills är det strukturerade alternativet till kopierade och klistrade promptar.
Reservera det för rätt omfång. Vibe coding är starkast för prototyper, interna verktyg, personlig automation och funktioner som kommer granskas innan lansering. Kärninfrastruktur, säkerhetskritisk logik och system med strikta prestandakrav förtjänar mer medveten ingenjörskonst.
Kör automatiserade tester på AI-output. Behandla AI-genererad kod som vilken extern bidrag som helst: kör testsuiten, lägg till tester för gränsfall AI:n missade och misslyckas med bygget vid regressioner innan merge.
Involvera en senioringenjör för arkitekturbeslut. En senioringenjör bör granska alla förändringar som rör datamodeller, autentiseringsflöden, API-kontrakt eller gränser mellan tjänster – oavsett om koden kom från AI eller en juniorutvecklare.
Avvägningarna ser olika ut beroende på kontext.
Ensamprojekt och MVP: Vibe coding är nära optimalt. Utvecklaren har full kontext, granskar sin egen output och kan röra sig snabbt utan samordningskostnad. Risken för teknisk skuld är verklig men hanterbar – du är den som kommer att betala av den.
Små team: Produktivt med tydliga avtal om när AI-genererad kod behöver granskas och av vem. Team som använder delade CLAUDE.md eller AGENTS.md-filer och standardiserade promptar får mer konsekvent output och färre överraskningar.
Enterprisesystem: Kräver styrning. AI-genererad kod måste gå igenom samma granskningsportar som vilket annat bidrag som helst. Produktivitetsvinsten är verklig, men den håller bara om kvalitetskontroller skalar med användningen. Organisationer som låter vibe coding kringgå kodgranskning, säkerhetsskanning eller arkitektonell godkännelse skapar ackumulerad risk.
Vibe coding-verktyg kommer i fyra huvudformer, var och en med olika avvägningar:
Rätt val beror på om din flaskhals är setup-friction, kodbasintegration eller automationskapacitet.
Specifikationer som källa till sanning, eller långsam ceremoni?
Spec-driven development (SDD) inledde 2026 som det seriösa alternativet för utvecklare som ville motverka drift i “vibe coding”.
Få nya inlägg om system, infrastruktur och AI-ingenjörskonst.