Benjamin Verbeek, a member of technical staff at Lovable, presents two continuous self-improvement loops that allow Lovable's AI coding platform to learn from mistakes at scale — processing over 200,000 projects per day. Verbeek frames the core challenge as eliminating the experience of non-technical users getting permanently stuck: while technical users can fight through friction points, non-technical users abandon the product the moment they hit an unsolvable block. Lovable's entire self-improvement infrastructure is built to prevent those permanent stops.
The first loop is a 'Lovable Stack Overflow' system. An LLM judge monitors sessions for signals that users are stuck — repeated requests for the same thing, complaints about failed implementations, or explicit abandonment of sessions. When a session transitions from 'stuck' to 'unstuck' (i.e., the user was unblocked and succeeded), that transition is flagged as a high-signal training sample. The system then asks: 'What context should have been injected at the start of this query to jump straight to the solution?' The answer is stored as a Stack Overflow-style knowledge entry. Clustering prevents overfitting to hyper-specific prompts; an agent evaluator (with occasional human review) validates entries before they enter the bank. During live inference, a lightweight model monitors incoming queries and injects relevant Stack Overflow context into the main agent when appropriate. Critically, a holdout mechanism injects blank context for a small sample of matching queries, enabling a controlled A/B test of whether each entry actually improves project completion rates — Lovable's key metric of a user fully deploying a project. Stale entries (from model upgrades or feature changes) are pruned based on this ongoing eval loop. Early data shows a significant reduction in messages where users are stuck and a measurable increase in project deployments.
The second loop is the 'vent tool.' Lovable gave its agent a dedicated tool — `vent_send_feedback` — that it is instructed to use only when platform limitations, missing tools, broken behavior, or confusing docs are actively degrading its work. Complaints are sent directly to a Slack channel. In the first hour of launching, the agent filed 20 complaints about a silent file-copy failure for filenames containing spaces — a real production bug that had never surfaced in logs. The fix required two iterations: first replacing spaces with underscores, then realizing that WhatsApp and macOS screenshots inject non-breaking spaces that the original regex did not catch. The vent volume over time also turned out to be a reliable incident detector: spikes in vent activity correlated directly with platform outages, providing both detection and a description of what was failing. A second agent now monitors the vent channel, deduplicates reports, and automatically opens pull requests — which engineers review and merge to production. The agent also provided meta-feedback on the vent tool itself, noting it was too easy to send feedback and that it couldn't retract a message.
Verbeek highlights that inline agent feedback produces a higher signal-to-noise ratio than external reviewer approaches, which tend to force an answer on every iteration and overfit to noise. Because the vent tool fires only when genuinely frustrated, the signal quality is high. He notes that Lovable's internal model rankings show that all top-performing models leverage the Stack Overflow context injection, and that both loops must continuously prune stale knowledge as models and features evolve — 'context rot' from deprecated entries is an active concern. Verbeek closes by inviting engineers to join Lovable to fully close the self-improvement loop and automate continuous learning at scale.
All right. Let's get this party started. Do we have any Lovable users in here? Good, good, a few. Very nice. A warm welcome to to this talk on how Lovable is improving every hour, including this hour as I'm speaking. I'm Benjamin van Beek. I'm a member of technical staff of Lovable. It's so amazing that we are filling up this bonus room. I think we're around three times as many people as would have fit in the original. So, thanks to the organizers. Um This is my background. I used to work with s...
Mario Zechner, creator of the LibGDX game framework, delivers a provocative three-act talk about building a minimal codi...