比较调度选项
Claude Code offers three ways to schedule recurring or one-off work:默认情况下,定期任务针对您的工作目录的任何状态运行,包括未提交的更改。在创建任务时启用 worktree 切换,为每次运行提供其自己的隔离 Git worktree,与 parallel sessions 的工作方式相同。
创建定期任务
单击侧边栏中的 Routines,然后单击 New routine 并选择 Local。配置这些字段:
在保存任务之前需要一个文件夹。如果您还没有信任该文件夹,Desktop 会在保存前提示您信任它。
您也可以通过在任何会话中描述您想要的内容来创建任务。例如,“设置一个每天早上 9 点运行的日常代码审查”会创建一个定期任务,“提醒我明天下午 3 点检查部署”会创建一个一次性任务,在触发后禁用自己。
调度选项
从 Schedule 控件中选择一个预设:- Manual:无调度,仅在您单击 Run now 时运行。适用于保存您按需触发的提示
- Hourly:每小时运行一次
- Daily:显示时间选择器,默认为本地时间上午 9:00
- Weekdays:与 Daily 相同,但跳过星期六和星期日
- Weekly:显示时间选择器和日期选择器
定期任务如何运行
定期任务在您的机器上运行。Desktop 在应用打开时每分钟检查一次调度,并在任务到期时启动一个新会话,独立于您打开的任何手动会话。每个任务在计划时间后会有几分钟的小延迟,以错开 API 流量。延迟是确定性的:同一任务总是在相同的偏移量处启动。 当任务触发时,您会收到桌面通知,新会话会在侧边栏的 Scheduled 部分下出现。打开它以查看 Claude 做了什么、审查更改或响应权限提示。会话的工作方式与任何其他会话相同:Claude 可以编辑文件、运行命令、创建提交和打开拉取请求。 任务仅在 desktop 应用运行且计算机处于唤醒状态时运行。如果您的计算机在计划时间内进入睡眠状态,该运行将被跳过。要防止空闲睡眠,请在 Settings 中的 Desktop app → General 下启用 Keep computer awake。关闭笔记本电脑盖仍会使其进入睡眠状态。对于需要在计算机关闭时运行或应该通过 API 调用或 GitHub 事件触发的任务,请改为创建远程 routine。错过的运行
当应用启动或计算机唤醒时,Desktop 会检查每个任务是否在过去七天内错过了任何运行。如果有,Desktop 会为最近错过的时间启动恰好一次追赶运行,并丢弃任何更早的运行。一个错过六天的日常任务在唤醒时运行一次。当追赶运行启动时,Desktop 会显示通知。 在编写提示时请记住这一点。计划在上午 9 点运行的任务可能在晚上 11 点运行,如果您的计算机整天处于睡眠状态。如果时间很重要,请在提示本身中添加护栏,例如:“仅审查今天的提交。如果已经是下午 5 点之后,请跳过审查,只发布一份错过内容的摘要。”定期任务的权限
每个任务都有自己的权限模式,您在创建或编辑任务时设置。来自~/.claude/settings.json 的允许规则也适用于定期任务会话。如果任务在 Ask 模式下运行并需要运行它没有权限的工具,运行将停滞,直到您批准它。会话保持在侧边栏中打开,以便您稍后可以回答。
为了避免停滞,在创建任务后单击 Run now,查看权限提示,并为每个提示选择”always allow”。该任务的未来运行会自动批准相同的工具,无需提示。您可以从任务的详细信息页面查看和撤销这些批准。
连接器工具您的组织设置为 ask和标记为 requiresUserInteraction 的 MCP 工具在每次调用时都会提示,并且不提供”always allow”选项。调用这些工具的运行每次都会停滞。
管理定期任务
单击 Routines 列表中的任务以打开其详细信息页面。从这里您可以:- Run now:立即启动任务,无需等待下一个计划时间
- Status:在 Active 和 Paused 之间切换,以暂停或恢复定期运行,而无需删除任务
- Edit:更改 instructions、schedule、folder 或其他设置
- Review history:查看每次过去的运行,包括跳过的运行。将鼠标悬停在跳过的条目上以查看原因:您的计算机处于睡眠状态、前一次运行仍在进行中,或其他定期任务已在运行。单击 Show more 以加载较早的条目。
- Review allowed permissions:从 Always allowed 面板查看和撤销此任务的已保存工具批准
- Delete:删除任务并存档它创建的所有会话。确认对话框中会出现 Also delete files on disk 复选框;选中它以同时删除任务的
SKILL.md文件和~/.claude/scheduled-tasks/中的关联数据。
update_scheduled_task MCP 工具从运行中的会话内修改其自己的调度或提示。这让任务可以根据它发现的内容重新调度自己,例如,当它检测到发布分支已创建时,将代码审查重新调度为更早运行。
要在磁盘上编辑任务的提示,请打开 ~/.claude/scheduled-tasks/<task-name>/SKILL.md(如果设置了 CLAUDE_CONFIG_DIR,则在其下)。该文件使用 YAML frontmatter 表示 name 和 description,提示作为正文。更改在下一次运行时生效。Schedule、folder、model 和 enabled 状态不在此文件中:通过 Edit 表单更改它们或询问 Claude。
相关资源
- Routines:在 Anthropic 管理的基础设施上按计划、通过 API 调用或响应 GitHub 事件运行任务,即使您的计算机关闭
- Run prompts on a schedule:在 CLI 中使用
/loop的会话范围调度 - Claude Code GitHub Actions:在 CI 中按计划运行 Claude,而不是在您的机器上
- Use Claude Code Desktop:完整的 Desktop 应用指南