Hermes Agent · Tutorial 18
Repeat, Watch, or Schedule? /loop, /heartbeat, and /cron
Choose the right Hermes automation for repeated work in this chat, an idle-time watch, or a durable scheduled job.

0 of 8 complete
Essentials · Step 8 of 8 · View the route
Last tested and updated: August 25, 2026, with Hermes Agent v0.20.5. Run /version first.
Hermes has three forms of recurring work, and they solve different problems:
| Need | Use | What keeps it alive |
|---|---|---|
| Repeat work inside this conversation | /loop | The current Hermes process and session |
| Check something when this session is idle | /heartbeat | The current Hermes process and session |
| Run at a real schedule after this chat is gone | /cron | The Hermes gateway service |
Choosing the wrong one causes most beginner confusion.
/loop: repeat a task in this session
/loop 10m Check the project inbox and summarise only new high-priority items --times 6
/loop status
/loop pause
/loop resume
/loop stop
You can stop on a condition:
/loop 5m Recheck the build status --until the build has completed or failed
With no interval, Hermes uses a self-paced schedule that expands from roughly 1 to 15 minutes when nothing changes and resets when something does. The default 100-tick limit is a backstop. Each tick is a full agent turn, and --until adds judge work, so repeated checks can spend real tokens.
Only one loop runs per session. It retains that session’s context and survives compression or resume, but it is not a durable scheduler when Hermes itself is closed.
/heartbeat: a lightweight idle watch
/heartbeat every 15m Check whether the long export finished. Tell me only when its state changes.
/heartbeat status
/heartbeat pause
/heartbeat resume
/heartbeat clear
The minimum interval is 60 seconds. A heartbeat runs only when the session is idle, and missed ticks coalesce rather than flooding you later. It is useful for watching a long process while you keep the terminal open.
/cron: a durable schedule
In the classic CLI, open the interactive scheduler with:
/cron
The terminal also exposes hermes cron. On a connected messaging surface, you can ask Hermes naturally to create a scheduled job. Cron jobs run as fresh isolated sessions through the gateway, can load skills, use a configured working directory, and deliver results to a chosen surface.
A safe first job is a read-only daily brief:
Every weekday at 8:30am, create a five-item briefing from these bookmarked sources.
Put a link and date beside every claim.
Do not send messages, modify accounts, or purchase anything.
Deliver the result to my configured Telegram chat.
Inspect the parsed schedule, timezone, prompt, destination, model, and tool access before enabling it. A cron job that works only in your shell may fail under the gateway because credentials, working directories, or environment variables differ.
Hermes also supports no_agent script jobs that use no LLM tokens. Prefer a deterministic script for fixed fetching or file rotation; use an agent only where interpretation is genuinely needed.
A practical decision rule
- Use
/loopwhile actively investigating something and you want each pass to build on the same chat. - Use
/heartbeatwhen a long task should be checked only during idle moments. - Use
/cronwhen the clock—not the open session—must trigger a fresh job.
The stable loops guide and cron documentation establish the behavior above.
What users say
Corey Ganim described a weekly cron job that updates his personal knowledge base. AI Edge’s automation advice is even more useful for beginners: audit your time, automate one workflow per week, deliver it somewhere convenient, and keep human taste in the loop. Both are individual workflows, not guarantees that unattended jobs are reliable.
Nous Research’s own example list ranges from deadline scans to playful tasks. Treat those as inspiration; the product documentation and your own test runs establish what your setup can safely do.
How to know it worked
- A loop shows its interval, tick limit, and stop condition.
- A heartbeat waits until the session is idle and avoids duplicate missed ticks.
- A cron test run works through the gateway, not merely the interactive shell.
- Delivery reaches the intended private destination with the expected timezone and sources.
Frequently asked questions
Will /loop continue after I close Hermes?
No. Use a gateway-backed cron job for durable scheduling.
Can I run several loops in one session?
No. Stable v0.20.5 supports one loop per session.
Why did my heartbeat not run exactly on time?
It waits until the session is idle, and missed ticks coalesce.
Does every cron run remember this chat?
No. Cron uses a fresh isolated session. Put required context in the prompt, skill, or configured files.
Does cron require the gateway?
Yes, for durable execution and delivery.
How do I reduce cost?
Run less often, use no_agent scripts for deterministic work, keep prompts focused, and inspect usage after several runs.
What timezone does it use?
Verify the timezone shown in the schedule rather than assuming. A correct cron expression in the wrong timezone is still a wrong automation.