Home / Blog / Hermes Agent scheduled tasks: automate anything on a timer
Your agent runs tasks while you sleep. Here is how to set that up.

Hermes Agent scheduled tasks: automate anything on a timer

One of the more useful things about a persistent agent: it doesn't wait for you to ask it something. Hermes has a built-in scheduler that fires tasks at whatever interval you define — every morning, weekly, every hour. No separate cron knowledge required, though cron syntax works if you know it.

Hermes OS team20 April 202610 min read

How the scheduler works

The gateway process checks every 60 seconds whether any jobs are due. When a job fires, the agent runs the task — using all its tools, memory, and skills — and delivers the result to whatever platform you've connected. Telegram, Discord, Email, whoever.

This is different from a standard cron job, which runs a script. Hermes scheduling runs the AI agent. So the 'script' can browse websites, call APIs, read files, do research, and write a structured result. You describe what you want in plain English. The agent figures out how to do it.

The scheduler lives inside the gateway, so it only fires when the gateway is running. On Hermes OS that's handled automatically. Self-hosted: install the gateway as a system service (hermes gateway install) so it starts on boot and restarts after crashes.

Setting up a scheduled task

Simplest method: tell the agent in conversation.

'Every weekday at 8am, send me a Telegram message with today's weather in London and any calendar events I have before noon.'

It creates the schedule and confirms. Check what's scheduled:

bash
hermes cron list

For more control, use standard cron syntax — five fields: minute, hour, day of month, month, day of week:

0 8 * * 1-5 # weekdays at 8am 0 18 * * 0 # Sundays at 6pm */15 * * * * # every 15 minutes 0 * * * * # top of every hour

If cron syntax is unfamiliar: crontab.guru translates between plain English and cron expressions and shows the next 5 fire times.

Where the results go

Any platform you've connected. Specify the destination when creating the task — one task can go to Telegram, another to Email, another to Discord. The result arrives like a normal message from your bot.

Morning briefing

Most common scheduled task. Common things people put in:

  • Weather forecast for the day
  • Calendar events
  • Unread email count + anything flagged urgent
  • News headlines filtered to topics you care about
  • Outstanding tasks from your to-do system
  • Portfolio snapshot if you track investments

Start with one or two. The agent needs API credentials for each data source (Google Calendar API key, etc.) — it will ask the first time, or you add them to ~/.hermes/.env directly. Once set, they're remembered.

Monitoring and conditional alerts

Scheduled tasks don't have to deliver every time they fire. You can set up tasks that only message you when something notable happens:

'Every 5 minutes: check if my-app.com returns HTTP 200. Message me on Telegram only if it doesn't.'

Or:

'Every morning: check the price of [product]. Message me only if it's dropped since yesterday.'

The agent handles the conditional logic. It fires, does the check, decides whether the result is worth sending. Far more useful than unconditional pings that just create noise.

For server monitoring: the agent can SSH into other servers (with key auth configured), check disk usage, running processes, memory, recent error logs, then send a summary or alert only on problems. The self-hosting guide covers SSH key setup.

Weekly reports

Weekly cadence works for things that aren't urgent but benefit from a regular look:

  • GitHub activity — open PRs, issues created this week, commits by author
  • Business metrics — weekly revenue, new signups, churn from Stripe
  • Content — posts published, word count, analytics from top pages
  • Personal — a reflection prompt: what did you actually finish this week?

For business metrics, the agent needs API access to relevant services. Skills are the standard packaging — write the API integration once as a skill, the scheduler calls it weekly without re-explanation.

Managing scheduled tasks

bash
hermes cron list # all scheduled tasks with next fire time hermes cron list --detail # include description and delivery platform hermes cron edit <id> # open task in your editor hermes cron delete <id> # remove permanently hermes cron pause <id> # pause without deleting hermes cron run <id> # fire the task right now (for testing)

The run command is the most useful during setup — fire the task immediately to see what the output looks like before waiting for the scheduled time. Saves a lot of guessing.

Scheduled tasks live in your profile config. They're included in profile exports and backups — migrate to a new server or to Hermes OS and the schedule comes with you.

A realistic full schedule

What a developer's daily automated schedule might look like:

8:00am (weekdays) — GitHub notifications + weather + calendar events before noon → Telegram

Every 30 minutes (9am–6pm) — ping staging.myapp.io, message me on Telegram only if it returns non-200

Friday 5pm — summarise merged PRs across three repos this week, include author and a one-sentence description of each change → Telegram

Sunday 7pm — check Notion task list, list everything still open from last week, ask: what's the one most important thing for this week? → Telegram

None of this requires writing code. You describe what you want. The agent works out how.

Common questions

Does scheduling work when I'm not connected?

Yes. The gateway runs on your server, not your computer. Tasks fire and deliver to your chosen platform whether your laptop is on or off.

What if a scheduled task fails?

The gateway logs runs and errors. Check with: hermes cron logs <id>. By default it retries once on failure. For critical monitoring, consider setting a secondary alert — if the primary check errors, deliver to a backup platform.

Can different tasks go to different platforms?

Yes. Specify the delivery platform per task. Morning briefing to Telegram, weekly report to Email, alerts to Discord — whatever you want.

What's the minimum interval?

The scheduler ticks every 60 seconds, so 1 minute is the minimum. Sub-minute isn't supported. For near-real-time triggers, webhooks are the right tool — see the gateway guide.

Will frequent tasks spike my API costs?

Each task invocation uses API tokens. Simple checks (ping a URL, send a fixed message) use very few. Complex tasks (research, email summarisation) use more. Heaviest tasks should run at low frequency — weekly, not hourly. Full cost breakdown: /blog/cost-of-running-ai-agent

Do I need a terminal open for scheduled tasks to run?

No. Install as a system service: hermes gateway install. It starts on boot, runs in the background, no terminal needed. On Hermes OS this is already set up.

Deploy in 5 minutes.

7-day money-back guarantee. BYO AI key. From $19/mo.

Start Now
Related reading
What can Hermes Agent actually do?Hermes Agent gateway: Telegram, Discord, and 13 moreHermes Agent skills guideHow to self-host Hermes Agent on a VPS