For developers · Romulus
Resume your AI agents after a crash
Romulus saves each step's result through an API and JavaScript SDK. When a worker dies, a replacement restarts with the same run ID, reuses the completed work and continues from where the run stopped.
Local developer preview · JavaScript SDK · Node.js 24 · no hosted account required
How Romulus works
01
Execute
Run the next step of the workflow.
02
Checkpoint
Save its result and the step that should run next.
03
Wait or interrupt
Keep the saved progress through approval waits, background jobs and crashes.
04
Resume
Restore progress and continue the unfinished work.
Use cases
Support operations
Recover a ticket workflow with its customer context and routing decisions intact.
CRM synchronisation
If a CRM update times out, check whether it succeeded before sending it again.
Background jobs
Save the job reference, release the worker and continue when the result arrives.
Good to know
- Completed steps are reused. Unfinished work may run again, so external writes still need idempotency or reconciliation.
- A timeout does not mean a write failed: check the original operation with the provider before retrying.
- The quickstart kills a worker mid-step, restarts it and lets you inspect the recovered run in SQLite.
Also by New Odyssey
More for developers
Next step
Try Romulus locally
Local developer preview · JavaScript SDK · Node.js 24 · no hosted account required