Does vibe coding actually keep humans in the loop?
Vibe coding claims to keep developers steering and validating, but do novices actually engage with code and testing the way the tool design assumes? The gap between intended and actual behavior could compound failures.
The vibe-coding study makes a clean conceptual distinction across three AI-assisted programming workflows that often get conflated. First-generation GenAI programming (2022-2023) was function-by-function: programmers prompted for each function and the AI completed code, with no chat interface integrated. Vibe coding is significantly more abstracted — programmers delegate larger tasks to the AI rather than prompting for individual functions, but the workflow is "not entirely hands off." The human stays in the loop for testing, refinement, and direction.
Agentic coding sits at the opposite pole. Defined for experienced developers, agentic coding is "autonomous software development through goal-driven agents capable of planning, executing, testing, and iterating tasks with minimal human intervention." The intent is hands-off: the human is not in the loop.
The interesting question the authors raise is empirical: to what extent does less-experienced students' "vibe coding" actually look like agentic coding in practice? The behavioral data (see Where do vibe coding students actually spend their debugging time?) suggests novices may be unintentionally drifting toward agent-style hands-off patterns — minimal code engagement, restart strategies, surface-level testing — without the metacognitive scaffolding experienced developers bring to genuinely agentic workflows.
The distinction matters because the design assumptions differ. Vibe coding tools assume an in-loop human who steers and validates. Agentic coding tools assume an out-of-loop human who specifies goals and accepts deliverables. When novice users behave as if they are using agentic tools (passive acceptance, minimal validation) inside a vibe coding interface designed for in-loop steering, the failure modes compound: AI-generated bugs go uncaught because the human did not stay in the loop the tool's design assumed.
The implication for tool design: the workflow assumption embedded in the interface needs to match the user's actual behavior, or design needs to actively scaffold the loop participation the tool's logic depends on. This connects to Does machine agency exist on a spectrum rather than binary? — the vibe-vs-agentic distinction maps to two non-adjacent levels of machine agency, and design failures occur when a user behaves at one level while using tools designed for another.
Source: Visual GUI Agents
Related concepts in this collection
-
Where do vibe coding students actually spend their debugging time?
When novices use AI coding tools, do they engage with the code itself, or do they primarily test the prototype? Understanding where students focus reveals how AI-assisted coding shapes learning behavior.
extends: this note defines the vibe vs agentic distinction; the companion paper provides the empirical behavioral data that exposes the novice-vibe-becomes-de-facto-agentic drift.
-
Does machine agency exist on a spectrum rather than binary?
Rather than viewing AI as either autonomous or controlled, does machine agency actually operate across five distinct levels from passive to cooperative? Understanding this spectrum matters because it shapes how users calibrate trust and control expectations.
extends: vibe vs agentic distinction is a specific instantiation of the agency spectrum; design failures arise when user-level and tool-level agency mismatch.
-
Does AI assistance actually harm the way developers learn?
When developers use AI tools while learning new programming concepts, does it impair their ability to understand code, debug problems, and build lasting skills? Understanding this matters for how we deploy AI in education and training.
complements: AI-assisted skill formation depends on cognitive engagement; vibe coding interfaces that allow drift-to-agentic remove the engagement that produces learning.
-
Does AI assistance remove a core learning channel through error work?
When AI reduces both the errors learners encounter and their need to resolve errors independently, does it eliminate the productive struggle that builds deep skill? This explores whether error-handling is essential to learning.
extends: vibe coding's prototype-level testing pattern is exactly the AI-removed learning channel — students don't encounter syntax errors and don't resolve them independently.
-
How should users control systems with unpredictable outputs?
When generative AI produces different outputs from identical inputs, how do interaction design principles help users maintain control and develop effective mental models for stochastic systems?
complements: vibe coding is the programming-domain instance of generative-variability interaction — users specify intent (build a thing that does X) and outputs vary in ways that make in-loop validation harder.
Click a node to walk · click center to open · click Open full network for a force-directed map
Original note title
vibe coding sits between first-generation completion and full agentic coding — humans delegate larger tasks but stay in the loop unlike hands-off agentic development