What is Vibe coding?

Vibe coding is building software by describing what you want to an AI coding agent in natural language and accepting its generated code, steering by intent and results rather than writing every line yourself.

Vibe coding is a way of working where you describe the outcome you want in plain language and let an AI coding agent produce the code, iterating by feel: run it, see what happens, ask for changes, and repeat. The term, popularized by Andrej Karpathy in early 2025, captures a shift from authoring every line to steering a model that authors most of them, where the human focuses on intent, taste, and verification rather than syntax. It works well for prototypes, glue code, and exploration, where speed of iteration matters more than reviewing each diff. The risk is that accepting code you do not fully understand can hide bugs, security holes, and design debt, so disciplined practice still leans on tests, review, and clear specs for anything that ships to production. Memory matters here too: an agent that remembers your stack, conventions, and past decisions vibes far more accurately than one starting cold each session, which is one reason persistent, shared agent memory has become part of the serious vibe-coding toolchain.