bhackett
There's an opportunity here to bend things towards quality and efficiency moreso than mere volume of code. The agent has to be able to effectively repair and maintain what it has been building though.
Show HN: 50+ open source AI-built SaaS apps
Hey HN, we're building a library of open source SaaS apps for small businesses and personal use. You can browse the apps at https://builder.replay.io, these are free to copy or download and use however you want. Examples:* https://builder.replay.io/gallery/Sales%20CRM — Sales CRM with pipeline view and deal tracking * https://builder.replay.io/gallery/Issue%20Tracker — Issue tracker with...
Show HN: We vibe coded our team's issue tracker, knowledge base, telemetry board
Hi HN, I'm the CEO at https://replay.io. We've been working on time travel debugging for web development for a while (https://news.ycombinator.com/item?id=28539247) and more recently an AI app builder that uses that debugger to get past problems instead of spinning in circles (https://news.ycombinator.com/item?id=43258585).We've gotten to where we can pretty easily build apps to replace...
Show HN: Nut – App builder with test writing and time travel debugging
Hi HN, I'm the CEO at https://replay.io. We've been working for several months on helping AIs be proficient at using our time travel debugger to fix broken web apps (previous post: https://news.ycombinator.com/item?id=43258585)Today we're launching https://nut.new to roll these capabilities into a complete app builder for one shotting working web apps.When you ask Nut for an app, it discusses...
We're also interested in using our API with MCP so that e.g. Cursor could be used to fix bugs you're seeing locally, and plan to explore that angle before long.
We'll continue to keep it open source as we develop it.
The tech will get better and better (I couldn't imagine we'd be doing this a year ago) but to be truly useful it has to reliably produce reasonably well engineered code, and effective debugging is a key piece of that.
We don't have a commercial offering yet and are planning to migrate off WebContainers for the upcoming full stack features -- WebContainers show their limits pretty quickly in a full stack context (e.g. CORS issues) and we need observability into the server side of the app for full stack debugging.
Regardless, our interests here are only lightly commercial. We're not really developing Nut to drive revenue but to help us develop the debugging API and push forward the SOTA for AI development as effectively as we can. That API is what we want to sell.
The improvements we're making are under the hood. When you ask Nut to fix a bug it should do a much better job -- we record the app's behavior and analyze it so the AI has context for the changes it needs to make.
We've also added some UI to approve or reject the changes the AI makes. For now we're using this to gather feedback so we can improve Nut, but down the line we'll also refund the user any credits when they reject changes -- you shouldn't have to pay when the AI screws up, a big issue with these tools (and vibe coding in general).
Show HN: Time travel debugging AI for more reliable vibe coding
Hi HN, I'm the CEO at https://replay.io. We've been building a time travel debugger for web apps for several years now (previous HN post: https://news.ycombinator.com/item?id=28539247) and are combining our tech with AI to automate the debugging process.AIs are really good at writing code but really bad at debugging -- it's amazing to use Claude to prompt an app into existence, and pretty...
Improving AI developers with data flow analysis
Fixing a browser test failure with AI and time travel
Full stack time travel debugging
Ordering constraints between different library functions do crop up from time to time. In cases like this the recorder library uses ordered locks internally (basically emulating the synchronization which the system library has to do) to ensure that the calls execute in the expected order when replaying.
1. Rather than having to restore state to the point at the previous step, we can step backwards by replaying a separate process to the point before the step, and looking at the state there (this post talks about how that works: https://medium.com/replay-io/inspecting-runtimes-caeca007a4b...). Because everything is deterministic it doesn't matter if we step around 10 times and use 10 different processes to look at the state at those points.
2. We record the calls made by the browser, though it is the calls into the system libraries rather than the syscalls themselves (the syscall interfaces aren't stable/documented on mac or windows).
3. Maintaining ordering like this isn't normally necessary for ensuring that behavior is the same when replaying. In the case of memory locations, the access made by thread 2 to location B will behave the same regardless of accesses made by thread 1 to location A, because the values stored in locations A and B are independent from one another.