Inspiration
Aidan's dad is an independent contractor who runs his business on a legacy, local version of QuickBooks that can't connect to the internet. Every finance automation tool we found assumes a modern web app with an API. For software like his, they simply don't work, so the repetitive bookkeeping stays manual.
What it does
Retronaut is a workflow builder for software that has no API. You describe what you want automated in plain English, for example: "Take every email from this sender, total them by reference number, and create matching invoices in QuickBooks." An agent with full computer use (screenshots, mouse, keyboard) then explores your apps the way a person would and maps out the exact clicks and keystrokes the task needs. It turns that plan into a reusable script that runs the workflow again and again. When a step fails, for example because an app update moved a button, the agent works out what changed and repairs the script so the next run works.
How we built it
- Desktop app: Electron with React (Vite) and TypeScript
- Agent: Factory's Droid TypeScript SDK, which explores the apps, writes the automation script and repairs it when steps break
- Storage: SQLite for workflows, run history and logs
Challenges we ran into
Making computer use reliable was the hardest part. The agent has to read a messy legacy UI correctly when it first explores, and the generated script has to keep working, unattended, on every later run. Getting the script to behave consistently was much harder than getting the agent to complete the task once.
Accomplishments that we're proud of
Retronaut works with real legacy software. It can reason about an app that has no API and build an automation that runs against it.
What we learned
How agent automation actually works once it's connected to a real computer: the gap between an agent that can do a task once and a script you can trust to run every day.
What's next for Retronaut
Automated migration: using the same agent to move a business's data out of legacy systems and into modern ones, so they're no longer stuck once they're ready to switch.
Built With
- droid-typescript-sdk
- electron
- react
- sqlite
- typescript
Log in or sign up for Devpost to join the conversation.