/loop 命令的循环间隔支持多种时间格式,用户可以通过简洁的后缀指定循环的执行频率。理解这些格式是正确使用 /loop 的基础。
时间值由 数字 + 单位后缀 组成,目前支持的四种单位后缀:
s(秒):最小单位,用于高频轮询场景m(分):最常用的单位,适用于常规检查任务h(小时):用于长周期任务,如报告生成、文档更新d(天):用于极低频率任务,如安全扫描、知识库同步系统解析时间参数时遵循以下规则:
1s、30s、120m 均合法5M 和 5m 等效/loop 的最小间隔为 60 秒。任何小于 60 秒的间隔设置(如 30s、45s)都会自动被系统提升至 60 秒。这是因为过于频繁的循环会给系统带来不必要的负载,并可能导致 API 限流或资源争用。设置 30s 时实际执行间隔会变成 60 秒。
以下情况会被视为非法格式并报错:
s 或 m 而不带数字30 而不带单位后缀w(周)、ms(毫秒)-5m 或 0s 这类无意义的设置1.5m 不支持小数,请使用 90s 替代遇到不合法格式时,系统会返回明确的错误提示,指导用户修正输入。
不同的任务场景对循环间隔的要求差异很大。选择合适的间隔策略可以在资源消耗和实时性之间取得平衡。下表总结了不同场景的推荐间隔。
| 间隔范围 | 应用场景 | 典型用途 | 说明 |
|---|---|---|---|
| 30s - 2m | 快速轮询 | 构建状态 / 实时监控 | 对时效性要求极高的场景,最小受限于 60s 下限 |
| 5m - 15m | 常规检查 | 测试结果 / CI 状态 / 日志扫描 | 最常用的间隔范围,兼顾实时性和资源开销 |
| 30m - 1h | 长周期任务 | 数据备份 / 文档更新 / 报告生成 | 不需要频繁检查但需要定期执行的任务 |
| > 1h | 日/周任务 | 安全扫描 / 知识库更新 / 定期报告 | 低频维护类任务,对执行时间不敏感 |
快速轮询适用于需要密切关注状态变化的场景。例如持续集成中的构建状态监控、服务器健康检查、实时数据流的状态跟踪等。这类任务的核心诉求是尽快发现状态变化并作出响应。
常规检查是日常工作中最常用的间隔策略。适用于检查测试结果、查看 CI/CD 流水线状态、扫描日志文件等需要适度频率的任务。这个间隔既保证了合理的响应速度,又不会对系统造成过大负担。
对于数据备份、文档自动更新、定期报告生成等任务,使用较长的间隔更为合理。这类任务通常不需要频繁执行,执行一次的耗时也可能较长,使用较长的间隔可以避免任务重叠。
安全扫描、知识库定期更新、周期性的数据清理等低频任务,适合使用小时甚至天级别的间隔。这类任务通常作为维护性工作,对执行时间点的精确度要求不高。
理解 /loop 的间隔精度行为对于设计可靠的自动化任务非常重要。与传统的精确定时器不同,/loop 采用了更灵活的时间调度策略。
/loop 不承诺在严格精确的时间点触发。实际的执行时间会受到系统负载、任务执行时长、网络延迟等因素的影响。换句话说,设置 5m 并不意味着任务会在 0:00、5:00、10:00 这样的整点时间精确触发。
系统会在每次触发时自动添加 10% 以内的随机抖动。这是有意为之的设计,目的是避免多个任务在同一时间点 "蜂拥" 触发,从而分散系统负载。
/loop。/loop 的设计定位是 "简单易用的循环工具",而非 "精确的定时调度器"。
/loop 的一大特色是支持 动态模式——即不指定固定间隔,让 AI 根据任务内容自主决定执行节奏。这为某些不确定执行频率的场景提供了极大的灵活性。
动态模式的语法非常简单:直接省略间隔参数,在 /loop 后面跟上提示词即可。
在上述例子中,AI 会根据任务的上下文和当前状态,智能判断下一次检查应该在什么时间进行。
在动态模式下,AI 会综合考虑以下因素来决定执行节奏:
| 对比维度 | 动态模式 | 固定间隔 |
|---|---|---|
| 适用场景 | 执行时间不确定的任务 | 规律性明确的周期性任务 |
| 资源效率 | 高(自适应调整) | 中(固定频率可能偏高或偏低) |
| 实时性 | 中(取决于 AI 判断) | 高(可预测的执行间隔) |
| 可预测性 | 低(无法预知下一次检查时间) | 高(明确知道执行间隔) |
选择建议:对于简单的轮询任务(如定期检查状态),使用固定间隔更可靠;对于复杂的、状态多变的任务,动态模式可以更高效地利用资源。
正确选择和管理循环间隔是高效使用 /loop 的关键。以下最佳实践可以帮助你避免常见陷阱,最大化资源利用效率。
推荐采用 "渐进式" 的间隔调整策略:
/loop 1m 或 /loop 2m 快速验证任务是否按预期工作/loop 5m 或 /loop 10m 减少轮询频率/loop 15m 或更长的间隔| 常见错误 | 问题 | 建议 |
|---|---|---|
| 间隔设置过短(30s) | 实际仍为 60s,且造成不必要的资源浪费 | 对于大多数任务,至少设置 2m 或更长的间隔 |
| 从不调整间隔 | 开发阶段的短间隔在生产环境中持续运行 | 稳定后记得延长间隔,根据实际情况动态调整 |
| 忽视抖动影响 | 期待精确触发但实际存在偏差 | 接受 10% 的抖动,或使用 cron 替代需要精确时间的场景 |
| 全用动态模式 | 在需要规律执行的场景中造成不可预测性 | 规律性任务用固定间隔,不确定性任务用动态模式 |
核心要点总结:/loop 的间隔设置核心在于平衡实时性和资源消耗。理解时间格式(s/m/h/d)、掌握不同场景的间隔策略、接受自动抖动机制、善用动态模式,以及遵循 "从短开始、逐步延长" 的调整原则,可以让你更高效地使用 /loop 命令。