Skip to content
Shahid Malla

AI-built app rescue

Vibe-Coded App Rescue: Fix and Harden Your AI-Built App

I fix vibe-coded apps built with Lovable, Bolt, Replit, v0 or Cursor that now break, leak data or will not deploy. I audit the code in writing, close exposed keys and open tables first, add tests, then repair or rebuild what the audit shows and hand the app back in accounts you own.

Free scoping call of about 30 minutes · written quote within one business day · two weeks of support after delivery

By Shahid Malla, AI agent and AI chat developer, full-stack developer · Updated

What is a vibe-coded app rescue?

A vibe-coded app rescue is a scoped job in which a developer audits an app generated by prompting, closes what can leak data or lose money, adds tests, and repairs or rebuilds what fails, then hands the app back in accounts you own. Screens and data stay wherever they are sound. What changes is that someone has read the code and answers for it. The same job is also sold as vibe coding cleanup, or as hiring a Lovable, Bolt or Replit app developer.

I am a full-stack developer with 13+ years and 900+ projects, and CTO at ElySpace, a hosting company, since 2016. I build with Claude Code and review every change myself, so I know where generated code tends to go wrong. To try the fix yourself first, read my guide on how to fix a vibe-coded app. This page is the service.

What problems does a vibe-coded app rescue fix?

It fixes apps that break, leak, slow down or cannot leave the builder. Each symptom has a likely cause that I check early.

What you seeWhat often sits behind itWhat I check first
It works for me but not for the second userRecords with no owner; access rules only in the browserEach request repeated as user B and signed out
Every prompt breaks something that workedNo tests; the same logic copied into several filesWhich critical flows have no test
Data may be leakingA secret key in front-end code; tables without row-level securityWhat the public key can read, signed out
Payments almost workThe browser marks orders paid; webhooks unverified or processed twiceAn unsigned and a repeated webhook on staging
It slows down as users arriveMissing indexes, heavy work inside web requests, filtering in the browserSlow queries and server logs
It will not deploy anywhere elseSecrets, database and settings that live only in the builderA clean install from the repository onto staging

Fixes follow risk, not the order you noticed things: exposed data and money first, then data integrity, then your bug list, then new features.

What does the rescue audit check?

It checks where generated code most often looks finished but is not, and every finding comes with evidence rather than an opinion.

AreaWhat I checkStandard
Keys and secretsSecret keys in front-end files, repository history, logs or chat historySupabase: a secret key "bypasses every Row Level Security policy you have."
Database accessRow-level security on every exposed table, leftover anon and authenticated grants, viewsSupabase: "A table in an exposed schema without RLS is readable and writable by any role with a grant on it."
Routes and rolesEvery API route, admin page and file download checked on the serverOWASP A01:2025: access control "is only effective when implemented in trusted server-side code or serverless APIs"
PaymentsSigned webhooks, duplicate events ignored, prices taken from the serverStripe: without verification "an attacker could send fake webhook events to your endpoint"
Abuse and exposed filesRate limits on login, reset, email and paid AI calls; .env, .git and backups reachable by URLOWASP A01:2025 calls for rate limits and for no .git or backup files "within web roots"
Data and errorsAn owner or tenant on each record, migrations, npm audit or composer audit, swallowed errorsFits the business; every failure logged
DeploymentSeparate development and production databases, a tested backup restore, a repeatable deployBuilds from the repository on a clean server

Many of these apps run on Supabase; Lovable's built-in backend "utilizes Supabase's open-source foundation." Once row-level security is on, the publishable key reaches no data "until you create policies", so I test each policy on staging first and add the pgTAP policy tests Supabase documents, so a later prompt cannot quietly reopen a table. The reasoning behind each row is in my vibe coding security checklist.

Which AI app builders and coding tools do you work with?

Lovable, Bolt, Replit, v0, Cursor, Claude Code and similar tools, as long as the code can reach a Git repository you own. The way out differs on each, and so does what stays behind.

ToolHow the code reaches your repositoryWhat I plan around
LovableGit sync, which "always creates a new repository", or a zip download on paid plansThe database export "does not include stored files, Edge Function code, or secrets"
BoltGitHub backup with "a full history of changes that lives outside Bolt", or a zip downloadBranches merge in GitHub; Bolt "currently doesn't support merging branches in-app"
ReplitA zip download or two-way Git syncSecrets, database and deployment configuration "aren't included in the copy"; production has its own database
v0A private repository that "becomes the source of truth for your project's code"Changes land on a working branch, so review happens in pull requests
Cursor, Claude CodeAlready in your repositoryRules files: Cursor's .cursor/rules are "version-controlled and scoped to your codebase"; Claude Code reads CLAUDE.md "at the start of every session"

If the code cannot be exported to an account you own, I recommend a rebuild, because every fix would stay locked in the platform. My guide to vibe coding tools compares what each one lets you take with you.

Is the builder's own security scan enough?

No. A builder's scanner is a useful first pass, and I run it, but its makers say it is not a full review. Lovable's security documentation says its tools "help identify common security issues, but they cannot guarantee complete security," and suggests "an additional professional security review" for apps with sensitive data. Replit's Security Center calls its build-time check "an early, lightweight check in the Agent workflow rather than a full codebase review."

Scanners find patterns; they cannot know your business rules, such as which staff role may issue a refund or which customer may see which record. Testing those takes a person signed in as the wrong user on purpose.

Will you repair my app or rebuild it?

The audit decides, and the report says which and why. Repair fits when the problems sit in a few known places. A refactor fits when each change breaks something else: tests first, then restructuring in steps. A rebuild fits only when the foundation is wrong, such as records with no owner, and it is often partial, replacing one module while the data and working screens stay. A full rebuild I quote as SaaS development on tested base code.

How do you handle my accounts, keys and customer data?

Through invitations and a staging copy, never passwords pasted into a chat. You add me to GitHub, hosting and the database under my own login, so you see what I do and can remove me afterwards. If the audit finds a key that is already exposed, I tell you at once rather than waiting for the report, and we follow Supabase's order: "Fix the root cause of the leak before you rotate anything."

The AI agents I run never receive production credentials or real customer records. Production changes happen only after you approve the fix list, with a backup first and a way to roll back. If the server underneath needs work too, that is server security hardening.

Should you buy a bug-fix package or an audit first?

Buy a bug-fix package when you know every problem and the app holds no real data. Start with an audit when users, payments or personal data are involved, because the costly problems are the ones nobody has reported. Whoever you hire, ask:

  • Will you test access as a second user and signed out?
  • Do I get the findings in writing, with evidence?
  • Where will the fixed code live, and under whose account?
  • Which fixes come with automated tests?
  • What happens to keys that were already exposed?

What will a rescue not do?

A rescue makes an app safer and easier to change; it does not make it unhackable, and I make no such promise. It is not a penetration test, a compliance assessment or a certificate; if a client or regulator asks for one, you need a dedicated firm, and the rescue helps you prepare. I fix your app and its accounts, not the builder platform. I add no features until exposed data and payment problems are closed, and I do not quote fixes for code I have not read. To start a new product with AI agents and review from day one instead, hire a Claude Code developer.

Disclosure: I am independent, not affiliated with or endorsed by Lovable, Bolt, Replit, v0, Cursor, Supabase, Stripe or Anthropic. Claude and Claude Code are trademarks of Anthropic, PBC. I am CTO at ElySpace and founder of MagizAI. Vendor documentation quoted here was read on 25 October 2026.

Who this is for

  • Founders whose Lovable, Bolt, Replit or v0 app works in the demo but fails once real users sign up
  • Teams that need an AI-built app made production ready before they take payments, import customer records or show it to investors
  • Owners who suspect a leaked API key or a database table that anyone can read
  • Builders who used Cursor or Claude Code and now break two things every time they fix one
  • Anyone whose app runs inside the builder but cannot be deployed or hosted anywhere else

What is included

  • The code moved into a GitHub repository under your account, plus a staging copy with test data
  • A written audit of secrets, access rules, row-level security, payments, data model, errors, dependencies and deployment
  • Each finding ranked by risk, with evidence, the fix and an effort estimate, plus a repair, refactor or rebuild recommendation
  • Exposed keys rotated and open tables and routes closed before any feature work
  • Automated tests for sign-up, login, permissions and payments that run on every change
  • Fixes or a partial rebuild delivered as pull requests, each reviewed by me and checked on staging
  • Rules files for your AI tools (CLAUDE.md, AGENTS.md or .cursor/rules), so later changes follow the same conventions
  • A handover note covering what changed, what is still open, and how to deploy and roll back

How the work runs

  1. 1

    Scoping call

    About 30 minutes on what the app does, who uses it, where it runs and what goes wrong. Within one business day you get a written, fixed-price quote for the audit.

  2. 2

    Access and a safe copy

    You invite me to the repository, hosting and database under my own login, never by sharing passwords. I build a staging copy with test data, and the audit changes nothing in production.

  3. 3

    Audit

    I run the app, read the code, run the scanners and repeat requests as a second user and as a signed-out visitor. You get the written report and a fix plan with a fixed price.

  4. 4

    Fix by risk

    Exposed data and money first, then data integrity, then the bugs you reported, then anything new. Each fix ships with a test, my review and a check on staging.

  5. 5

    Release and hand back

    Production deployment with a backup and a rollback plan, a re-check of every audit finding, the handover note and a walkthrough call, then two weeks of support. After that you remove my access.

Guides on this topic

All guides →

Frequently asked questions

Can you fix an app built with Lovable, Bolt, Replit or v0?

Yes, once the code is in a Git repository you own. Each builder documents a way out: Lovable's Git sync creates a new GitHub repository, Bolt backs a project up to GitHub or downloads it as a zip, Replit offers a zip download or two-way Git sync, and v0 creates a private repository that becomes the source of truth for the code. I work in that repository. The database, secrets and hosting settings move separately, and the audit lists each one.

Can I keep using Lovable or Bolt after the rescue?

Often, yes. Lovable's docs say changes pushed to the active GitHub branch sync back into Lovable, and Bolt checks GitHub every 30 seconds for changes made outside it. The risk is two editors on one branch: Bolt says that if both sides update at almost the same time, it keeps its own changes and overwrites the GitHub version. We agree which work stays in the builder and which goes through reviewed pull requests.

Do you use AI to fix AI-written code?

Yes. I work with Claude Code, which reads an unfamiliar codebase and drafts fixes faster than I could by hand. The difference from the original build is the process around it: a written plan, rules files, tests that must pass and my review of every diff before it merges. I do not merge anything I have not read, and the agent never gets production credentials or real customer records.

How long does it take to fix a vibe-coded app?

I give a date with the fix quote, after the audit, because the timeline depends on what the audit finds rather than on the number of screens. What moves it most: whether every account is handed over on day one, how clean the data is, how many outside services and webhooks are involved, whether any tests exist, and whether new features get added in the middle of the rescue.

Who owns the code and the accounts?

You do. The repository, hosting, database, domain, payment and email accounts stay in your name, and I work under my own invited login, which you remove at the end. On the builder side, Lovable's FAQ says "Your apps, code, and the content you create with Lovable are yours, subject to third-party rights such as open-source licenses." For other builders, read their terms, and keep a current copy in your own GitHub account either way.

How much does it cost to fix a vibe-coded app?

I do not price fixes before reading the code, because two apps with the same screens can hide very different problems. After a free scoping call of about 30 minutes, you get a fixed price for the audit within one business day. The audit then produces a fixed quote for the fixes or a partial rebuild, or I work hourly at $55 to $65. You can stop after the audit and give the report to any developer.

Do you work with clients in the US, UK, Canada and Australia?

Yes, remotely, through the repository, a shared issue list and calls. Past builds include the Chargewise online store in Next.js, for a company that ships across the United States and Canada; a client portal for RealBytes, an Australian hosting provider; and the website for Krunus, a UK hosting provider. These were new builds, not rescues.

Related services