14.2 /loop 命令:定时任务调度器

面向经管学生、研究者与从业者的 AI 智能体设计教材

作者

李学恒、林建浩、严翊歆

发布于

2026-05-11

14.2 配图

/loop 是 Claude Code v2.1.71 新增的内置命令,定位为会话级定时任务调度器(Session-level Scheduled Task Scheduler)。它允许用户用一句自然语言,让 Claude 在后台按固定间隔自动重复执行某个任务。

基本语法

/loop [时间间隔] <任务描述>

时间间隔可以放在任务描述前面,也可以嵌入自然语言中,还可以省略。省略时默认 10 分钟。

时间间隔格式

单位 缩写 示例 说明
s 30s 向上取整到 1 分钟(最小粒度限制)
分钟 m 5m30m 最常用的间隔单位
小时 h 1h2h 适合定期巡检
d 1d 适合每日汇总任务
知识卡片:cron 表达式

/loop 底层使用标准 cron(Cron Expression)调度。cron 是 Unix 系统的定时任务机制,用五个字段描述执行时间:分 时 日 月 星期几。你不需要手写 cron 表达式——/loop 会把自然语言的时间间隔自动转换为 cron 格式。但了解这一点有助于理解为什么最小粒度是 1 分钟:cron 本身不支持秒级调度。

用法示例

▶ Claude Code
/loop 5m 检查部署是否完成
▶ Claude Code
/loop 30m 检查当前分支的 PR,如果 CI 失败了,看看报错日志,能修的就修掉并 push
▶ Claude Code
/loop 1h 读取 data/ 目录下最新的 CSV 文件,汇总关键指标,写入 daily-summary.md
▶ Claude Code
/loop 24h 总结过去 24 小时 main 分支的所有提交,包括 PR 标题、作者、改了哪些文件,写到 daily-change.md

/loop 还可以嵌套调用已有的 Skill:

▶ Claude Code
/loop 1h /review-pr

一次性提醒

除了循环任务,/loop 也支持一次性定时提醒。执行后自动删除,不会重复触发:

▶ Claude Code
remind me at 3pm to push the release branch
▶ Claude Code
in 45 minutes, check whether the integration tests passed

任务管理

查看当前所有定时任务:

▶ Claude Code
what scheduled tasks do I have?

取消某个任务:

▶ Claude Code
cancel the deploy check job

也可以用底层命令直接操作。/loop 背后有三个底层工具:

工具 功能
CronCreate 创建定时任务,接受 cron 表达式、提示词和是否循环
CronList 列出所有定时任务的 ID、调度计划和提示词
CronDelete 通过 8 位 ID 取消指定任务

通常你不需要直接调用这些工具,用自然语言管理任务即可。

技术限制

/loop 是轻量级调度器,有明确的能力边界:

约束项 说明
会话级 任务绑定当前终端 session,关闭终端即全部消失
不持久化 重启 Claude Code 后所有任务清空
不补跑 Claude 繁忙时错过的触发不会补执行,空闲后只触发一次
不插队 Claude 正在响应对话时,定时任务排队等待
最多 50 个 每个 session 最多同时运行 50 个定时任务
3 天过期 循环任务创建 72 小时后自动过期
最小粒度 1 分钟(cron 限制)
时区 使用本地时区
抖动机制 循环任务有最多 10%(上限 15 分钟)的随机延迟
会话级限制

/loop 创建的所有任务在终端关闭后立即消失,不会自动恢复。如果你需要跨重启的持久化调度,考虑 Claude Code Desktop 的 scheduled tasks 功能,或用 GitHub Actions 的 cron trigger 在服务端定时运行。

可以通过环境变量 CLAUDE_CODE_DISABLE_CRON=1 完全禁用调度器。