Claude Code Routines 上线:定时、API、GitHub webhook 三种触发的云端自动化编码
过去要让 Claude Code 定时跑一个任务,你得自己维护 cron、保持机器常开、写一堆胶水脚本。Anthropic 推出的 Routines 把这件事搬到了云端:写好 prompt、连上仓库、设个触发器,任务就在 Anthropic 的云基础设施上自动跑,笔记本关了也照常执行。本文拆解它的运行机制、三种触发方式,以及对接自己工作流时要注意的限额与安全边界。
一、Routines 是什么
Routines 于 2026 年 4 月 14 日以 research preview 形式发布。一个 routine 本质上是一份保存好的 Claude Code 配置:一个 prompt、一个或多个仓库、一
组连接器(connectors),打包一次、自动运行。
核心机制:
- 跑在 Anthropic 云上,不依赖你的本地机器。触发时,Anthropic 拉起一个 Claude Code 容器、加载你的 routine、传入输入、跑到完成,然后持久化产物或通过 webhook 暴露结果。
- 每次运行都是全新会话——拿到所选仓库的全新 clone(从默认分支开始)、所有连接器、提交进仓库的 skills、按配置的网络访问,以及会话前运行的 setup 脚本。
- 没有人在回路里:没有权限模式选择、没有交互式审批。Claude 读 prompt、看仓库、调连接器、跑命令,然后提交到
claude/前缀分支、开 PR、发消息或调工具。
一句话定位:进步不在 AI 能力,而在触发基础设施。这些任务 Claude Code 早就能在交互会话里做,Routines 让它们在你不在场时也能跑。
二、三种触发器
| 触发类型 | 触发方式 | 典型场景 |
|---|---|---|
| Scheduled(定时) | 按小时/每天/工作日/每周的周期,或某个未来时间点一次性触发 | 每日生成报告、夜间跑测试、周报汇总 |
| API | 向 routine 专属端点发 HTTP POST(带 bearer token) | 外部系统(如告警平台)按需触发 |
| GitHub | 仓库事件(PR、push、release 等)自动触发 | PR 审查、CI 失败响应、发版流程 |
一个 routine 可以同时挂多个触发器。
2.1 Scheduled
定时 routine 支持按小时、每天、工作日、每周运行。时间按你的本地时区输入并自动转换。注意:比每小时更频繁的 cron 表达式会被拒绝。
CLI 里的 /schedule 现在就是创建一个 Scheduled Routine——同一个功能统一了名字。如果你之前在用 /schedule,已有任务会自动变成 Routines,无需迁移。
2.2 API 触发
向 routine 专属端点发 POST 即可触发,请求体带输入文本,返回新会话的 ID 和 URL:
curl -X POST https://api.anthropic.com/v1/claude_code/routines/trig_01ABC.../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 告警 SEN-4521 在生产触发,堆栈见附件。"}'
curl -X POST https://api.anthropic.com/v1/claude_code/routines/trig_01ABC.../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 告警 SEN-4521 在生产触发,堆栈见附件。"}'
每个 routine 有自己的 token,只能触发该 routine。token 生成时只显示一次,之后无法找回,要立刻存进密钥管理器。
2.3 GitHub webhook
挂到 Claude GitHub App 的 webhook 上,支持事件很广:pull request、push、issue、check run、workflow run、discussion、release、merge queue。每个事件起一个独立会话,不复用。
真正的威力在 PR 过滤器:可按作者、标题、正文、base 分支、head 分支、标签、draft 状态、merged 状态、是否来自 fork 来精细筛选。
⚠️ 常见踩坑:webhook 要送达,Claude GitHub App 必须装在该仓库上。CLI 里的
/web-setup只授予 clone 权限、不会装 App;触发器设置时会提示你显式安装。如果 routine 看起来配好了却从不触发,先查这个。
三、安全边界与限额(接入前必看)
分支安全:默认 Claude 只能 push 到 claude/ 前缀的分支。这是个合理的护栏——写得不好的 routine 不会动到 main。只在你有完善下游审查流程时才关闭它。
各计划日运行上限:
| 计划 | 每日运行数 |
|---|---|
| Pro | 5 |
| Max | 15 |
| Team / Enterprise | 25 |
Routines 与交互式会话共享同一份用量额度——自动化会和开发者的交互用量竞争配额,这点排期时要算进去。
其他注意:
- Webhook 在 research preview 期有 per-routine 和 per-account 的小时级上限,超出的事件会被丢弃。
/fire端点挂在experimental-cc-routine-2026-04-01beta header 下,请求/响应结构、限流、token 语义在预览期可能变。Anthropic 会保留最近两个带日期的 header 可用,给你迁移时间。- 不访问本地文件:Routines 跑在云上、只 clone 你配置的仓库。需要本地文件的任务用 Desktop scheduled tasks。
四、用 Claude API 把自动化接进自己的系统
Routines 的 API 触发本质是"外部系统发 HTTP POST"。如果你想在自动化里进一步调用 Claude 模型做处理(比如先让模型判断告警严重度、再决定是否触发 routine),可以用 Claude API 做这层编排。claudeapi.com 兼容 Anthropic SDK 格式,仅需替换 base_url:
from anthropic import Anthropic
client = Anthropic(
api_key="sk-...", # claudeapi.com 控制台获取
base_url="https://gw.claudeapi.com", # 平滑接入,仅替换 base_url
)
def should_fire_routine(alert_text: str) -> bool:
"""让模型判断告警是否需要触发自动修复 routine。"""
resp = client.messages.create(
model="claude-haiku-4-5-20251001", # 分类任务用 Haiku,快且省
max_tokens=10,
system="你是告警分诊器。只回答 YES(需立即自动处理)或 NO。",
messages=[{"role": "user", "content": alert_text}],
)
return resp.content[0].text.strip().upper().startswith("YES")
from anthropic import Anthropic
client = Anthropic(
api_key="sk-...", # claudeapi.com 控制台获取
base_url="https://gw.claudeapi.com", # 平滑接入,仅替换 base_url
)
def should_fire_routine(alert_text: str) -> bool:
"""让模型判断告警是否需要触发自动修复 routine。"""
resp = client.messages.create(
model="claude-haiku-4-5-20251001", # 分类任务用 Haiku,快且省
max_tokens=10,
system="你是告警分诊器。只回答 YES(需立即自动处理)或 NO。",
messages=[{"role": "user", "content": alert_text}],
)
return resp.content[0].text.strip().upper().startswith("YES")
把分诊和触发解耦后,"高危告警自动拉起修复 routine、低危只记录"这类流程就能跑起来——前置判断用便宜的 Haiku,真正的修复交给 Routines 在云端跑。
五、小结
- Routines = 保存好的 Claude Code 配置 + 三种触发器(定时/API/GitHub)+ 云端执行,把"自动化编码"从"自建 cron + 常开机器"里解放出来。
- 接入前盯三件事:分支安全默认只允许
claude/前缀、日运行限额与交互用量共享、webhook 要先装 GitHub App。 - 想在自动化链路里加一层模型判断,用 Claude API 做编排最省事——分类用 Haiku、复杂处理用 Sonnet/Opus。
需要把 Claude 能力接进你的自动化系统?claudeapi.com 兼容 Anthropic SDK,模型定价与接入文档见 claudeapi.com,控制台见 console.claudeapi.com。



