Automation and tasks
自動化とタスク
OpenClawは、タスク、スケジュール済みジョブ、推論されたコミットメント、イベントフック、常設指示を通じてバックグラウンドで作業を実行します。このページでは、適切な仕組みを選び、それらがどのように連携するかを理解できるようにします。
クイック判断ガイド
flowchart TD
START([What do you need?]) --> Q1{Schedule work?}
START --> Q2{Track detached work?}
START --> Q3{Orchestrate multi-step flows?}
START --> Q4{React to lifecycle events?}
START --> Q5{Give the agent persistent instructions?}
START --> Q6{Remember a natural follow-up?}
Q1 -->|Yes| Q1a{Exact timing or flexible?}
Q1a -->|Exact| CRON["Scheduled Tasks (Cron)"]
Q1a -->|Flexible| HEARTBEAT[Heartbeat]
Q2 -->|Yes| TASKS[Background Tasks]
Q3 -->|Yes| FLOW[Task Flow]
Q4 -->|Yes| HOOKS[Hooks]
Q5 -->|Yes| SO[Standing Orders]
Q6 -->|Yes| COMMITMENTS[Inferred Commitments]
| ユースケース | 推奨 | 理由 |
|---|---|---|
| 毎日午前9時ちょうどにレポートを送信する | スケジュール済みタスク(Cron) | 正確なタイミング、分離された実行 |
| 20分後にリマインドする | スケジュール済みタスク(Cron) | 正確なタイミングの単発実行(--at) |
| 週次の詳細分析を実行する | スケジュール済みタスク(Cron) | 独立したタスク、別のモデルを使用可能 |
| 30分ごとに受信箱を確認する | Heartbeat | 他の確認とまとめて実行、コンテキスト対応 |
| 今後の予定についてカレンダーを監視する | Heartbeat | 定期的な把握に自然に適合 |
| 言及された面接の後に確認する | 推論されたコミットメント | メモリに近いフォローアップ、正確なリマインダー要求なし |
| ユーザーコンテキスト後の軽いケア確認 | 推論されたコミットメント | 同じエージェントとチャンネルにスコープされる |
| サブエージェントまたは ACP 実行の状態を調べる | バックグラウンドタスク | タスク台帳がすべての切り離された作業を追跡する |
| 何がいつ実行されたかを監査する | バックグラウンドタスク | openclaw tasks list と openclaw tasks audit |
| 複数ステップの調査後に要約する | タスクフロー | リビジョン追跡付きの永続的なオーケストレーション |
| セッションリセット時にスクリプトを実行する | フック | イベント駆動、ライフサイクルイベントで発火 |
| すべてのツール呼び出しでコードを実行する | Plugin フック | インプロセスフックでツール呼び出しをインターセプト可能 |
| 返信前に常にコンプライアンスを確認する | 常設指示 | すべてのセッションに自動的に注入される |
スケジュール済みタスク(Cron)と Heartbeat
| 観点 | スケジュール済みタスク(Cron) | Heartbeat |
|---|---|---|
| タイミング | 正確(cron 式、単発) | おおよそ(デフォルトは30分ごと) |
| セッションコンテキスト | 新規(分離)または共有 | メインセッション全体のコンテキスト |
| タスク記録 | 常に作成 | 作成されない |
| 配信 | チャンネル、webhook、またはサイレント | メインセッション内にインライン表示 |
| 最適な用途 | レポート、リマインダー、バックグラウンドジョブ | 受信箱確認、カレンダー、通知 |
正確なタイミングや分離された実行が必要な場合は、スケジュール済みタスク(Cron)を使用します。作業が完全なセッションコンテキストの恩恵を受け、おおよそのタイミングで問題ない場合は、Heartbeatを使用します。
コア概念
スケジュール済みタスク(cron)
Cronは、正確なタイミングのための Gateway 組み込みスケジューラーです。ジョブを永続化し、適切なタイミングでエージェントを起動し、出力をチャットチャンネルまたは webhook エンドポイントに配信できます。単発リマインダー、繰り返し式、受信 webhook トリガーをサポートします。
スケジュール済みタスクを参照してください。
タスク
バックグラウンドタスク台帳は、すべての切り離された作業を追跡します。ACP 実行、サブエージェントの起動、分離された cron 実行、CLI 操作が含まれます。タスクは記録であり、スケジューラーではありません。それらを調べるには、openclaw tasks list と openclaw 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 としてスキップされます。Heartbeatは cron 作業がアクティブまたはキュー済みの間は延期され、heartbeat.skipWhenBusy によってサブエージェントまたはネストされたレーンがビジーの間も延期できます。
Heartbeatを参照してください。
連携の仕組み
- Cron は、正確なスケジュール(日次レポート、週次レビュー)と単発リマインダーを処理します。すべての cron 実行はタスク記録を作成します。
- Heartbeat は、定期的な監視(受信箱、カレンダー、通知)を30分ごとの1つのバッチターンで処理します。
- フック は、特定のイベント(セッションリセット、Compaction、メッセージフロー)にカスタムスクリプトで反応します。Plugin フックはツール呼び出しを対象にします。
- 常設指示 は、エージェントに永続的なコンテキストと権限境界を与えます。
- タスクフロー は、個々のタスクの上位で複数ステップのフローを調整します。
- タスク は、すべての切り離された作業を自動的に追跡し、調査と監査を可能にします。
関連
- スケジュール済みタスク — 正確なスケジュールと単発リマインダー
- 推論されたコミットメント — メモリに近いフォローアップ確認
- バックグラウンドタスク — すべての切り離された作業のタスク台帳
- タスクフロー — 永続的な複数ステップのフローオーケストレーション
- フック — イベント駆動のライフサイクルスクリプト
- Plugin フック — インプロセスのツール、プロンプト、メッセージ、ライフサイクルフック
- 常設指示 — 永続的なエージェント指示
- Heartbeat — 定期的なメインセッションターン
- 設定リファレンス — すべての設定キー