メインコンテンツへスキップ
OpenClaw は、タスク、スケジュール済みジョブ、推論されたコミットメント、イベントフック、常設指示を通じてバックグラウンドで作業を実行します。このページを使って適切な仕組みを選択してください。

クイック判断ガイド

ユースケース推奨理由
毎日午前9時ちょうどにレポートを送信するスケジュール済みタスク (Cron)正確なタイミング、分離された実行
20分後にリマインドするスケジュール済みタスク (Cron)正確なタイミングの単発実行 (--at)
毎週の詳細分析を実行するスケジュール済みタスク (Cron)独立したタスク、別のモデルを使用可能
30分ごとに受信トレイを確認するHeartbeat他の確認とバッチ化、コンテキスト認識
今後のイベントについてカレンダーを監視するHeartbeat定期的な認識に自然に適合
言及された面接の後に確認する推論されたコミットメントメモリのようなフォローアップ、正確なリマインダー要求なし
ユーザーコンテキスト後の穏やかなケア確認推論されたコミットメント同じエージェントとチャンネルにスコープされる
サブエージェントまたは ACP 実行の状態を確認するバックグラウンドタスクタスク台帳がすべての分離された作業を追跡する
何がいつ実行されたかを監査するバックグラウンドタスクopenclaw tasks listopenclaw tasks audit
複数ステップの調査後に要約するタスクフローリビジョン追跡付きの永続的なオーケストレーション
セッションリセット時にスクリプトを実行するフックイベント駆動、ライフサイクルイベントで発火
すべてのツール呼び出しでコードを実行するPlugin フックプロセス内フックがツール呼び出しをインターセプト可能
返信前に常にコンプライアンスを確認する常設指示すべてのセッションに自動的に注入

スケジュール済みタスク (Cron) と Heartbeat

次元スケジュール済みタスク (Cron)Heartbeat
タイミング正確 (cron 式、単発)おおよそ (デフォルトは30分ごと)
セッションコンテキスト新規 (分離) または共有メインセッションの完全なコンテキスト
タスク記録常に作成作成されない
配信チャンネル、webhook、またはサイレントメインセッション内にインライン
最適な用途レポート、リマインダー、バックグラウンドジョブ受信トレイ確認、カレンダー、通知
正確なタイミングや分離された実行が必要な場合は、スケジュール済みタスク (Cron) を使用します。作業が完全なセッションコンテキストの恩恵を受け、おおよそのタイミングで十分な場合は、Heartbeat を使用します。

コア概念

スケジュール済みタスク (cron)

Cron は、正確なタイミングのための Gateway 組み込みスケジューラーです。ジョブを永続化し、適切な時刻にエージェントを起動し、チャットチャンネルまたは webhook エンドポイントに出力を配信できます。単発リマインダー、繰り返し式、受信 webhook トリガーをサポートします。 スケジュール済みタスクを参照してください。

タスク

バックグラウンドタスク台帳は、ACP 実行、サブエージェントの生成、分離された cron 実行、CLI 操作など、すべての分離された作業を追跡します。タスクは記録であり、スケジューラーではありません。確認には openclaw tasks listopenclaw tasks audit を使用します。 バックグラウンドタスクを参照してください。

推論されたコミットメント

コミットメントは、オプトインの短期間のフォローアップメモリです。OpenClaw は通常の会話からそれらを推論し、同じエージェントとチャンネルにスコープし、Heartbeat を通じて期限が来た確認を配信します。ユーザーが明示的に要求した正確なリマインダーは、引き続き cron の役割です。 推論されたコミットメントを参照してください。

タスクフロー

タスクフローは、バックグラウンドタスクの上にあるフローオーケストレーション基盤です。管理同期モードとミラー同期モード、リビジョン追跡、確認用の openclaw tasks flow list|show|cancel を備えた、永続的な複数ステップフローを管理します。 タスクフローを参照してください。

常設指示

常設指示は、定義されたプログラムに対する永続的な運用権限をエージェントに付与します。ワークスペースファイル (通常は AGENTS.md) に存在し、すべてのセッションに注入されます。時間ベースの強制には cron と組み合わせます。 常設指示を参照してください。

フック

内部フックは、エージェントのライフサイクルイベント (/new/reset/stop)、セッション Compaction、Gateway 起動、メッセージフローによってトリガーされるイベント駆動スクリプトです。フックディレクトリから検出され、openclaw hooks で管理されます。プロセス内のツール呼び出しインターセプトには、Plugin フックを使用します。 フックを参照してください。

Heartbeat

Heartbeat は、定期的なメインセッションのターンです (デフォルトは30分ごと)。複数の確認 (受信トレイ、カレンダー、通知) を、完全なセッションコンテキストを持つ1回のエージェントターンにバッチ化します。Heartbeat ターンはタスク記録を作成せず、日次/アイドルのセッションリセットの鮮度を延長しません。小さなチェックリストには HEARTBEAT.md を使用し、Heartbeat 自体の中で期限が来たものだけを定期確認したい場合は tasks: ブロックを使用します。空の Heartbeat ファイルは empty-heartbeat-file としてスキップされます。期限のみのタスクモードは no-tasks-due としてスキップされます。cron 作業がアクティブまたはキューに入っている間、Heartbeat は延期されます。また、heartbeat.skipWhenBusy により、同じエージェントのセッションキー付きサブエージェントまたはネストされたレーンがビジーな間も、そのエージェントを延期できます。 Heartbeatを参照してください。

連携方法

  • Cron は、正確なスケジュール (日次レポート、週次レビュー) と単発リマインダーを処理します。すべての cron 実行はタスク記録を作成します。
  • Heartbeat は、定期的な監視 (受信トレイ、カレンダー、通知) を30分ごとに1回のバッチ化されたターンで処理します。
  • フック は、特定のイベント (セッションリセット、Compaction、メッセージフロー) にカスタムスクリプトで反応します。Plugin フックはツール呼び出しを対象にします。
  • 常設指示 は、エージェントに永続的なコンテキストと権限境界を与えます。
  • タスクフロー は、個々のタスクの上で複数ステップのフローを調整します。
  • タスク はすべての分離された作業を自動的に追跡するため、確認および監査できます。

関連