The pre-flight check for AI-built apps
DevMeth is the pre-flight check for AI-built apps: it scans your code and live URL for the 48 known AI-code failure patterns, explains each in plain English, and gives you a paste-ready fix prompt. Re-scan until it's green.
60 checks total — 48 security + 12 code-health (Rescue Report).
checks the 48 known AI-code failure patterns — not a penetration test or a security guarantee. Results in about 2 minutes, free.
Free scan runs 10 Critical checks, no signup. Your code is deleted after the scan by default — see how we handle your code.
Paste a repo URL, upload a zip, or give us your live URL. No signup for the free scan.
Across both the code and your live surface: secrets, exposed data, auth, input handling, dependencies, and your public web.
Each finding explains what's wrong, why AI tools cause it, and includes a paste-ready fix prompt for your AI tool.
Fix with one paste, re-scan to verify, and earn the verified badge when every known pattern is clear.
No CVE jargon — what went wrong, and the exact fix prompt your AI tool can apply. All four run in the free scan, and the prompts below are the real ones from our catalog — try copying one.
src/lib/keys.ts — sk-…a1b2 (OpenAI key, masked)
A security scan found hardcoded secrets in this project. Fix them properly —
rotation first, then removal:
1. ROTATE FIRST: for each secret below, revoke + reissue it in the
provider's console (OpenAI/Anthropic/Stripe/Resend/Twilio/AWS all have
an API-keys page). Deleting the line does not invalidate the key.
2. In these locations, replace the hardcoded values with environment
variable reads (`process.env.*` in server code only):
{{locations}}
Never reference these via NEXT_PUBLIC_* or VITE_* — those are bundled
into the client and shipped to every visitor.
3. Put real values in `.env.local` (gitignored) and placeholders like
`your-api-key-here` in `.env.example`.
4. Don't obfuscate the old value anywhere — treat it as public now.
When done, the re-scan's secret detection over the current files must
report zero matches.
table users — 1,204 rows readable anonymously · sample row masked
A live scan of {{live_url}} found Supabase tables readable by anonymous
requests. Fix:
1. In Supabase: Authentication → Policies — enable Row Level Security on
every exposed table.
2. In your migrations, add `ALTER TABLE <table> ENABLE ROW LEVEL
SECURITY;` for each table plus policies scoped to the owner:
`CREATE POLICY "own data" ON <table> FOR ALL USING (auth.uid() =
user_id) WITH CHECK (auth.uid() = user_id);`
3. Guardrail: never use `USING (true)` — that keeps the table world-open.
Anchor policies to `auth.uid()`.
4. Service-role/admin access stays server-side only.
Verification: the anonymous re-scan must return 0 rows or an RLS error.
/admin — responds 200 to an anonymous visitor
A scan of {{live_url}} found an admin page open to unauthenticated
visitors. Fix:
1. Add a server-side auth + role gate to the admin route (or the layout
that contains it), and to the APIs it uses.
2. The server must return 401/403 for unauthorized requests — blocking in
the UI alone doesn't protect the data.
Verification: unauthenticated GET of the path returns 401/403/login
redirect on re-scan.
GET /.git/config — 200 — metadata served publicly
A live scan found `.git/` exposed at {{live_url}}. Fix:
1. Stop shipping `.git`: exclude it from the deploy artifact/build, and
block `/.git*` at the proxy/CDN layer.
2. Clean-rebuild + redeploy (stale artifacts persist served).
3. Check sibling dotfiles while you're in the proxy config.
Verification: re-scan sees 404/403 on `/.git/config` and `/.git/HEAD`.
Seven branches, one plain-English page each — every check, why AI tools produce it, and how it's detected.
Hardcoded API keys, committed .env files, secrets in client bundles and git history — 10 checks that catch what AI tools leak. Scan free.
Explore the 10 checks →Open admin pages, authless API routes, weak JWT secrets, IDOR, client-side role checks — 12 checks for the auth gaps AI tools leave behind.
Explore the 12 checks →SQL injection, XSS, SSRF, path traversal, mass assignment — 10 checks for the input-handling bugs AI-generated code ships with.
Explore the 10 checks →Wide-open CORS, live debug endpoints, exposed .git, stack-trace leaks, HTTPS and HSTS — 8 checks to run before an AI-built app goes live.
Explore the 8 checks →Supabase RLS left disabled, permissive policies, Firebase rules, browser-direct database access — 5 checks for hosted-backend exposure in AI-built apps.
Explore the 5 checks →Known CVEs in your dependency tree, framework CVEs with middleware-only fixes, and hallucinated packages that don't exist — 3 dependency checks.
Explore the 3 checks →Dead code, copy-pasted blocks, hallucinated imports, untested routes, drift — the 12-check AI tech-debt scan with a Debt Score and fix prompts.
Explore the 12 checks →Free scan · Full Report $59 · Launch Pack $179 · Rescue $59 — one-time, 30-day refunds. GitHub CI: $19.99/mo per private repo.