Heartbeat: resume after an interruption
Normally, the agent continues authorized work in the same task. If a step is still running, it waits for that step to finish. Heartbeat addresses a different case: the task was unexpectedly interrupted and you want it to resume on its own, within an existing autonomy mandate.
When to ask for it
Section titled “When to ask for it”Ask for recovery when you intend to leave an autonomous task running and do not want an unexpected interruption to leave it stalled. For example:
Complete this phase in YOLO. If the task is interrupted, resume automatically when possible.
The agent records the mandate’s scope and enables a heartbeat for this task, if the client supports it. An ordinary YOLO request does not enable recovery. You do not need heartbeat for the agent to continue normal work.
What happens next
Section titled “What happens next”The heartbeat checks periodically, about every 15 minutes by default. If work is still active, it stays silent. If it finds a confirmed interruption, it resumes the task through HelmIt’s next step without expanding the mandate. If it cannot safely tell whether another agent is working, it does not start a concurrent run; you can still resume manually.
A pause that needs your answer is not an interruption to recover. Heartbeat also does not skip tests, human decisions, or the autonomy boundary you set. Recovery turns off when that boundary is reached.
Where it works
Section titled “Where it works”| Client | Automatic recovery |
|---|---|
| Claude Code | Uses session scheduling. |
| Codex Desktop | Uses an automation tied to the local task. |
| Codex CLI | Lacks the required scheduler; resume manually with helmit:next. |
The computer must stay awake for checks to run. If recovery cannot be enabled, the agent explains why; the autonomy mandate can still apply to work in the current session.
Check or turn it off
Section titled “Check or turn it off”Ask “Check whether heartbeat is active” or use
/helmit:heartbeat status. To turn off recovery alone, ask “Turn off
heartbeat” or use /helmit:heartbeat off. The autonomy mandate stays active
in that case. To end the mandate as well, use /helmit:yolo off.
See which command should I use? to distinguish
heartbeat, YOLO, and next.