L20 · The method · 5 min
Vibe coding vs agentic engineering
In one sentence
Vibe coding means accepting whatever code an AI generates without a plan—fine for a throwaway experiment—whereas agentic engineering means directing your coding agent with a clear spec, small steps, protected secrets and verified checks so you build a real app you can trust.
Think of it like this
Building a sandcastle on the beach with no blueprint is great fun for an afternoon, until the tide comes in. If you are building a cottage where people will actually sleep and keep their belongings, you want a floor plan, solid walls and a lock on the door.
How it works
In February 2025, AI researcher Andrej Karpathy coined the term vibe coding for prompting an AI, accepting every change without reading or checking, and hoping it works. A year later, in February 2026, he named the mature discipline that followed: Definitionagentic engineeringBuilding software by directing AI agents and checking their work: you lead, the agent builds.Open in the glossary →—where AI agents write the code while you act as the architect and reviewer.
A Definitionquick experimentA throwaway try-out without a spec. Fine for testing an idea, never for something you'll publish.Open in the glossary → (vibe coding) has a real place: when you want to see how a layout feels or test a rough idea in an afternoon and throw the folder away afterward. Because nobody logs in, no real data is stored and it never goes public, skipping the spec is harmless.
The trouble starts when a quick experiment is published as a real app. Without a Definitionspec`SPEC.md`: what you're building, who it's for, what's in and out, and how you'll know it works.Open in the glossary → and a DefinitionplanThe spec split into small tasks, each finished and checkable on its own, in `tasks/plan.md`.Open in the glossary →, each new request breaks three older features; without DefinitionsecretAnything that opens your accounts: API keys, passwords, tokens. Kept only in Vercel and `.env.local`.Open in the glossary → rules, an API key can leak onto GitHub; without error handling or DefinitiontestA small program that checks your app does what it should, so a fix can't silently break later.Open in the glossary →s, visitors hit broken screens and nobody notices.
That is why Definitionspec-driven development (SDD)Agree on what to build (the spec) and a plan, then build one small, checked step at a time.Open in the glossary → is the default in the Agentic Makers Guide: agree on SPEC.md, break the work into tasks/plan.md, build one task per branch with a DefinitioncommitA checkpoint: a snapshot of what changed, with a short note. You can return to any commit.Open in the glossary → after every working step, test on a DefinitionPreviewA private test link Vercel makes for each change, so you can try it before it goes live.Open in the glossary → link, and merge only when the Definition of Done is met. You don't have to write code yourself to engineer a reliable product.
What it looks like in your project
By default, your agent follows spec-driven development on every project. If you ever want a throwaway sandbox just to explore an idea, tell it explicitly “this is a quick experiment”—and if you decide to keep the idea, start a clean project folder with a proper SPEC.md.
Copy for your agent
Check our project against the Agentic Makers Definition of Done: do we have an up-to-date SPEC.md, tasks/todo.md, protected secrets, error boundaries, and passing checks before we merge?
Quick check · 1 question