Skip to main content
参考

定时任务参考

定时任务的字段级参考:cron 表达式语法、保存位置、运行限制与自动过期规则

定时任务让 Qoder CLI 在指定时间自动触发一段提示或斜杠命令。本页说明 cron 表达式格式、保存位置与运行限制。关于定时任务的使用指南,见 定时执行任务

cron 表达式格式

定时任务使用标准 5 字段 cron 表达式,按运行 CLI 的本地时区解释
┌───────── 分钟 (0-59)
│ ┌─────── 小时 (0-23)
│ │ ┌───── 日 (1-31)
│ │ │ ┌─── 月 (1-12)
│ │ │ │ ┌─ 周几 (0-6, 0=周日; 7 也视为周日)
│ │ │ │ │
* * * * *
支持的字段语法:
语法含义示例
*通配符,匹配全部* * * * *(每分钟)
N单个值0 9 * * *(每天 9:00)
*/N步长,每隔 N 个单位*/15 * * * *(每 15 分钟)
N-M范围0 9-17 * * *(9 点到 17 点整点)
N,M,...列表0 9,12,18 * * *(每天 9/12/18 点)
不支持 LW? 及名称别名。当日与周几同时被限定时,采用“或”语义——任一匹配即触发(标准 cron 行为)。
常见示例:
表达式含义
*/10 * * * *每 10 分钟
0 * * * *每小时整点
0 9 * * *每天 9:00
0 9 * * 1-5工作日 9:00
0 0 */2 * *每隔 2 天的 0:00

保存位置

持久化的定时任务保存在项目下的 .qoder/scheduled_tasks.json。文件格式:
{
  "tasks": [
    {
      "id": "a1b2c3d4",
      "cron": "0 9 * * *",
      "prompt": "/standup",
      "createdAt": 1700000000000,
      "recurring": true
    }
  ]
}
任务字段:
字段说明
id8 位十六进制的任务标识。
cron5 字段 cron 表达式。
prompt触发时排入的提示文本或斜杠命令。
createdAt创建时间戳(毫秒)。
lastFiredAt上次触发时间戳(毫秒,循环任务写回)。
recurring是否为循环任务。

任务类型

  • 一次性任务recurring 为 false 或缺省):触发一次后自动删除。
  • 循环任务recurring: true):按周期重复触发,从当前时间重新排期,直到显式删除或自动过期。

运行限制与过期

  • 任务数量上限:最多 50 个任务,达到上限后需先删除已有任务才能创建新任务。
  • 自动过期:循环任务在创建后 7 天自动过期清理(一次性任务触发后即删除)。
  • 抖动调度:为避免多个会话在同一时刻集中触发,调度器会加入确定性的抖动延迟——循环任务最多向后延迟其间隔的 10%(上限 15 分钟);一次性任务在对齐到 30 分钟边界时最多提前 90 秒触发。抖动基于任务 ID 计算,跨重启稳定。
  • 错过的任务:若某任务的下次计划运行时间已在过去(进程未运行期间错过),会在启动时提示。
  • 单进程驱动:同一项目目录由文件锁保证只有一个进程驱动调度,避免重复触发。

创建与删除

  • 通过 Agent 的定时任务工具创建、列出、删除任务(在对话中用自然语言请求即可)。
  • 通过 /loop 可快捷创建循环任务,见 Loop 命令参考
  • 循环任务可在 7 天自动过期前手动删除。

下一步