Skip to main content
任务自动化

重复执行任务(/loop)

概述

/loop 让 Qoder CLI 按固定时间间隔重复运行同一个提示词或斜杠命令。它适合轮询状态、持续检查、周期性重复动作等场景,例如"每 5 分钟检查一次部署""每半小时看一下 PR 队列"。 /loop 是定时任务的一个简化入口:你只需给出一个时间间隔,Qoder 会把它转换成对应的周期计划并创建任务。如果你需要更精确的日历计划(例如"每周一上午 9 点"),请使用定时任务,见 定时执行任务

命令格式

/loop [interval] <prompt>
  • interval:可选的时间间隔。不指定时默认为 10 分钟(10m
  • prompt:要重复运行的提示词或斜杠命令。
示例:
/loop 5m /babysit-prs
/loop 30m check the deploy
/loop 1h /standup 1
/loop check the deploy          # 未指定间隔,默认 10m
/loop check the deploy every 20m
创建后,Qoder 会立即执行一次该提示词,而不会等到第一个周期才开始。

时间间隔语法

时间间隔由数字加单位组成,支持四种单位:
单位含义示例
s30s
m分钟5m
h小时2h
d1d
最小粒度是 1 分钟。 由于底层调度不含秒级字段,秒会向上取整到最近的整分钟——例如 30s 会被当作 1m,Qoder 会告诉你实际取整后的间隔。 间隔到 Cron 的转换规则:
间隔对应计划说明
Nm(N ≤ 59)每 N 分钟
Nm(N ≥ 60)圆整为小时需能整除 24 小时
Nh(N ≤ 23)每 N 小时
Nd每 N 天午夜(本地时间)
Ns向上取整为分钟最小 1 分钟
如果间隔不能整除其单位(例如 7m 会导致 :56:00 的间隔不均匀,90m 无法用整点表达),Qoder 会选择最接近的整齐间隔,并在创建前告诉你它取整成了什么。

两种写法

间隔可以写在开头,也可以用结尾的 every 子句表达:
  • 开头的间隔/loop 5m check the deploy → 间隔 5m,提示词 check the deploy
  • 结尾的 every 子句/loop check the deploy every 20m → 间隔 20m,提示词 check the deploy。也支持 every 5 minutesevery 2 hours 这类自然表达。
注意 every 只有在后面跟的是时间表达时才当作间隔。例如 /loop check every PR 中的 every 不是时间表达,会被当作提示词的一部分,间隔取默认值 10m

自动失效与取消

/loop 创建的是周期任务,会在创建后 7 天 自动过期。如果需要长期运行,到期后重新创建即可。 创建成功后,Qoder 会告诉你调度的内容、对应的周期、自动过期时间,以及用于取消的任务 id。需要提前停止时,让 Qoder 按该 id 取消对应的循环任务即可。 完整的参数、默认值和失效规则见 /loop 命令参考。