DEV Community

Cover image for Your AI coding assistant builds what you ask for, it won't add what you forget
vmx
vmx

Posted on

Your AI coding assistant builds what you ask for, it won't add what you forget

There's a gap between "build me a weather app" and getting something you'd actually deploy.

AI coding assistants are great at execution. The coding isn't the problem anymore. It's the spec. Or rather, the absence of one.

Say "build me a weather app" and you get a weather app. What you don't get: what happens when the API is down. Offline behavior. A content security policy. Touch targets for mobile. Dark mode that doesn't blind you at 2am. An implementation order that lets you see the design before it touches real data.

The assistant can do all of this. Every single one of these things. But it won't include them unless you ask, because it executes intent, not product decisions you haven't made yet. GIGO, just more polite about it now.

The specs you keep rewriting

If you've built anything with an AI assistant, you've probably written the same architecture sections more than once. Data flow, UX states, trust boundaries, security checklist. The app might be simple. Getting the spec right is the actual work.

Here's a real one. Visibility toggle, from a spec for a task counter:

Use the hidden attribute for toggling visibility.

Gotcha: If CSS sets display: flex on the element,
it overrides hidden.
Fix: .my-class:not([hidden]) { display: flex; }
Enter fullscreen mode Exit fullscreen mode

You'd never think to put this in a prompt. Your assistant will generate code with this exact bug though, and you'll debug it for 20 minutes before realizing CSS specificity is eating the hidden attribute. One line in the spec prevents it. Knowing which lines matter is harder than writing the code.

That pattern repeats across every section. The UX states you didn't define become blank screens on error. The trust boundaries you didn't name become API keys in frontend code. The implementation order you didn't specify means your assistant wires real data before you've approved the design.

What Gist does

Gist is a spec generator for small apps that run on free tiers. It's a structured conversation -- you describe an idea, answer questions about data sources and scale, and it produces a markdown spec covering architecture, implementation order with design checkpoints, UX states beyond the happy path, trust boundaries, content security policy, mock data shapes, and a pre-ship checklist. More like a type contract between you and your assistant. Define the shape, the implementation follows.

Three complexity tiers come from your answers: minimal is plain HTML with no build tools, standard adds a static site generator and an optional edge proxy, full adds caching and cron. You pick the hosting -- defaults to Cloudflare free tier but it's not locked in. Everything targets $0/month. No servers to patch. No invoices. The constraint is the feature.

Spec generation is client-side, deterministic -- conditionals and templates, no LLM. What you see is what your assistant gets.

gist.1mb.dev -- describe an app, download the spec, paste it into Claude or Cursor. The difference is usually everything you'd expect to be there but didn't think to say.

Top comments (0)