Cron と Heartbeat
Heartbeat と cron ジョブのどちらを自動化に使うかのガイド。
Heartbeat と cron ジョブの両方で、スケジュールに従ってタスクを実行できます。このガイドは、あなたのユースケースに適したメカニズムを選択するのに役立ちます。
クイック決定ガイド
| ユースケース | 推奨 | 理由 |
| --- | --- | --- |
| Session | Main | Main (via system event) |
| History | Shared | Shared | Fresh each run |
| コンテキスト | 完全 | 完全 | なし(クリーンスタート)|
| モデル | メインセッションモデル | メインセッションモデル | 上書き可能 |
| 出力 | '<code className="bg-white/10 px-1.5 py-0.5 rounded text-emerald-300 text-sm">'HEARTBEAT_OK'</code>' 以外の場合は配信 | Heartbeat プロンプト + イベント | 要約がメインに投稿 |
#
メインセッション cron を使用する場合
次のような場合に '<code className="bg-white/10 px-1.5 py-0.5 rounded text-emerald-300 text-sm">'--session main'</code>' と '<code className="bg-white/10 px-1.5 py-0.5 rounded text-emerald-300 text-sm">'--system-event'</code>' を使用します:
- メインセッションのコンテキストに表示されるリマインダー/イベント
- 次の Heartbeat 中にエージェントが完全なコンテキストで処理
- 個別の分離された実行なし
openclaw cron add --name "Check project" --every "4h" --session main --system-event "Time for a project health check" --wake now
#
分離された cron を使用する場合
次のような場合に '<code className="bg-white/10 px-1.5 py-0.5 rounded text-emerald-300 text-sm">'--session isolated'</code>' を使用します:
- 以前のコンテキストなしのクリーンな状態
- 異なるモデルまたは思考設定
- 出力がチャネルに直接配信(デフォルトでは要約がメインに投稿)
- 履歴がメインセッションを乱さない
openclaw cron add --name "Deep analysis" --cron "0 6 * * 0" --session isolated --message "Weekly codebase analysis..." --model opus --thinking high --deliver
コストの考慮事項
| メカニズム | コストプロファイル |
| --- | --- |
| Heartbeat | N 分ごとに実行;HEARTBEAT.md のサイズに比例 |
| Cron(メイン)| 次の Heartbeat にイベントを追加(分離されたターンなし)|
| Cron(分離)| ジョブごとに完全なエージェントターン;安価なモデルを使用可能 |
<strong>ヒント</strong>:
- トークンコストを最小限に抑えるために '<code className="bg-white/10 px-1.5 py-0.5 rounded text-emerald-300 text-sm">'HEARTBEAT.md'</code>' を小さく保ちます。
- 複数の cron ジョブではなく、類似したチェックを Heartbeat にバッチ処理します。
- 内部処理のみが必要な場合は、Heartbeat で '<code className="bg-white/10 px-1.5 py-0.5 rounded text-emerald-300 text-sm">'target: "none"'</code>' を使用します。
- 定期的なタスクには、分離された cron と安価なモデルを使用します。
Related
- '<a href="/gateway/heartbeat" className="text-emerald-400 hover:text-emerald-300 transition-colors">'Heartbeat'</a>' - 完全な Heartbeat 設定
- '<a href="/automation/cron-jobs" className="text-emerald-400 hover:text-emerald-300 transition-colors">'Cron jobs'</a>' - 完全な cron CLI と API リファレンス
- '<a href="/cli/system" className="text-emerald-400 hover:text-emerald-300 transition-colors">'System'</a>' - システムイベント + Heartbeat 制御