The model writes this
Everything comes from the journal
Every tool call, timer, signal and log line is an entry in the run’s journal, linked to the line of TypeScript that caused it. The journal is the only source of truth: every feature of Rewind is derived from it.Durable execution
await sleep("10d") or wait for a signal. The run survives crashes and deploys, and resumes by re-executing the
script against its journal.Replay
Any run re-executes from its journal with identical results. Fix a failed run with a fork: the calls it already
made are not made again.
Testing
A recorded run becomes a cassette of mocks. Time is virtual, so a ten-day workflow is tested in milliseconds.
Observability
OpenTelemetry traces projected from the journal, and a dashboard of every run and all the code executed, with a
debugger that steps through each run.
Who it is for
Rewind is for teams that build agents: a coding agent, a support agent, an operations agent, any product where a model calls tools for your users. Your harness keeps its model loop and its prompts. It adds Rewind through the TypeScript SDK (or the HTTP API/v1), and gives the model a few ready-made tools: run_script,
get_run, signal_run, retry_run and others.
Each of your users gets a namespace: their runs, scripts, credentials and quotas, isolated from
everyone else’s.
Where to go next
Quickstart
Register a toolset, run a script and read its result in five minutes.
Why Rewind
What changes when the model writes code instead of calling tools one by one.
How it works
The harness, the API, the workers and the journal, end to end.
The dashboard
Every run, all the code executed, and a debugger that steps through history.