When people talk about taking over a vibe-coded project, they expect a mess. That is usually not what is there. The formatting is consistent, the names are reasonable, and it runs.
The problem is a different one. Nobody has read it, including the person who shipped it. So the same logic turns up in more than one place. The agent wrote it fresh each time instead of finding what was already there. And there is no record of why anything is the way it is.
I want to share something that's been sitting with me not a product launch today, but a shift in thinking that I think every founder here should stress-test.
An agent wrote this for me a while back a simple memoization wrapper for async calls. It looked completely reasonable, passed my quick manual test, and I moved on.
js
function memoizeAsync(fn) { const cache = new Map(); return async function (...args) { const key = JSON.stringify(args); if (cache.has(key)) return cache.get(key); const result = fn(...args); cache.set(key, result); return result; };
}
There's one bug in here that won't show up in a normal test run it only shows up once, in production, under a specific condition.
Setting IDEs aside for this one - Cursor, Windsurf, VS Code + Copilot live in a different conversation. I'm specifically curious about CLI-and-agent territory.
A year ago the answer for most of us was straightforward: open Claude Code or Codex, talk to it, ship code. That CLI was the entry point.
I won 3rd place in Google and Kaggle AI Agents global Capstone competition. I wanted to share this here in case anyone is interested in discussing the topics learnt there and to further improve my skills. I joined this competition to learn and winning was an amazing bonus. Here are a few lessons I learned from this experience: 1. Clear guidance matters more than powerful AI AI can do a lot of the work, but the quality of the outcome depends on how clearly we guide it. The model may generate the output, but humans still need to define the problem, context, constraints, and expected behavior. 2. Fast building still needs strong architecture There are many ways to execute and build a project. The sustainable path requires a strong structure and architecture from the beginning. Moving fast without structure often creates more rework later. 3. Trust your users before trusting AI AI can help analyze a problem, but real user behavior tells you whether the problem is worth solving. The strongest products begin with genuine user pain, not an interesting technology looking for a use case. 4. Vibe coding is changing product development Vibe coding is changing how product development and software development lifecycles work. The real advantage comes from combining rapid AI-assisted development with spec-driven and behavior-driven methodologies. 5. Better structure means fewer tokens and fewer hallucinations A well-designed project structure helps AI understand what to build, how to build it, and which constraints to follow. This reduces unnecessary context, token usage, hallucinations, and repeated work. 6. Building with AI changes the role of the builder Building with AI is becoming less about writing every line of code and more about defining the problem, designing the system, setting boundaries, testing behavior, and evaluating outcomes. There is a lot more advanced topics I learned about agent architecture, MCP, skills, security, evaluations, observability, and building with AI. Feel free to reach out if anyone would like to discuss this.