ホーム チュートリアル カテゴリ Skills サイトについて
ZH EN JA KO
上級テクニック

OpenClaw定時メッセージと自動化ワークフロー

· 7 分で読了

はじめに

AI Agent はユーザーのメッセージを受動的に待つだけであるべきではありません。OpenClawには定時タスクシステムが組み込まれており、Cron式ベースのスケジューリングをサポートしています。AI Agentが指定時間に自動的にタスクを実行したり、メッセージを送信したり、ワークフローをトリガーしたりできます。毎日の天気予報から定期的なデータ集計まで、定時メッセージ機能はAgentの応用シナリオを大幅に拡張します。

基本的な定時メッセージ

定時タスクの設定

openclaw.json5 で Agent に定時タスクを追加します。

{
  agents: {
    "my-agent": {
      schedules: [
        {
          name: "morning-greeting",
          cron: "0 8 * * *",  // 毎日朝8時
          timezone: "Asia/Tokyo",
          target: {
            platform: "telegram",
            chatId: "123456789"
          },
          prompt: "朝の挨拶を生成してください。今日の日付と励ましの言葉を含めてください。"
        }
      ]
    }
  }
}

Cron式クイックリファレンス

意味
0 8 * * * 毎日 08:00
0 8 * * 1-5 平日 08:00
*/30 * * * * 30分ごと
0 9,18 * * * 毎日 09:00 と 18:00
0 0 1 * * 毎月1日 00:00
0 0 * * 0 毎週日曜 00:00
0 */4 * * * 4時間ごと

よくある自動化シナリオ

毎日の天気予報、平日のスタンドアップリマインダー、週次データ集計、RSSコンテンツ配信など、さまざまなシナリオで定時タスクを活用できます。静的メッセージ(AI処理なし)とAIプロンプトベースの動的メッセージの両方をサポートしています。

ワークフローのチェーン実行

OpenClawは複数の定時タスクをワークフローとして連結し、前のタスクの結果を次のタスクに渡すことをサポートしています。

{
  workflows: {
    "daily-ops": {
      cron: "0 9 * * 1-5",
      timezone: "Asia/Tokyo",
      steps: [
        {
          name: "fetch-data",
          prompt: "データベースから昨日の運用データを取得",
          tools: ["sqlite"],
          outputVar: "dailyData"
        },
        {
          name: "analyze",
          prompt: "以下の運用データを分析し、異常な指標を見つけてください:{{dailyData}}",
          outputVar: "analysis"
        },
        {
          name: "report",
          prompt: "以下の分析結果に基づいて運用日報を生成してください:{{analysis}}",
          target: { platform: "slack", channelId: "#ops-daily" }
        }
      ],
      onError: {
        notify: {
          platform: "telegram",
          chatId: "admin_123",
          message: "ワークフロー daily-ops の実行が失敗しました:{{error}}"
        }
      }
    }
  }
}

ワークフローステップは条件分岐もサポートしており、前のステップの出力に基づいて異なるアクションを実行できます。

タスク管理

コマンドライン管理

# すべての定時タスクを表示
openclaw schedules list

# 特定のタスクを手動でトリガー(Cron時間を待たない)
openclaw schedules run morning-greeting

# タスクを一時停止
openclaw schedules pause weekly-summary

# タスクを再開
openclaw schedules resume weekly-summary

# タスク実行履歴を表示
openclaw schedules history morning-greeting --last 10

Dashboardでの管理

OpenClaw Web Dashboardはビジュアルなタスク管理インターフェースを提供し、すべての定時タスクの状態と次回実行時間の確認、手動でのタスク実行トリガー、実行ログと出力の確認、タスクの一時停止・再開・編集が可能です。

エラー処理とリトライ

定時タスクにはリトライ設定(最大リトライ回数、バックオフ間隔)、タイムアウト設定、全リトライ失敗時の通知設定を行えます。

外部Cronとの統合

既存のCronシステム(Linux crontab、Kubernetes CronJobなど)がある場合、APIを通じてOpenClawタスクをトリガーすることもできます。

0 8 * * * curl -X POST http://localhost:3000/api/v1/schedules/morning-greeting/run \
  -H "Authorization: Bearer sk-openclaw-xxx"

ベストプラクティス

  1. タイムゾーンの明示:常に timezone を明示的に指定し、サーバーのタイムゾーンによる混乱を避ける
  2. エラー通知:重要なタスクには失敗通知を設定し、サイレント失敗を防止
  3. 実行ウィンドウ:システムのピーク時間帯に大量の定時タスクをスケジュールしない
  4. 冪等設計:タスクは繰り返し実行可能に設計し、リトライによる重複操作を防止
  5. ログの確認:タスク実行履歴を定期的に確認し、タスクの正常動作を確認

まとめ

OpenClawの定時メッセージと自動化ワークフロー機能は、AI Agentを受動的な応答から能動的なサービスへとアップグレードします。Cronスケジューリング、ワークフローのチェーン実行、条件分岐、エラー処理を通じて、完全な自動化フローを構築できます。シンプルな定時リマインダーから複雑な多段階データ処理ワークフローまで、OpenClawはすべてに対応できます。

OpenClawは無料のオープンソースAIアシスタント。WhatsApp、Telegram、Discordなど多数のプラットフォームに対応