关于 cron
用于通过 cron 工具安排提醒和周期性任务,并将结果发送到发起任务的聊天或会话。支持直接提醒、由 Agent 执行的任务,以及一次性计划。
主要功能
- 01安排直接提醒
- 02运行由 Agent 执行的周期任务
- 03安排完成后自动删除的一次性任务
- 04使用 cron 表达式和时区
适用场景
- 01在指定时间发送提醒
- 02定期执行检查并报告结果
- 03安排单次任务或预约提醒
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ hkuds/ nanobot --skill cron安装后在 Claude Code 中输入/cron确认已加载。
详细介绍
Cron
使用 cron 工具安排提醒或周期性任务,这些任务在运行时应当将结果报告回发起它们的聊天/会话。
不要将 cron 用于那些在没有有用内容可报告时应当保持静默的周期性后台检查。对于这类检查,请更新 HEARTBEAT.md;受保护的心跳任务会运行这些检查,并且只传递通过通知门控的结果。
三种模式
- 提醒 - 消息直接发送给用户
- 任务 - 消息是任务描述,Agent 执行并发送结果
- 一次性 - 在特定时间运行一次,然后自动删除
示例
固定提醒:
cron(action="add", message="Time to take a break!", every_seconds=1200)
动态任务(Agent 每次执行):
cron(action="add", message="Check HKUDS/nanobot GitHub stars and report", every_seconds=600)
一次性定时任务(根据当前时间计算 ISO 日期时间):
cron(action="add", message="Remind me about the meeting", at="<ISO datetime>")
支持时区的 cron:
cron(action="add", message="Morning standup", cron_expr="0 9 * * 1-5", tz="America/Vancouver")
列出/移除:
cron(action="list")
cron(action="remove", job_id="abc123")
时间表达式
| 用户说 | 参数 |
|---|---|
| 每 20 分钟 | every_seconds: 1200 |
| 每小时 | every_seconds: 3600 |
| 每天上午 8 点 | cron_expr: "0 8 * * *" |
| 工作日下<0xEF_BF_BD>午 5 点 | cron_expr: "0 17 * * 1-5" |
| 每天温哥华时间上午 9 点 | cron_expr: "0 9 * * *", tz: "America/Vancouver" |
| 在特定时间 | at: ISO 日期时间字符串(根据当前时间计算) |
时区
将 tz 与 cron_expr 一起使用,以在特定的 IANA 时区中安排任务。如果没有 tz,则使用服务器的本地时区。
评论
支持 Markdown