Skip to content
coden

What is vibe coding, and how to do it without losing control

The meaning of vibe coding, where the term came from, when it is fine and when it hurts — plus five habits that keep the speed without giving up your codebase.

7 minutes Matěj Žalmánek 2026-10-26

“Vibe coding” went from a single post to a dictionary entry in under a year. Some people use it to mean “building software by talking to an AI”, others as an insult for code nobody understands. Both are partly right. Here is what vibe coding actually means, where it works, where it hurts — and how to get the speed without losing control of your project.

1. What is vibe coding

Vibe coding is building software by describing what you want to an AI and accepting what it produces, without reading or understanding the code. You judge the result by running it: if the app does what you wanted, you move on; if not, you paste the error back and ask again.

The key part of the definition is the last one. Using AI to write code is not vibe coding by itself. It becomes vibe coding when you stop looking at the code.

2. Where the term came from

The phrase comes from Andrej Karpathy, co-founder of OpenAI and former head of AI at Tesla. In February 2025 he described a new way of programming where you “fully give in to the vibes” and “forget that the code even exists” — talking to the AI, accepting all changes, pasting errors back without comment. He presented it as fine for throwaway weekend projects.

The name stuck far beyond that. By the end of 2025, Collins Dictionary chose “vibe coding” as its Word of the Year.

3. Vibe coding vs AI-assisted programming

Vibe codingAI-assisted engineering
Who writes the codeAIAI
Who reads the codenobodyyou
How you check it“it seems to work”tests, review, design
Who owns the resultnobody reallyyou
Good forprototypes, personal toolsanything that will live on

The tools are the same. The difference is whether a human still understands and is responsible for what goes in.

4. When vibe coding is fine

  • Prototypes — to see whether an idea works before you invest in it.
  • Throwaway scripts and one-off tools — rename a thousand files, convert a CSV, build a quick internal dashboard.
  • Personal projects where the only user is you and the worst case is that it breaks.
  • Learning what is possible — getting a first version on screen in an unfamiliar framework.

5. The risks of vibe coding

  • Security. Secrets in the code, missing authorization checks, SQL built from user input. “It works” says nothing about “it is safe”.
  • Maintainability. Each fix is a new layer on top of code nobody understands. At some point the AI cannot untangle it either.
  • Hidden bugs. The happy path works; edge cases, concurrency and data loss show up later — with real users.
  • No owner. When something breaks at 2 a.m., someone has to understand the code. If that someone was never there, you start from zero.

6. Vibe coding tools

  • App builders in the browser — describe an app, get a running one. The fastest path to a prototype, the least control.
  • AI editors such as Cursor — the AI works inside your IDE, you see every change.
  • Terminal coding agents — Claude Code, Codex, OpenCode. They work in your real project, run your tests and commands. Compared in Claude Code vs Codex vs OpenCode.

The tool does not decide whether you vibe code. Claude Code can be used either way; it depends on whether you read what it does.

7. How to vibe code without losing control

You do not have to choose between speed and understanding. A few habits keep most of the speed and remove most of the risk:

  1. Let the agent propose a design first. Read the plan, not every line — a wrong architecture is far easier to catch before the code exists.
  2. Tests are the contract. Have the agent write tests for what you asked for and keep them green. You review the tests; they check the code.
  3. Small steps, frequent commits. One task, one commit. When something goes wrong, you roll back one step, not a day.
  4. Read the diff of anything that touches security, data or money. Everything else can be skimmed.
  5. Write your rules down once — in CLAUDE.md or a Claude Code skill — instead of repeating them in every prompt.

We wrote about this approach in more depth in How to approach development with AI agents: you as the architect and tester, the agent as a fast junior.

8. Vibe coding from your phone

Much of vibe coding is waiting: the agent works, you check the result, you ask for the next change. That loop does not need a desk. With coden the agent works on your computer while you give it tasks from your phone, approve its commands, and try the running app right on the phone in Preview — with the tests and the git history one tap away, so you can still keep an eye on what goes in.

Do you see it differently? Write to support@coden-app.com.

An Agent on your computer, driven from your phone