Cron runbooks
Set it and forget it: a job that runs on schedule, fresh each time.
01
Schedule
When
02
Runbook
Full context
03
Fire
Fresh session
04
Deliver
File / TG
05
Fail path
Alert human
00of 06 sections behind you
Amnesia is intentional
Cron ↗ usually runs with the always-on gateway. Each execution is an isolated session that does not inherit “yesterday’s issue.” Write a self-contained runbook into the job prompt.
- Include host, path, command, expected state, delivery target, success and failure behavior.
Update — since v0.20.5, a fresh worker shares your memory: scheduled jobs load
MEMORY.md and USER.md like every other session and can save new durable facts with the memory tool. The amnesia that remains is the transcript — a job still starts with no chat history and no record of its own previous runs. Memory is who you are; continuity is what happened last time. A job that must not re-report yesterday’s story needs continuity or a small state file, not shared memory.Quiet by default
- silent: suppress “all good” noise; still surface failures.
- no_agent / script-only: deterministic checks that need no model tokens.
- Wake gate: cheap pre-check first; wake the model only when something changed.
- Per-job reasoning effort:
--reasoning-effortpins the thinking level per job — minimal for cheap polls, high for deep daily syntheses. Cost tuned per job, without touching the global default or the model.
Guardrails
- Jobs must not spawn unbounded new jobs — runaway self-scheduling is blocked in healthy setups.
- Dangerous commands: prefer approvals.cron_mode deny (default) so headless jobs cannot YOLO host damage.
- Memory writes from headless jobs: set
memory.write_approval: trueto stage them for review (/memory pending·/memory approve·/memory reject) — until approved, later runs never see them.
Build one job
Cron spend is easy to waste. Prefer script checks first; wake the model only when the check fails or changes, or use Hermes webhooks ↗ instead of polling.
Steps · tap the number to check0/4
- Define a small job: for example weekday 08:00 — three headlines, short summary, deliver to your messaging app (or a local file if gateway is off).
- Write the prompt as if the agent has amnesia, starting from the sample runbook. Save as cron-runbook.md.
- Create it in the Desktop cron UI or Hermes cron flow ↗ for your version.
- Run once manually if possible, then schedule — or stop after dry-run if offline.
Go deeper
Proof
Exercise · Check yourself
Why write cron prompts with amnesia?
Pick one — the answer is revealed straight away.
Go further