schedule-task
このスキルは、ユーザーが「タスクをスケジュール設定する」「cronジョブを設定する」「毎日/毎時間/毎週実行する」「定期的なタスクを作成する」などの要望をした場合、または定期的に自動実行されるタスクが必要な場合に使用します。
description の原文を見る
This skill should be used when the user asks to "schedule a task", "set up a cron job", "run something every day/hour/week", "create a recurring task", or needs periodic automated task execution.
SKILL.md 本文
Schedule Task (Cron)
cronスケジュールで実行される定期的なタスクを登録します。
動作方法
$CLAUDE_INBOX/schedule/cron.d/ に .job ファイルを作成します。claude-inbox-cron デーモンは30秒ごとにこれらのファイルをチェックし、マッチするタスクを送信します。
ジョブの作成
# 現在のタスクメタデータからchat_idを抽出してTelegramで返信
chat_id=$(head -1 /dev/stdin <<< "$TASK_CONTENT" | grep -oP 'chat_id=\K[^ \]]*')
cat > "$CLAUDE_INBOX/schedule/cron.d/my-job-name.job" <<EOF
name=my-job-name
schedule=0 8 * * *
prompt=Your task prompt here
channel=telegram
chat_id=$chat_id
EOF
フィールド
| フィールド | 必須 | 説明 |
|---|---|---|
name | はい | ユニークなジョブ名(セッション継続性も決定) |
schedule | はい | 5フィールドcron: min hour dom month dow |
prompt | はい | タスクプロンプト |
channel | いいえ | telegram に設定するとTelegramで返信を受け取ります |
chat_id | いいえ | Telegramチャット ID (channel=telegramの場合は必須) |
priority | いいえ | 0-9、デフォルト値は5 |
model | いいえ | モデルオーバーライド (haiku/sonnet/opus) |
スケジュール構文
標準的な5フィールドcron形式:
*= 毎回*/5= 5ごと(ステップ)1,3,5= 特定の値1-5= 範囲- 曜日: 1=月曜日 ... 7=日曜日
例:
0 8 * * *= 毎日午前8時0 8 * * 1= 毎週月曜日午前8時*/30 * * * *= 30分ごと0 9,18 * * 1-5= 平日午前9時と午後6時
セッション継続性
各ジョブは決定論的なsession_id (uuid5("cron:{name}"))を取得します。同じジョブの繰り返し実行はClaudeセッションを共有するため、エージェントは以前の実行を参照できます。
ジョブの管理
# すべてのジョブを一覧表示
ls "$CLAUDE_INBOX/schedule/cron.d/"
# ジョブを表示
cat "$CLAUDE_INBOX/schedule/cron.d/my-job-name.job"
# ジョブを削除
rm "$CLAUDE_INBOX/schedule/cron.d/my-job-name.job"
chat_idの取得
Telegramタスクからジョブを登録する場合、現在のタスクのメタデータヘッダーから chat_id を抽出します:
# メタデータはタスクコンテンツの最初の行にあります
# 例: [from=User channel=telegram chat_id=12345 msg_id=200 session_id=xxx]
chat_id はジョブに含める必要があり、cronがトリガーしたタスクがユーザーのTelegramチャットに返信できるようにします。
ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ
詳細情報
- 作者
- ar90n
- リポジトリ
- ar90n/claude-inbox
- ライセンス
- MIT
- 最終更新
- 2026/3/15
Source: https://github.com/ar90n/claude-inbox / ライセンス: MIT