12 / 13My First AI Agent — Part II · 20 min read

Cron runbooks

Set it and forget it: a job that runs on schedule, fresh each time.

Cron amnesia loop
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-effort pins 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: true to 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
  1. 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).
  2. Write the prompt as if the agent has amnesia, starting from the sample runbook. Save as cron-runbook.md.
  3. Create it in the Desktop cron UI or Hermes cron flow for your version.
  4. Run once manually if possible, then schedule — or stop after dry-run if offline.

Go deeper

Proof

Checklist · this device0/3
Exercise · Check yourself

Why write cron prompts with amnesia?

Pick one — the answer is revealed straight away.

You are done when

Proof · this device0/1

Stored on this device only — not sent anywhere.