What it takes for an agent run to survive a crash

An agent waiting for human approval should survive its server dying. How agentFast tests that with a real SIGKILL, and how the agent-stream protocol keeps runs legible.

Einstein Labs1 min read

Getting an agent to decide something is the easy part. The hard part is everything around the decision: remembering what it learned, calling tools without failing silently, pausing for a person before something risky, surviving a restart mid-task, and explaining afterwards what it did.

The test that matters

agentFast’s flagship test describes the property directly: kill the process while a run is paused for human approval, restart it, approve, and the run must resume from the exact step it was on and complete correctly, with no replay and no double execution.

The test uses a real Postgres database, a real LangGraph graph with an interrupt and a checkpointer, a real SIGKILL, and two separate operating-system processes. Only the model is scripted, because the test measures durability, not model quality. A second test checks the same property on a different orchestration path.

A run that survives a crashIllustration, not results

A run that survives a crash. An illustration of the behaviour, not a recording.

Approvals that run exactly once

Marking a tool as risky makes any run that tries to use it pause for a real person, from a dashboard, a playground or the command line. The pause survives the server restarting while it waits, and every approved action runs exactly once, even under a race.

Runs a person can follow

A run you cannot see is a run you cannot supervise. agent-stream is our open protocol for streaming what an agent is doing as typed server-sent events: tokens, thinking, tool use and tool results, progress, errors and a final done event. agentFast builds on it for live streaming and adds its own events, such as approvals, which a standard client can safely ignore.

pip install agent-event-stream
npm install @agent-stream/react

What this does not claim

These are properties checked by tests in the repository, not measurements of how often agents fail in the wild. agent-stream has no formal evaluation yet, and its adoption so far is within Einstein Labs products.