“Vibe coding” is one of the most-used terms in this wiki, and its pages do not agree on what it means. Some hold it to one narrow criterion: whether the person building the software reads the code. Others use it for any software built mainly by talking to a model, reviewed or not. A third group uses it as the name of an early stage that some other practice replaces. This page sets out those answers, who gives each one, and what stands behind it. It does not decide between them. Where the pages disagree, the disagreement is what this page records.
The coinage
The pages agree on where the term comes from. Vibe Coding credits Andrej Karpathy with coining it in early February 2025. Karpathy’s description was of fully giving in to the vibes and forgetting that the code even exists: accepting every diff without reading it, pasting error messages back in with no comment, and working around bugs the model cannot fix, or asking for random changes until they go away. Two publishers and three authors fail to understand what “vibe coding” means quotes the tweet in full. It stresses two phrases: “forget that the code even exists” and “It’s not too bad for throwaway weekend projects”. Cursor records the setup Karpathy described: Cursor Composer driven by a Sonnet model, talked to by voice rather than typed at.
Several other pages also attribute the term to Karpathy:
- Vibe Coding vs. Agentic Coding: Fundamentals and Practical Implications of Agentic AI
- Vibe coding: programming through conversation with artificial intelligence, which calls his February 2025 post “the Karpathy canon”
- 谈谈 AI 编程工具的进化与 Vibe Coding
- Claude Code를 활용한 예측 가능한 바이브 코딩 전략
- Vibe Vibe
- 진짜 ‘딸깍’으로 다 되나요? — 보수적 개발자가 AI 에이전트로 프로덕트를 릴리즈하며 깨달은 것들
2025年のアウトプットふりかえり dates the shift in how software was written to February 2025. It credits one publication from that month with making vibe coding a talking point, and summarises the month as the human moving from the driver’s seat to the passenger seat.
The pages do not disagree about where the term came from. They disagree about how much of Karpathy’s description the term still carries.
Answer 1: vibe coding means not reading the code
The most sharply drawn answer comes from Simon Willison. Not all AI-assisted programming is vibe coding (but vibe coding rocks) reduces the term to one observable test: vibe coding is building software with an LLM without reviewing the code it writes. Code that an LLM wrote but that has since been reviewed, tested and understood is software development, and the LLM’s involvement is immaterial. AI-Assisted Programming gives the umbrella category this narrow term falls under.
Willison presents the narrow reading as a defence of vibe coding, not an attack on it:
- It lowers a steep barrier to programming for people without a computer science degree or a bootcamp.
- It is the best way for experienced developers to build intuition about LLMs.
In Two publishers and three authors fail to understand what “vibe coding” means he calls the distinction “a hill I am willing to die on”. He adds that vibe coding is for people who are not software developers, not for people who already are.
Willison was still holding the same line in 2026:
- Writing about Agentic Engineering Patterns keeps the term in its original definition: coding where you pay no attention to the code at all. It notes the term is today often associated with non-programmers.
- Vibe coding and agentic engineering are getting closer than I’d like describes it as not looking at the code at all, possibly without knowing how to program, and judging the result only by whether it works.
Other pages adopt or restate the same boundary:
- 谈谈 AI 编程工具的进化与 Vibe Coding reads Karpathy’s post as four points: forgetting the code exists, fixing even small errors through the AI, not reviewing what the AI writes, and accepting that this is fine for throwaway projects. It argues that much of the argument about vibe coding comes from not separating two different practices.
- Vibe Coding: Practice, Performance, Productivity, and Risk—A State-of-the-Art Review adopts Willison’s boundary for its definition. What sets vibe coding apart is the developer’s disengagement from the generated code, validating by whether the output runs. On that boundary, the conversational-IDE workflow, in which the developer still reviews and tests, falls outside vibe coding proper.
- SWE-chat: Coding Agent Interactions From Real Users in the Wild makes the narrow reading measurable. It counts a session as vibe coding when more than 99% of committed code was written by the agent, and reports that share doubling from about 20% to over 40% over its three-month window.
- Humans and Agents in Software Engineering Loops calls “humans outside the loop”, leaving the how loop to agents, the common definition of vibe coding.
- Vibe Coding records Andrew Connell’s account. Vibe coding hands ownership of the code to the AI. Agentic engineering keeps the developer’s engineering judgment in the driver’s seat.
- Specification-Driven Development as the Foundation of AI-Native Enterprise Software Engineering sets vibe coding against spec-driven development as one of two archetypes of AI-assisted practice. In vibe coding, the specification exists only as implicit intent spread across working memory and conversation history, and acceptance comes down to observational sampling of behaviour. It limits “ungoverned” to practices where acceptance comes from sampling behaviour rather than checking against an explicit contract, “not to AI assistance as such”.
Answer 2: vibe coding means building software by conversation
A second group of pages uses the term for any development led by prompts, including work where the developer reads and steers the output.
-
Vibe Coding vs. Agentic Coding: Fundamentals and Practical Implications of Agentic AI defines vibe coding as a human-centric model in which the developer stays an active co-creator who reviews and refines each generated piece. It sets this against Agentic Coding, where autonomous agents plan and execute multi-step tasks. Vibe Coding notes that this description is close to ordinary, reviewed AI-assisted programming, not Karpathy’s “forgetting that the code even exists”.
-
Vibe coding: programming through conversation with artificial intelligence takes vibe coding as writing code mainly by interacting with code-generating models. Because the practice was still being negotiated, its only test for inclusion was that programmers described their own activity as vibe coding. It observed code review that was rapid and impressionistic rather than absent.
-
Building Software by Rolling the Dice: A Qualitative Study of Vibe Coding defines vibe coding as building software mainly through prompts. It notes the term has become an umbrella for practices ranging from full delegation to autonomous agents to agent-supported engineering with manual editing and inspection.
-
A Survey of Vibe Coding with Large Language Models defines it as validating an implementation “through outcome observation rather than line-by-line code comprehension”. Yet it files five development models under the term, only one of which it calls closest to the original definition. Vibe Coding Development Models names that one the Unconstrained Automation Model and lists the rest: conversational collaboration, planning-driven, test-driven, and a context-enhanced layer that can be added to any of them. 基于大语言模型的 Vibe Coding 综述 relays the survey’s framing as a three-way relationship between a human who states intent and judges quality, a project, and a coding agent.
-
Vibe Coding in Software Development: A Multivocal Literature Review counts how 36 sources frame the term:
Framing Sources Share Socio-technical development practice 25 69% Natural-language-to-code or prompt-based development 24 67% Agentic or semi-autonomous development 18 50% Copilot or pair programming 7 19% It reads vibe coding as an iterative control system in which verification is moved elsewhere rather than removed.
-
The uncomfortable truth about vibe coding defines it broadly as building software by conversing with AI rather than writing every line yourself.
-
A Nova Era do Desenvolvimento de Software: do Vibe Coding à Engenharia Agêntica defines it as describing what you want, accepting the code the AI produces, and pasting any error message back into the chat for the AI to fix.
-
Claude Code를 활용한 예측 가능한 바이브 코딩 전략 starts from Karpathy’s deliberately extreme definition but says the term is used more broadly in practice. Its guide covers a mode in which the developer does read the code while the LLM leads generation.
-
Boas práticas de vibe coding: o que não dá pra deixar passar strips the term of its pejorative sense. It treats vibe coding as a cycle of specifying, mapping trade-offs, handing execution to the model and validating the result.
-
pj-double: メルカリの開発生産性向上に向けた挑戦 — AI-Native化が辿り着いたASDDとプロセス変革の全貌 describes vibe coding as sending the AI instructions step by step and correcting course while watching its output. That is a synchronous, interactive practice, not a hands-off one.
-
Agent-Spec Driven Development records Mercari’s CTO contrasting ASDD with “intuitive” vibe coding.
-
Mise en Place for Agentic Coding: Deliberate Preparation as Context Engineering Methodology calls vibe coding the dominant workflow pattern: the developer states an intent, the agent produces code, and mismatches are fixed by iterative correction.
-
Spec-driven development with AI: Get started with a new open source toolkit describes it as describing a goal and getting back code that often looks right without quite working.
-
Context Before Code: An Experience Report on Vibe Coding in Practice studies “conversational” vibe coding on two production-oriented systems.
-
Vibe Coding Kills Open Source starts from vibe coding as an AI agent building software by selecting and assembling open-source components, often without the user engaging with those components’ maintainers.
Several products and tutorials also use the broad sense, some of them approvingly:
- Vibe Vibe treats vibe coding as AI programming for learners with no programming background, glossed as moving “from Coder to Commander”.
- Cloudflare VibeSDK describes itself as an open-source vibe coding platform.
- VibeCraft and Программирование для тех, кто не пишет код: как устроен VibeCraft present a chat-driven app builder as a response to vibe coding’s limits with general-purpose assistants.
- Rekayasa Perangkat Lunak: Bongkar Mitos, Sambut Vibe Coding! introduces vibe coding as one of the new approaches AI has brought into software engineering.
- Ralph Wiggum as a “software engineer” calls its own looping technique “full hands-off vibe coding”.
Where the two answers split
Is review part of the practice?
Here the two answers exclude each other. On Willison’s test, any work in which the code is reviewed is not vibe coding. Two broad-sense sources put review inside it:
- Vibe Coding vs. Agentic Coding: Fundamentals and Practical Implications of Agentic AI builds per-piece review into its definition.
- Vibe coding: programming through conversation with artificial intelligence observed lightweight review in every session it analysed.
Material Disengagement states the empirical side of that disagreement. In the sessions studied, programmers still scanned diffs and edited and debugged directly, only selectively rather than as the norm. The code did not stop being a material.
Building Software by Rolling the Dice: A Qualitative Study of Vibe Coding reports the disagreement among practitioners themselves. Some argued for a strict definition. Others rejected any boundary between vibe coding and traditional software engineering.
Who does it?
Willison ties vibe coding to people who are not professional developers, in Two publishers and three authors fail to understand what “vibe coding” means and Writing about Agentic Engineering Patterns. On the broad side, Программирование для тех, кто не пишет код: как устроен VibeCraft builds a product for people without a technical background. Vibe Vibe is aimed at learners with no programming background, though traditional programmers are among its intended readers too.
The VibeSec Reckoning describes a prototype built by a “citizen builder”, a non-technical user building with AI. The governance framework in Model AI Governance Framework for Agentic AI warns that users who vibe code with agents may lack the software engineering expertise to review the robustness of the code. Automation Bias uses the same case as its example of an overseer without the expertise to judge what they approve.
The empirical studies look at a different population:
- The corpus of Vibe coding: programming through conversation with artificial intelligence contained no non-programmers. Its finding that vibe coding needs programming expertise holds only for vibe coders who have it.
- Building Software by Rolling the Dice: A Qualitative Study of Vibe Coding counts both professional programmers and people with no formal training as vibe coders.
- Professional Software Developers Don’t Vibe, They Control: AI Agent Use for Coding in 2025 finds that experienced developers do not vibe code. They keep control of design and implementation through planning and supervision.
Is it a category or a stage?
Several pages use the term for the first step of a transition, not for a category to keep:
- A Nova Era do Desenvolvimento de Software: do Vibe Coding à Engenharia Agêntica calls it the phase most people pass through first.
- Vibe Coding records a handbook chapter that treats it as a stage in a progression of programming paradigms and argues the stage is unstable at team scale.
- Impact de l’IA sur l’état de l’art de l’ingénierie logicielle en 2026 holds that where vibe coding dominated early 2025, people now speak instead of Context Driven Engineering or agentic engineering.
- Agentic Agile-V: From Vibe Coding to Verified Engineering in Software and Hardware Development frames the future as “not vibe coding at scale” but verified engineering.
- Spec-Driven Development for Agentic Software Engineering: Harnessing Human–Agent Teamwork treats vibe coding as one of four paradigms, and calls the step to it regressive on accountability, verification and onboarding.
- Agentic Coding presents agentic coding as complementary to vibe coding, not a replacement for it. On that account, vibe coding’s exploratory prototyping feeds the later phases.
- Sequoia Ascent 2026 summary gives Karpathy’s own 2026 framing: vibe coding raises the floor, and agentic engineering raises the ceiling.
Names offered for what vibe coding is not
Holding the term narrow creates a need for a word for the rest. Each page below offers or uses a different one.
The names compete with each other too. Vibe Engineering records Willison’s February 2026 update that “agentic engineering” appeared to be coming out on top for the same idea. Agentic Engineering says that term was proposed to stop “vibe coding” covering two different activities, and that it arrived after months of debate over “vibe engineering”.
What Is Spec-Driven Development? A Practitioner’s Guide (and When to Skip It) draws a related line by where each method keeps its truth. For vibe coding it is the last prompt. For TDD it is the unit tests, for BDD the behaviour examples, and for spec-driven development the approved specification.
Is the narrow line holding?
The narrow camp’s own pages report it losing ground:
- Semantic Diffusion records Willison applying Martin Fowler’s term to vibe coding’s reception in March 2025. The term’s definition was weakening as it spread.
- Two publishers and three authors fail to understand what “vibe coding” means takes as its occasion two books that used the term for professional work: Vibe Coding: Building Production-Grade Software With GenAI, Chat, Agents, and Beyond and the book later retitled Beyond Vibe Coding. It concedes the argument is probably lost.
- Karpathy’s reply, as Vibe Coding and Semantic Diffusion record it, was that settling on definitions would take time. He added that he himself rarely goes full-out vibe coding.
By 2026 the erosion shows from the other side as well:
- Vibe coding and agentic engineering are getting closer than I’d like reports Willison no longer reviewing every line agents write, including for production work. He describes the line between the two categories blurring in his own practice, and names the normalization of deviance as the risk.
- Humans and Agents in Software Engineering Loops says some interpretations of spec-driven development are much the same as vibe coding.
- Spec-driven development records one spec-driven plugin that is described as not a vibe coding solution, yet behaves like one when run from a single prompt with no human checkpoints.
- From Prompt to Process: a Process Taxonomy and Comparative Assessment of Frameworks Supporting AI Software Development Agents warns that, without evidence behind them, process frameworks for agents risk merely institutionalising vibe coding under extra terminology.
When each answer says it fits
On both readings, the pages mostly place vibe coding at prototypes, personal tools and throwaway work. They differ on what rules it out.
Missing review. The narrow camp’s objection is that nobody reads the code.
- Not all AI-assisted programming is vibe coding (but vibe coding rocks) sets its conditions as low stakes, care with secrets and private data, the load placed on other services, and hard billing limits.
- Claude Artifacts is its example of a sandbox that limits what unread code can reach.
- Cursor is its example of a tool with far fewer safety rails.
- Vibe coding and agentic engineering are getting closer than I’d like calls vibe coding fantastic for a personal tool where a bug hurts only you, and grossly irresponsible when building software for other people.
Structural limits. Pages using the broad sense point elsewhere:
- No specification. The uncomfortable truth about vibe coding reports vibe-coded projects hitting a wall around three months in, and blames building without specifications. Its rule is: if a unit or functional test can validate the output, the scope is small enough to vibe.
- Architecture. Context Before Code: An Experience Report on Vibe Coding in Practice found vibe coding reliable for scaffolding but not for tenant isolation, access control or asynchronous processing unless they were made explicit. Non-Delegation Zone names those areas.
- Scaling to a team. Spec-Driven Development for Agentic Software Engineering: Harnessing Human–Agent Teamwork names five limits: non-reproducibility, non-auditability, non-transferability, review saturation and noise scaling.
- Sharing practice. pj-double: メルカリの開発生産性向上に向けた挑戦 — AI-Native化が辿り着いたASDDとプロセス変革の全貌 blames vibe coding’s synchronous nature for leaving each developer’s judgement in chat logs, where it is neither transparent nor reusable.
Other pages name specific costs:
- Trust Debt (from 停止“氛围编程”(Vibe Coding),拥抱新一代软件工程)
- Fast-Integration Debt
- Context Momentum
- Rolling the Dice
- Review Bottleneck
- the security incidents in The VibeSec Reckoning, which led to a Security Context File
- the security review premise of AI-assisted code review with Antigravity CLI and SDK
- the effect on open-source maintainers modelled in Vibe Coding Kills Open Source
Practitioners describe the same limits from their own work:
- AI に t-wada の TDD を頑張らせる finds vibe coding left unattended regularly produces unusable output.
- Keep Agentic AI Simple: A Practical Workflow for Software Development declines to vibe code because of problems it expects in the long term.
- 2025 年 AI 编程趋势:智能体 10 倍生产率放大下的“粪围”蔓延 sees AI’s amplification of existing habits most clearly in vibe coding.
- Organiser une équipe de développement à l’ère de l’IA - Part III links poorly controlled vibe coding to hard-to-maintain “AI slop”.
- ACP 协议 + 多 AI 编程智能体:企业研发的新生产力平台 contrasts enterprise work, where people remain responsible for their code, with vibe-coding demos.
- Taming Agents in the Mercari Web Monorepo (restated in AGENTS.md) says the project cannot rely on CSS written by vibe coding.
- Practical Implementation Report on Introducing Spec-Driven Development Using AI Agents in Software Development PBL judges spec-driven development more suitable than vibe coding for a course teaching application development.
- The New Software Lifecycle puts the dividing line at verification, not at AI use itself.
Some pages from both camps also make a positive case:
- Specification-Driven Development as the Foundation of AI-Native Enterprise Software Engineering affirms vibe coding as legitimate for ideation, prototyping, learning and accessibility.
- Vibe Coding records Connell’s case that it lets non-engineers express a prototype in natural language.
What stands behind each answer
The narrow answer rests on argument, not measurement. Not all AI-assisted programming is vibe coding (but vibe coding rocks) is explicitly definitional, and cites Karpathy’s wording and the author’s own practice.
The broad answer is mostly what the empirical and survey literature uses, and that literature is young:
- Studies of streamed sessions. Vibe coding: programming through conversation with artificial intelligence counted a session as vibe coding only when the programmer described it that way, so it measures how people use the word, not a fixed definition. Building Software by Rolling the Dice: A Qualitative Study of Vibe Coding calls itself a snapshot rather than a definition of what should count as vibe coding.
- Literature reviews. Vibe Coding in Software Development: A Multivocal Literature Review describes its corpus as early and proposal-driven, with 40% grey literature. A Survey of Vibe Coding with Large Language Models notes that empirical research on the practice lacks longitudinal validation.
- Recent, contested terms. Specification-Driven Development as the Foundation of AI-Native Enterprise Software Engineering and Spec-Driven Development for Agentic Software Engineering: Harnessing Human–Agent Teamwork both call their central terms young or contested.
The quantified findings each adopt a definition first and then measure against it:
- SWE-chat: Coding Agent Interactions From Real Users in the Wild uses its 99% threshold.
- Vibe Coding: Practice, Performance, Productivity, and Risk—A State-of-the-Art Review uses Willison’s boundary.
A figure from one page therefore measures that page’s version of the term, not the term as other pages use it.