npm.io
0.1.0 • Published yesterdayCLI

bowline-check

Licence
MIT
Version
0.1.0
Deps
0
Size
22 kB
Vulns
0
Weekly
0

bowline-check

Does your AI-built prototype survive contact with real users?

Lovable, Bolt, v0 and Cursor will get you an app that demos beautifully. We take these apart for a living, and they fall over in the same seven places every time. This tool checks yours for all seven, locally, in about a second.

npx bowline-check           # scan the current directory
npx bowline-check ./my-app  # or any path

Nothing runs, nothing uploads. Static analysis, zero dependencies, MIT.

The seven checks

What it looks for
Secrets API keys committed in source, secrets behind NEXT_PUBLIC_/VITE_ prefixes, OpenAI running in the browser, uncovered .env
Accounts Account deletion (an App Store requirement), password reset, Supabase without Row Level Security, queries that never scope to the signed-in user
Data No migrations (the schema was clicked into existence), single-table smell
AI cost LLM calls with no rate limit, no per-user quota, no max_tokens — the £400-overnight class of bug
Payments A checkout that works once: no webhooks, no failed-renewal or refund handling
Store review Missing privacy manifest, missing in-app deletion, tracking SDKs without ATT strings
Under load No indexes, no health endpoint, slow work inside request handlers, no error monitoring

Output is a scored card:

  ✗ Secrets       OpenAI API key committed in source
  ✗ AI cost       LLM calls with no rate limiting anywhere
  ...
  33/100  This is a prototype, not a product.  (5 critical, 1 warnings)

--json for machines, --ci to fail pipelines on criticals, --verbose for file paths.

Where these checks come from

Not from vibes. Each one is a thing that actually broke in products we shipped and ran — a paywalled AI app on Google Play, a clinical AI assistant that was acquired, and the incidents in between. The checks are the scar tissue, written down.

A clean score is necessary, not sufficient — this is static analysis and it can't see your runtime. If you want the full teardown (what breaks at 500 users, and what each fix costs), that's free and takes 30 minutes: bowline-studio.pages.dev

Built by Bowline — a two-person London studio. We ship AI products in four weeks, fixed price, built to hold.

Keywords