OpenClaw Heartbeat Guide

How to set up heartbeat checks in OpenClaw so your agent stays monitored, scheduled tasks run reliably, and failures get surfaced early.
Mar 12, 2026

OpenClaw Heartbeat Guide

Heartbeat is the feature that turns OpenClaw from "responds when asked" into "checks things on its own and tells you when something is wrong."

This page shows you how to set up heartbeat after your basic installation and first channel are working. If you have not finished those yet, go back to:

Next step


What heartbeat actually does

Heartbeat runs a scheduled check on a repeating interval. Each check can:

  • verify that Gateway is still running
  • confirm a channel is still connected
  • run a simple test prompt and check the response
  • send a status update to a channel
  • trigger a workflow on a schedule

It is not a complex monitoring system. It is a lightweight "is everything still alive" signal.


Why you need heartbeat

Without heartbeat, you only find out something is broken when:

  • you send a message and get no reply
  • a scheduled task silently stops running
  • Gateway crashes and nobody notices for hours

With heartbeat, you get:

  • a recurring signal that the system is alive
  • early warning when something stops working
  • a delivery channel for scheduled outputs (daily summaries, reminders, etc.)

Good first heartbeat setup

Start with the simplest possible heartbeat:

1. pick a schedule

For your first heartbeat, use a simple interval:

  • every 6 hours is a good default
  • do not start with every 5 minutes — it will be noisy and unhelpful
  • once per day is fine for low-traffic setups

2. pick a task

Your first heartbeat task should be simple:

  • send a "still alive" message to a channel
  • or run a basic health check and report the result

Do not make the first heartbeat do complex work. Keep it simple so you can verify the scheduling itself works.

3. pick a delivery channel

Send heartbeat output to:

  • a private Discord channel you monitor
  • a Telegram chat with yourself
  • or any channel you actually check regularly

Do not send heartbeat output to a channel nobody reads.

4. define what "success" looks like

A good heartbeat has a clear success condition:

  • Gateway responded
  • the test message was generated
  • the output was delivered to the target channel

If any of those fail, the heartbeat should surface an error, not silently skip.


What to add after the first heartbeat works

Once you have one heartbeat running reliably, these are the useful next steps:

Daily summary heartbeat

Run once per day, summarize:

  • what workflows ran
  • what succeeded or failed
  • any errors worth reviewing

Monitoring heartbeat

Run every few hours, check:

  • Gateway status
  • channel connectivity
  • model provider availability
  • last successful message timestamp

Workflow trigger heartbeat

Run on a schedule to trigger:

  • daily news digest
  • GitHub issue summary
  • SEO monitoring check
  • any recurring workflow from your use cases

Common mistakes

Making the schedule too frequent

Every 5 minutes for a heartbeat that just says "I'm alive" creates noise without value. Start with every 6 hours or once per day.

Putting too many tasks in one heartbeat

A heartbeat that checks health, runs a summary, sends an alert, and triggers three workflows is hard to debug when it fails. Keep each heartbeat focused on one job.

No delivery target

A heartbeat that runs but sends output nowhere is invisible. Always define where the output goes.

No failure handling

If the heartbeat itself fails (Gateway down, channel disconnected), who gets notified? Plan for this by sending heartbeat output to a channel that does not depend on the same infrastructure.


Troubleshooting heartbeat

Heartbeat does not run at all

  • check that the scheduler is configured in your workspace config
  • confirm Gateway is running (heartbeat runs through Gateway)
  • verify the cron or interval syntax is correct

Heartbeat runs but produces no output

  • check that the task prompt is defined
  • confirm the delivery channel is connected
  • look at Gateway logs for errors during heartbeat execution

Heartbeat is too noisy

  • increase the interval
  • reduce the number of checks per heartbeat
  • filter output to only report failures, not every success

OpenClaw Heartbeat Guide | OpenClaw Agent Hub