概述
/loop 让 Qoder CLI CN 重复运行同一个提示词或斜杠命令。它适合轮询状态、持续检查、周期性重复动作等场景,例如"每 5 分钟检查一次部署""每半小时看一下 PR 队列"。
/loop 有两种模式:
- 固定间隔:给出时间间隔,Qoder 会把它转换成对应的周期计划并创建定时任务。
- 动态节奏:不给间隔,由 Agent 根据任务进展自主决定下次检查的时机,适合"盯着 CI 直到变绿"这类节奏不固定的监控任务。
命令格式
interval:可选的时间间隔。指定时按固定间隔执行;不指定时进入动态节奏模式,由 Agent 自主决定下次执行时机。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 不是时间表达,会被当作提示词的一部分,整条命令进入动态节奏模式。
自动失效与取消
固定间隔的 /loop 创建的是周期任务,会在创建后 7 天 自动过期。如果需要长期运行,到期后重新创建即可。
创建成功后,Qoder 会告诉你调度的内容、对应的周期、自动过期时间,以及用于取消的任务 id。需要提前停止时,让 Qoder 按该 id 取消对应的循环任务即可。动态节奏模式下,Agent 不再安排下次唤醒即结束循环。
完整的参数、默认值和失效规则见 Loop 命令参考。