Notes

Agent Resumption

Agent runs stop for ordinary reasons: a deploy restarts the process, a rate limit pushes the work into tomorrow, a reviewer goes home before approving step 14. Agent resumption is the ability to start that run again from where it stopped, with everything already done still done.

What resumption requires
Reading back what checkpointing wrote is the easy half. The hard part is rejoining the world:

  • Side effects must not repeat. If the last checkpoint landed before a tool call returned, the agent cannot know whether the payment went through — so actions need idempotency keys, or a result the agent can re-read.
  • Stale observations must be refreshed. A plan built on a price, a queue length or a file that has since changed will act on a world that no longer exists.
  • Credentials must still be valid. Tokens expire during a long pause, and a resumed run holding a dead one fails in a confusing place.

How it shows up in practice
LangGraph resumes a thread by replaying its checkpoint history, which is also how human-in-the-loop approval works: the interrupt is a pause whose resume happens to carry a human decision. Durable-execution engines go further, replaying a deterministic workflow and short-circuiting any activity whose result is already recorded.

Why it matters
Without resumption every interruption costs the whole task — all the tokens, all the tool calls, and the user's patience. With it, long-running agent work becomes ordinary operations rather than something to be nursed.

Agent resumption is restarting a halted run from a saved checkpoint rather than from the beginning, restoring the agent's state and continuing at the next step. It handles crashes, host restarts, expired sessions, and pauses awaiting human approval. Resumption is what turns a checkpoint into value: state that is written but never reloaded gives durability on paper while every interruption still costs the whole task.

You are halfway through a long online form when your laptop battery dies. Agent resumption is the difference between losing the lot and picking up where you left off.

Software working on a long job gets interrupted all the time — a restart, a temporary block, or simply waiting for a person to approve something. Resumption means it reloads its last saved point and carries on from there.

The tricky part is not repeating itself. If it had just placed an order at the moment it stopped, it has to work out whether that order actually went through before trying again. Nobody wants the same thing bought twice.