> ## Documentation Index
> Fetch the complete documentation index at: https://praison.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Heartbeat Config • AI Agent SDK

> HeartbeatConfig: Configuration for Heartbeat scheduler.

# HeartbeatConfig

> Defined in the [**heartbeat**](../modules/heartbeat) module.

<Badge color="blue">AI Agent</Badge>

Configuration for Heartbeat scheduler.

Attributes:
schedule: Human-friendly schedule expression. Supports:

* Keywords: "hourly", "daily", "weekly"
* Intervals: "every 30m", "every 6h", "*/30m", "*/10s"
* Cron: "cron:0 7 \* \* \*"
* One-shot: "at:2026-03-01T09:00:00"
  prompt: Override prompt sent to agent each tick. None = use agent's default.
  on\_result: Callback receiving (result\_text: str). Default: log to stdout.
  on\_error: "retry" | "skip" | callable(error). Default: "retry".
  max\_retries: Max consecutive retries before skipping. Default: 3.

## Properties

<ResponseField name="schedule" type="str">
  No description available.
</ResponseField>

<ResponseField name="prompt" type="Optional[str]">
  No description available.
</ResponseField>

<ResponseField name="on_result" type="Optional[Callable]">
  No description available.
</ResponseField>

<ResponseField name="on_error" type="Union[str, Callable]">
  No description available.
</ResponseField>

<ResponseField name="max_retries" type="int">
  No description available.
</ResponseField>

## Source

<Card title="View on GitHub" icon="github" href="https://github.com/MervinPraison/PraisonAI/blob/main/src/praisonai-agents/praisonaiagents/agent/heartbeat.py#L25">
  `praisonaiagents/agent/heartbeat.py` at line 25
</Card>

***

## Related Documentation

<CardGroup cols={2}>
  <Card title="Configuration Overview" icon="gear" href="/docs/docs/configuration/index" />

  <Card title="Agent Config" icon="robot" href="/docs/docs/configuration/agent-config" />
</CardGroup>
