Some work can't finish in one sitting — it waits on a data room, a customer reply, or a nightly export. Forge runs can pause for hours or days and resume automatically, with their full state saved between steps. This guide covers the three ways a run resumes.
Wait for an external callback
Give an agent the wait_for_callback tool. When the agent reaches it, the run pauses (waiting_for_callback) and a one-time callback URL appears on the run timeline. Have your external system POST any JSON to that URL when the data is ready:
curl -X POST https://forge.shanova.se/api/callback/<token> \
-H "Content-Type: application/json" \
-d '{ "data_room": "ready", "documents": 42 }'The run resumes automatically and the payload is injected into the waiting agent's context. Set a longer window with the tool's expires_in_hours (up to 30 days).
Snooze and scheduled resume
On any paused run, open the run page and use Snooze (1h / 1d / 3d / 7d). Forge sets a wake-up time and resumes the run automatically when it arrives — no need to keep the tab open.
Resume now
Don't want to wait? Click Resume now on the paused run and it continues immediately from where it left off — completed agents are kept, only the remaining agents run.