概述
/loop 让 Qoder CLI 按固定时间间隔重复运行同一个提示词或斜杠命令。它适合轮询状态、持续检查、周期性重复动作等场景,例如"每 5 分钟检查一次部署""每半小时看一下 PR 队列"。
/loop 是定时任务的一个简化入口:你只需给出一个时间间隔,Qoder 会把它转换成对应的周期计划并创建任务。如果你需要更精确的日历计划(例如"每周一上午 9 点"),请使用定时任务,见 定时执行任务。
命令格式
interval:可选的时间间隔。不指定时默认为 10 分钟(10m)。prompt:要重复运行的提示词或斜杠命令。
时间间隔语法
| 单位 | 含义 | 示例 |
|---|---|---|
s | 秒 | 30s |
m | 分钟 | 5m |
h | 小时 | 2h |
d | 天 | 1d |
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 minutes、every 2 hours这类自然表达。
every 只有在后面跟的是时间表达时才当作间隔。例如 /loop check every PR 中的 every 不是时间表达,会被当作提示词的一部分,间隔取默认值 10m。
自动失效与取消
/loop 创建的是周期任务,会在创建后 7 天 自动过期。如果需要长期运行,到期后重新创建即可。
创建成功后,Qoder 会告诉你调度的内容、对应的周期、自动过期时间,以及用于取消的任务 id。需要提前停止时,让 Qoder 按该 id 取消对应的循环任务即可。
完整的参数、默认值和失效规则见 /loop 命令参考。