SYNTHESIS NOTE
Agentic Systems and Tool Use

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.

Synthesis note · 2026-05-03 · sourced from Visual GUI Agents

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.

Inquiring lines that use this note as a source 4

This note is a source for these synthesized inquiries. Follow a line forward into its question, or open it to trace back to all of its sources.

Related concepts in this collection 5

This note in its neighbourhood — explore the map, then jump to a related concept in the list below.

Concept map
15 direct connections · 111 in 2-hop network ·medium cluster Open in graph ↗

Click a node to walk · click center to open · click Open in graph to see this note in the full knowledge graph

your link semantically near linked from elsewhere

Related papers in this collection 8

Papers most semantically related to this note, ranked by cosine similarity in the embedding space.

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