I ve been experimenting a lot with AI tools like V0, Lovable, and Bolt.new to build small products and prototypes.
One pattern keeps showing up: most ideas don t fail because the idea is bad. They fail because the prompt is vague, confusing, or incomplete.
AI isn t a mind reader; it does exactly what you ask. If your prompt is fuzzy, your output will be too.
For example, I recently built PublicWall off a single well-structured prompt. Before that, I wasted hours on iterations that were mostly me not clarifying what I actually wanted the AI to do.
I've been experimenting with a workflow where I give an AI a predetermined test suite and ask it to write only enough code to pass those tests. Think of it as "building the app from the tests."
What's surprised me is how hard it is to stop the model from doing extra work. Smaller models especially seem to ignore constraints, they'll refactor, add features, or change things that weren't requested.
For those of you using Claude Code (or similar tools), how much do you rely on .claude files and hooks to enforce behavior versus just prompting the model?
If you don't use hooks, what's your approach for keeping the AI inside the boundaries you want? Do you have a workflow that's been reliable?
14 days to build. Voice input, AI extraction, relationship intelligence layer , the whole thing.
The idea: walk out of any important conversation, vent for 60 seconds, and let AI pull out everything that matters. Prices quoted. Commitments made. The personal detail they dropped in passing. All of it structured and surfaced before the next conversation.
Here's what surprised me building this:
Voice input is a completely different product than text input
If you've shipped front-end with Claude, Cursor, or Copilot, you know the look. Purple gradient, three equal cards, Inter blown up huge, a "John Doe" testimonial, 300ms on everything. The tools don't choose it. They default into it, because the average of everything they trained on is generic.
I'm a designer, and undoing the same five mistakes by hand stopped scaling. So I built ux-skill.
It sits between you and your AI tool and swaps improvising for constraints:
You describe the project in a forced brief.
It builds a real design system: type, color, layout, motion.
It generates the code against that system.
It lints the result against 152 rules and blocks the generic version before it ships.
Every time I've tried one of these tools, a chunk of what I end up spending is just fixing something it broke, not adding anything new.
And it's not a fixed cut, it gets worse the more complex the app gets, simple screens barely need any fixing, anything with real logic starts eating credits fast.