cron-helper

使用 openclaw cron CLI 管理定时任务。当用户需要周期提醒、定时任务、后台检查、定时执行 agent 任务时触发。关键词:定时、每天/每周/每小时/每分钟/每秒、提醒、schedule、remind、every、cron、定时任务、稍后执行、延迟执行、预定、计划、闹钟、倒计时、X分钟后、X秒后、几点几分。

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "cron-helper" with this command: npx skills add tclawde/openclaw-skills-user/tclawde-openclaw-skills-user-cron-helper

Cron Helper Skill

Purpose: Guides me to use openclaw cron CLI for time-based tasks and send logs on create/remove.

When to use:

  • User asks for periodic/reminder tasks
  • User mentions "remind me every X"
  • User needs scheduled background checks
  • User wants agent to perform a task at a specific time

Core Principle

Always prefer cron over manual timing.

Reason: I lack an internal clock. Manual "track time yourself" fails because I can get absorbed in reading/thinking and lose track of time. Cron is an external clock that works reliably.


Main vs Isolated Session

Isolated Session (RECOMMENDED for tasks) ✅ Best Practice

Use --session isolated when you want the agent to actually perform a task:

  • Agent receives the message and executes it
  • Can use tools (exec, read, message, etc.)
  • Can deliver output to a channel
  • Does not pollute main conversation history

Format:

openclaw cron add \
  --name "job_name" \
  --cron "0 9 * * *" \
  --session isolated \
  --message "Task instructions for the agent" \
  --deliver \
  --channel feishu

Main Session (simple notifications only)

Use --session main with --system-event for simple notifications only:

  • Just displays a message in main chat
  • Agent does NOT execute any tasks
  • No tool calls, no delivery

Format:

openclaw cron add \
  --name "reminder" \
  --at "+30m" \
  --session main \
  --system-event "Reminder: check email"

How I Should Respond

Step 1: Detect the request

Keywords: "every", "remind", "schedule", "定时", "每小时/每天/每周", "在X分钟后执行"

Step 2: Ask for details

Get from user:

  • What - task description or notification message
  • When - schedule (e.g., "every 2 hours", "at 9am daily", "in 10 minutes")
  • Delivery - does output need to be sent to a chat? (default: no)
  • Name - job name (optional, auto-generated if not provided)

Step 3: Create cron job

For agent tasks (RECOMMENDED):

openclaw cron add \
  --name "task_name" \
  --at "+10m" \
  --session isolated \
  --message "Your task instructions here" \
  --deliver \
  --channel feishu

For simple reminders:

openclaw cron add \
  --name "reminder" \
  --at "+10m" \
  --session main \
  --system-event "Your reminder message"

Remove a cron job:

openclaw cron rm <job_id>

List all cron jobs:

openclaw cron list

Other useful commands:

openclaw cron status          # 查看调度器状态
openclaw cron run <job_id>    # 立即触发任务
openclaw cron enable <job_id> # 启用任务
openclaw cron disable <job_id> # 禁用任务
openclaw cron runs <job_id>   # 查看执行历史

Delivery Options

When using --session isolated, you can deliver output to a chat:

OptionDescription
--deliverEnable delivery (required for channel output)
--channel <name>Channel: feishu, telegram, slack, whatsapp, etc.
--to <dest>Channel-specific target (chat ID, phone, etc.)
--post-mode fullPost full output instead of summary

Examples:

# Deliver to Feishu
--deliver --channel feishu

# Deliver to Telegram
--deliver --channel telegram --to "-1001234567890"

# Deliver with full output
--deliver --channel feishu --post-mode full

Common Options

OptionDescription
--cron <expr>Cron expression (5-field or 6-field with seconds)
--every <duration>Run every duration (e.g., 10m, 1h)
--at <when>Run once at time (ISO or +duration, supports m/s)
--tz <iana>Timezone (default: local)
--session main|isolatedTarget session (default: main)
--system-event <text>System event payload (main session only)
--message <text>Agent message payload (isolated session only)
--delete-after-runDelete one-shot job after success
--disabledCreate job in disabled state

Step 4: Send log

On CREATE/REMOVE only:

After creating or removing cron jobs, send ONE log with the exact command:

Log format:

# 新增任务
[HH:MM] CRON ✅
$ openclaw cron add \
  --name "job_name" \
  --at "+10m" \
  --session isolated \
  --message "task description" \
  --deliver \
  --channel feishu

# 删除任务
[HH:MM] CRON ❌
$ openclaw cron rm <job_id>

Examples:

# 新增
[21:30] CRON ✅
$ openclaw cron add \
  --name "daily-summary" \
  --cron "0 9 * * *" \
  --tz "Asia/Shanghai" \
  --session isolated \
  --message "总结今天的工作" \
  --deliver \
  --channel feishu

# 删除
[21:41] CRON ❌
$ openclaw cron rm 983a0f0e-0976-414a-b3d0-fd09c533e301

Key points:

  • Send log ONLY on create/remove, NOT on execution
  • Keep it minimal: One command block, no extra text

Cron → Human mapping (五位 - 分时日月周):

  • */5 * * * * → 每5分钟
  • */30 * * * * → 每30分钟
  • 0 * * * * → 每1小时
  • 0 */2 * * * → 每2小时
  • 0 9 * * * → 每天1次(09:00)
  • 0 10,22 * * * → 每天2次(10:00,22:00)
  • 0 9 * * 1 → 每周1次(周一09:00)

Cron → Human mapping (六位 - 秒分时日月周):

  • */1 * * * * * → 每1秒
  • */5 * * * * * → 每5秒
  • */30 * * * * * → 每30秒

Best Practice Summary

Use CaseSessionPayloadDelivery
Agent performs taskisolated--message--deliver
Simple notificationmain--system-event

Rule of thumb: If you want the agent to do something (use tools, send messages), use --session isolated + --message.


What NOT To Do

❌ Don't say "I'll set a reminder myself" ❌ Don't try to track time manually ❌ Don't use --system-event when you need the agent to execute tasks ❌ Don't forget --deliver when you need output sent to chat ❌ Don't send execution logs (only log on create/remove)

✅ Always use the openclaw cron CLI ✅ Use --session isolated for agent tasks ✅ Use --session main for simple notifications only ✅ Send log on create/remove only ✅ Keep log simple and clean


Common Schedule Patterns

五位 Cron(分 时 日 月 周)

FrequencyCron ExpressionCLI Flag
Every 5 min*/5 * * * *--cron "*/5 * * * *"
Every 30 min*/30 * * * *--cron "*/30 * * * *"
Every hour0 * * * *--cron "0 * * * *"
Every 2 hours0 */2 * * *--cron "0 */2 * * *"
Daily at 9am0 9 * * *--cron "0 9 * * *"
Twice daily (10am, 10pm)0 10,22 * * *--cron "0 10,22 * * *"
Weekly (Monday 9am)0 9 * * 1--cron "0 9 * * 1"

六位 Cron(秒 分 时 日 月 周)

FrequencyCron ExpressionCLI Flag
Every 1 second*/1 * * * * *--cron "*/1 * * * * *"
Every 5 seconds*/5 * * * * *--cron "*/5 * * * * *"
Every 30 seconds*/30 * * * * *--cron "*/30 * * * * *"

Duration flags:

FrequencyCLI Flag
Every 10 minutes--every "10m"
Every 2 hours--every "2h"
Once in 20 minutes--at "+20m"
Once in 20 seconds--at "+20s"

Loaded automatically when skill is installed.

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

screenshot_to_feishu

No summary provided by upstream source.

Repository SourceNeeds Review
General

xiaohongshu-mcp

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

Code Sync

Use this skill to batch-sync all git repos across machines — pushing uncommitted changes at end of day or pulling latest at start of day. Invoke when the use...

Registry SourceRecently Updated
Coding

free-local-web-search

100% FREE local web search for OpenClaw. Secure localhost-only SearXNG deployment. Supports hidden --dev flag.

Registry SourceRecently Updated
1231pipepi