Claude Code官方文档桌面应用定时任务

Claude Code 桌面定时任务 - 每日 PR 审查与依赖审计

在 Claude Code Desktop 中设置计划任务,让 Claude 自动定期运行:每日代码审查、依赖审计或晨间简报。

· 阅读约 10 分钟

在 Claude Code Desktop 中安排定期任务

在 Claude Code Desktop 中设置计划任务,让 Claude 自动定期运行:每日代码审查、依赖更新审计或晨间简报。

计划任务在你选择的时间和频率自动启动新会话。可用于定期工作,例如每日代码审查、依赖更新检查或从你的日历和收件箱中提取信息的晨间简报。

桌面应用的 Routines 页面让你可以创建本地计划任务和远程 routines。本地任务在你的机器上运行,可以直接访问你的文件和工具,但仅在应用打开且计算机唤醒时触发。远程 routine 在 Anthropic 管理的云基础设施上运行,即使你的计算机关闭也是如此,并且也可以在 API 调用或 GitHub 事件上触发。本页涵盖本地计划任务;有关远程 routine 及其触发选项,请参阅 Routines

比较调度选项

Claude Code 提供三种调度定期或一次性工作的方式:

CloudDesktop/loop
运行在Anthropic 云你的机器你的机器
需要机器开机
需要打开会话
重启后持久化如果未过期则在 --resume 时恢复
访问本地文件否(新克隆)
MCP servers每个任务配置的连接器配置文件 和连接器从会话继承
权限提示否(自主运行)每个任务可配置从会话继承
可自定义计划通过 CLI 中的 /schedule
最小间隔1 小时1 分钟1 分钟

💡 使用云任务进行需要可靠地运行而无需你的机器的工作。使用桌面任务当你需要访问本地文件和工具时。使用 /loop 进行会话期间的快速轮询。

ℹ️ 默认情况下,计划任务针对你的工作目录的当前状态运行,包括未提交的更改。在创建任务时启用 worktree 切换以使每次运行都有自己的隔离 Git worktree,与并行会话的工作方式相同。

创建计划任务

点击侧边栏中的 Routines,然后点击 New routine 并选择 Local。配置以下字段:

字段描述
Name任务的标识符。转换为小写 kebab-case 并用作磁盘上的文件夹名称。在你的任务中必须唯一。
Description任务列表中显示的简短摘要。
Instructions任务运行时 Claude 应做什么。以与你在提示框中编写任何消息相同的方式编写它。指令输入包括权限模式和模型的选择器,下方你可以选择工作文件夹以及是否在隔离的 worktree 中运行。
Schedule任务运行的频率。请参阅下面的计划选项

保存任务之前需要文件夹。如果你尚未信任该文件夹,Desktop 会在保存之前提示你信任它。

你也可以通过在任何会话中描述你想要的内容来创建任务。例如,“set up a daily code review that runs every morning at 9am” 创建一个定期任务,“remind me at 3pm tomorrow to check the deploy” 创建一个一次性任务,在它触发后会禁用自己。

计划选项

从计划控件中选择一个预设:

  • Manual:无计划,仅在你点击 Run now 时运行。用于保存按需触发的提示
  • Hourly:每小时运行
  • Daily:显示时间选择器,默认为本地时间上午 9:00
  • Weekdays:与 Daily 相同但跳过星期六和星期日
  • Weekly:显示时间选择器和日期选择器

对于选择器不提供的间隔,例如每 15 分钟、每月一日或在特定未来时间的单次运行,请在任何 Desktop 会话中要求 Claude 设置计划。使用普通语言;例如,“schedule a task to run all the tests every 6 hours.”

计划任务如何运行

计划任务在你的机器上运行。Desktop 在应用打开时每分钟检查一次计划,并在任务到期时启动一个新会话,独立于你打开的任何手动会话。每个任务在计划时间后获得几分钟的小延迟以分散 API 流量。延迟是确定性的:相同的任务总是在相同的偏移量启动。

当任务触发时,你会收到桌面通知,并且新会话出现在侧边栏的 Scheduled 部分下。打开它以查看 Claude 做了什么、审查更改或响应权限提示。会话像任何其他会话一样工作:Claude 可以编辑文件、运行命令、创建提交和打开拉取请求。

任务仅在桌面应用运行且你的计算机唤醒时运行。如果你的计算机在计划时间睡眠,则跳过该运行。要防止空闲睡眠,请在设置中的桌面应用 → 常规下启用 Keep computer awake。关闭笔记本电脑盖仍然会使其睡眠。对于即使在你的计算机关闭时也需要运行的任务,或者应该在 API 调用或 GitHub 事件上触发的任务,请改为创建远程 routine

错过的运行

当应用启动或你的计算机唤醒时,Desktop 会检查每个任务在过去七天内是否错过了任何运行。如果是,Desktop 会为最近错过的时间启动恰好一次补偿运行,并丢弃任何更早的内容。错过六天的每日任务在唤醒时运行一次。Desktop 会在补偿运行启动时显示通知。

在编写提示时请记住这一点。如果你的计算机整天睡眠,计划在上午 9 点的任务可能会在晚上 11 点运行。如果时间很重要,请将护栏添加到提示本身中,例如:“Only review today’s commits. If it’s after 5pm, skip the review and just post a summary of what was missed.”

计划任务的权限

每个任务都有自己的权限模式,你在创建或编辑任务时设置。来自 ~/.claude/settings.json 的允许规则也适用于计划任务会话。如果任务在 Ask 模式下运行并需要运行它没有权限的工具,则运行将停滞,直到你批准它。会话保持在侧边栏中打开,以便你稍后可以回答。

为避免停滞,请在创建任务后点击 Run now,注意权限提示,并为每个提示选择”always allow”。该任务的未来运行会自动批准相同的工具,而不会提示。你可以从任务的详细信息页面查看和撤销这些批准。

管理计划任务

点击 Routines 列表中的任务以打开其详细信息页面。从这里你可以:

  • Run now:立即启动任务,无需等待下一个计划时间
  • Status:在 Active 和 Paused 之间切换,以暂停或恢复计划运行而不删除任务
  • Edit:更改指令、计划、文件夹或其他设置
  • Review history:查看每次过去的运行,包括跳过的运行。将鼠标悬停在跳过的条目上以查看原因:你的计算机正在睡眠,先前的运行仍在进行中,或其他计划任务已经在运行。点击 Show more 加载较旧的条目。
  • Review allowed permissions:从 Always allowed 面板查看和撤销此任务的已保存工具批准
  • Delete:删除任务并归档它创建的所有会话

你也可以通过在任何 Desktop 会话中要求 Claude 来列出、创建、编辑和暂停任务。例如,“pause my dependency-audit task” 或 “show me my scheduled tasks.” 要删除任务,请使用其详细信息页面上的 Delete 按钮。

要在磁盘上编辑任务的提示,请打开 ~/.claude/scheduled-tasks/<task-name>/SKILL.md(或在设置时打开 CLAUDE_CONFIG_DIR 下的内容)。该文件使用 YAML frontmatter 用于 namedescription,提示作为正文。更改在下次运行时生效。Schedule、folder、model 和 enabled 状态不在此文件中:通过 Edit 表单更改它们或要求 Claude。

相关资源


本文翻译自 Anthropic Claude Code 官方文档,最近一次同步:2025-05-01。 (原文为英文,已翻译)