Skip to content

Routines:云端自动化任务

Routine 是一段保存好的 Claude Code 配置(提示语 + 仓库 + MCP connectors),运行在 Anthropic 托管的云端基础设施,电脑关机也照常执行。支持三种触发方式:定时(hourly/daily/weekdays/weekly)、API 端点(HTTP POST + bearer token)、GitHub 事件(PR/Release)。可在 claude.ai/code/routines 管理,或通过 CLI 的 /schedule 命令创建。

Routine 是一段保存好的 Claude Code 配置:一条提示语、一个或多个仓库,以及一组 MCP connectors,一次配置、自动运行。Routines 在 Anthropic 托管的云端基础设施上执行,关闭笔记本也不会中断。

每个 Routine 可以附加一个或多个触发器:

  • 定时:按固定节奏(每小时、每晚、每周)运行
  • API:发送带有 bearer token 的 HTTP POST 按需触发
  • GitHub:响应仓库事件(PR、Release 等)自动运行

单个 Routine 可以组合多种触发器。Routines 需要 Pro、Max、Team 或 Enterprise 计划,并开启 Claude Code on the web。在 claude.ai/code/routines 管理,或在 CLI 中用 /schedule 创建。


典型使用场景

Backlog 整理:定时触发每晚运行,通过 connector 读取 issue tracker,自动打标签、分配负责人,并把摘要发到 Slack。

告警分类:监控工具在阈值触发时调用 Routine 的 API 端点,传入告警内容。Routine 拉取堆栈跟踪、与近期 commit 关联,开一个包含修复建议的草稿 PR 并链接原告警。

代码审查:GitHub 触发器在 pull_request.opened 时运行,按团队自定义 checklist 检查安全、性能和代码风格,添加行内评论和汇总说明。

部署验证:CD 流水线在每次生产部署后调用 API 端点,Routine 运行冒烟检查、扫描错误日志,在部署窗口关闭前发布上线/回滚建议。

文档漂移检测:每周定时运行,扫描已合并 PR,标出引用了变更 API 的过时文档,对 docs 仓库开 update PR。

多语言 SDK 同步:在一个 SDK 仓库合并 PR 时触发,把变更移植到另一个语言的并行 SDK 并开对应 PR。


创建 Routine

支持从 Web、Desktop 或 CLI 创建,三个界面都写入同一个云账号,立即同步。

Web 端:在 claude.ai/code/routines 填写创建表单。

CLI

bash
/schedule
# 或直接描述
/schedule daily PR review at 9am

/schedule 只创建定时 Routine。要添加 API 或 GitHub 触发器,在 Web 编辑 Routine。

其他 CLI 管理命令:

bash
/schedule list      # 查看所有 Routines
/schedule update    # 修改某个 Routine
/schedule run       # 立即触发

Desktop 应用:点击 ScheduleNew taskNew remote task。选 New local task 则创建本地定时任务,运行在本机而非云端。

注意:Routines 以无权限提示方式运行完整的 Claude Code 云端会话,可以执行 Shell 命令、使用仓库中的 skills,以及调用配置的 connectors。Routines 归属个人 claude.ai 账号,不与团队成员共享,消耗账号的每日运行配额。所有操作以你的身份出现(commit、PR、Slack 消息等均使用你的账号)。


配置触发器

在 Routine 编辑表单的 Select a trigger 区域添加或移除触发器,支持随时修改。

定时触发

Select a trigger 中选择预设频率:hourly、daily、weekdays 或 weekly。时间输入为本地时区,自动转换。运行时间可能因随机偏移而延迟几分钟(偏移对每个 Routine 固定)。

自定义间隔(如每两小时、每月一号)可先选最接近的预设,再用 CLI 运行 /schedule update 设置具体 cron 表达式。最小间隔为 1 小时。

API 触发

API 触发器为 Routine 生成专用 HTTP 端点,POST 请求加 bearer token 即可启动新会话并返回会话 URL。适合接入告警系统、部署流水线、内部工具等。

触发示例:

bash
curl -X POST https://api.anthropic.com/v1/claude_code/routines/trig_01ABCDEFGHJKLMNOPQRSTUVW/fire \
  -H "Authorization: Bearer sk-ant-oat01-xxxxx" \
  -H "anthropic-beta: experimental-cc-routine-2026-04-01" \
  -H "anthropic-version: 2023-06-01" \
  -H "Content-Type: application/json" \
  -d '{"text": "Sentry alert SEN-4521 fired in prod. Stack trace attached."}'

text 字段是可选的本次运行上下文(告警内容、失败日志等),作为纯文本传递给 Routine。

成功响应:

json
{
  "type": "routine_fire",
  "claude_code_session_id": "session_01HJKLMNOPQRSTUVWXYZ",
  "claude_code_session_url": "https://claude.ai/code/session_01HJKLMNOPQRSTUVWXYZ"
}

打开 session URL 可在浏览器实时查看运行过程。每个 Routine 有独立 token,可在管理页面轮换或吊销。

GitHub 触发

GitHub 触发器在连接的仓库发生匹配事件时自动启动新会话,每个匹配事件各启动一个独立会话。目前只能通过 Web UI 配置。

支持的事件类别

事件触发条件
Pull requestPR 被打开、关闭、分配、打标签、同步或其他更新
ReleaseRelease 被创建、发布、编辑或删除

过滤 PR:所有过滤条件必须同时满足才触发。

过滤字段匹配内容
AuthorPR 作者的 GitHub 用户名
TitlePR 标题文本
BodyPR 描述文本
Base branchPR 目标分支
Head branchPR 来源分支
LabelsPR 上的标签
Is draft是否为草稿 PR
Is merged是否已合并
From fork是否来自 fork

操作符支持:equals、contains、starts with、is one of、is not one of、matches regex。正则表达式匹配整个字段值,不是子串——要匹配包含 hotfix 的标题需写 .*hotfix.*;纯子串匹配用 contains 操作符。

过滤组合示例:

  • auth 模块审查:base branch = main,head branch contains auth-provider
  • 外部贡献者分流:from fork = true,额外安全和风格审查
  • 仅审阅就绪的 PR:is draft = false,跳过草稿
  • 标签驱动 backport:labels include needs-backport,仅在维护者打标签后触发移植

管理 Routines

点击列表中的 Routine 进入详情页,包含仓库、connectors、提示语、定时计划、API token、GitHub 触发器和历史运行列表。

  • Run now:立即触发,不等下次定时
  • 暂停/恢复:保留配置但不运行,直到重新启用
  • 编辑:修改名称、提示语、仓库、环境、connectors、触发器
  • 删除:移除 Routine,过去的会话仍保留在会话列表中

仓库和分支权限:每次运行都会重新克隆仓库。默认从仓库默认分支开始,默认只能推送到 claude/ 前缀的分支。要允许无限制分支推送,在创建或编辑 Routine 时为该仓库启用 Allow unrestricted branch pushes

Connectors:Routines 创建时默认包含所有已连接的 connectors,移除不需要的以限制访问范围。

环境:每个 Routine 在云端环境中运行,控制网络访问、环境变量和安装脚本。


用量和限制

Routines 消耗订阅用量,与交互式会话相同。另外还有每账号每日运行数上限。在 claude.ai/code/routinesclaude.ai/settings/usage 查看当前消耗和剩余运行次数。

启用了额外用量(extra usage)的组织,超出每日上限后可继续按量计费运行。否则,直到窗口重置前新运行会被拒绝。在 Settings > Billing 启用额外用量。


相关文档


常见问题

Q: Routines 和 /loop 有什么区别?

A: /loop 是会话内的调度,会话关闭就停止,且只能在你的本机运行。Routines 运行在 Anthropic 云端,关电脑也继续执行,支持定时、API 调用和 GitHub 事件三种触发方式,适合无人值守的自动化场景。

Q: 一个 Routine 可以同时有多个触发器吗?

A: 可以。同一个 Routine 可以同时挂载定时触发器、API 触发器和 GitHub 触发器,任意触发方式都会启动新会话。

Q: Routine 运行的代码改动会直接推到主分支吗?

A: 不会。默认只能推送到 claude/ 前缀的分支,防止误改保护分支。需要开放权限时,在 Routine 设置里为该仓库启用 Allow unrestricted branch pushes