Pause And Resume
What it is
Controls that disable future scheduled runs and later recompute the next run without deleting the job.
In plain terms
Think of taking tomorrow’s departures off a timetable without turning around a train that already left the station. Pausing a Hermes cron job keeps future scheduled fires from being claimed; it does not interrupt a run already in progress. Resuming keeps the definition and calculates a new next departure from the current time.
Why it matters
Preventing future unattended runs during a maintenance window or provider outage without deleting the job definition is what pause and resume is for. Pause is a scheduler-state change, not cancellation of already-running work. Resume recalculates next_run_at from now, so missed recurring fires do not replay as a backlog; a stale one-shot beyond its grace window cannot be resumed.
How it works
Pausing a job (cronjob action pause) doesn’t touch its schedule or prompt — it flips enabled to false, sets its state to paused, and records a timestamp plus an optional reason (cron/jobs.py#pause_job). A paused job is skipped by the scheduler’s due-job scan and also refuses a manual run: attempting to fire it returns “Job is paused/disabled; resume it before running.” Resuming (resume_job) flips enabled back to true and recomputes the next run time from right now, not from whenever it was paused — so a job paused for three days doesn’t fire three days of backlog the moment it wakes. One exception: a one-shot job whose scheduled time already passed its grace window can’t be resumed at all — Hermes raises an error instead of silently reviving a run that will never fire.
A concrete example
Your model provider starts throwing errors mid-afternoon, and three unrelated cron jobs all call out to it every fifteen minutes. You pause each one by job ID; each job’s state flips to paused and the scheduler stops picking them up, but their schedules and prompts stay exactly as configured. Two hours later the provider recovers. You resume each job, and Hermes recomputes each one’s next run from that moment forward — not from three hours of missed ticks — so nothing bursts out a backlog of stale requests the instant they wake up.
How it connects
This note belongs to the Automation family. Its closest neighboring concepts are: Manual Triggering, Cron Jobs, Agent Runtime, Personal OS.
Source evidence
vendor/hermes-agent/toolsets.py#<file>— Structural Source Map fallback for toolsets.py. A core source file in the Tool Registry and Toolsets structure within Tools, Toolsets, and MCP.
Workflows
- No first-pass workflow mapping yet; this concept still appears in the vault graph through articles and source evidence.
Related articles
- Scheduling Hermes: How to Build, Inspect, and Control Automated Cron Jobs
