去年,Anthropic 的文档工程师 Sarah 遇到了一个没法靠加班解决的问题:Claude Code 团队的 PR 合并量比年初增加了 200%,但维护文档的人只有她一个。每次有代码改动,她都要手动比对源码和文档有没有偏差,再开 PR,写说明。工作量和 PR 量等比增长,没有出口。
这个困境促成了 Routines 功能。在 Anthropic 举办的 Code with Claude 活动上,应用 AI 团队的 Maya 做了一场演示,讲了她们是怎么用这个功能处理 Sarah 的问题的。
原视频:Build a proactive agent workflow with Claude Code
现在的 Proactive Agent 有什么问题
把 Claude Code 挂在 cron 上跑,听起来很顺,真正做过的人知道有三块烦:
在哪跑。你不想让 agent session 跑在自己的笔记本上,关机了就停,断网了就挂,持久化和认证都要自己搭。最终花了大量时间在基础设施上,而不是那段关键的 prompt 上。
什么时候触发。定时任务、事件驱动、手动触发,每种都需要额外设施。
怎么知道 agent 在做什么。Headless session 跑起来就是黑盒,无法实时查看进度,没法纠偏,跑崩了也不知道。
Routines 想解决这三个问题。
Routines 是什么
一句话:在 Anthropic 基础设施上运行的 Claude Code session,你只需要定义 prompt、接哪些 repo、用什么工具、什么时候触发。
创建方式很简单。在 Claude Code 终端里输入 /schedule,按提示回答几个问题,routine 就建好了。Anthropic 接管 hosting、session state 和 connector 鉴权,电脑关着也在跑,跑完了在 claude.ai 上可以查看历史。
每个 routine 底层就是一个 Claude Code session,可以随时打开,实时看进度,发消息调整方向,也可以恢复一个已跑完的 session 继续对话。
做任何 Routine 前要想清楚三件事
Maya 给了一个框架,我觉得比很多教程讲的更清楚。
第一件是触发方式。两种基本形式:时间触发(每天、每周、自定义 cron)和事件触发(GitHub PR 创建、issue 打开、label 变更,或者从自己代码里 POST 到 webhook,把事件 payload 作为上下文传进去)。
第二件是给 Claude 什么上下文。这里有一句话值得记住:whatever context Claude has, that’s the ceiling of how successful Claude will be。你给 Claude 接的 repo、文件、工具,直接决定了它能做到什么。文档自动化案例里,必须同时接源码 repo 和文档 repo,它才有能力找差异和开 PR。需要通知你,就给 Slack connector。想让它参考历史营销素材,就接 Google Drive。Context 不够,prompt 再好也到头。
第三件是可操控性。Maya 提了一个有意思的模式,叫 Agent-on-Agent Review:借用 ML 里的 generator-critique 思路,一个 Routine 生成文档 PR,另一个 Routine 监听 PR 创建事件,触发后自动 review 并留 inline comment,在人进来之前完成一轮机器审查。
另一种方式是随时进到 session 里手动 steer。Maya 现场展示了这个:她开了一个 GitHub issue,Routine 自动触发并开始跑,几秒后她发现问题已经被另一个 PR 覆盖,直接在 session 里发消息让它停。
两个真实用例
Docs Drift Checker(时间触发)
每周一自动检查合并进 main 的新 PR,比对文档 repo,发现差异就开更新 PR,同时发 Slack 通知。Sarah 不需要手动盯,PR 数量增长对她来说不再是线性的工作量增长。
Issue-Triggered Docs Agent(事件触发)
每次有人在文档 repo 开 issue,触发一个 session 去判断:这是不是文档空白?是的话开 PR 补,同时发 Slack。把”有人发现问题 → 人工排查 → 修复”这条链路的中间两步自动化掉。
其他可以套进去的场景
Maya 在演讲里列了几个方向,值得参考。
部署验证:CD pipeline 部署完成后 POST 到 webhook,触发 session 拉 Datadog/Grafana 数据、扫日志,给出 go/no-go 判断,异常时通知 on-call。随着对 Claude 决策的信任积累,可以逐步让它自己做回滚决定。
告警分析:监控触发 session,自动关联相关代码,分析根因,draft PR,通知工程师。
Issue 分拣:每周扫 GitHub Issues 或 Slack 频道,按优先级排序,对重要问题开 PRs。适合 PM 或小团队把低优先级 backlog 处理自动化。
判断一个任务适不适合做成 routine,可以问三个问题:触发源是不是清晰的?上下文是不是有边界的?输出是不是可以被验证的?不满足的,先别急着做成 routine,该先搞清楚任务本身。
我感兴趣的是这个思路往工程场景之外走的可能性。很多团队流程的本质是”有新信息出现,就要去更新某些地方”——文档、报告、审查,信息源和输出格式不同,但结构上和文档自动化案例没什么本质区别。
开始很简单:Claude Code 终端里,/schedule,往下答几个问题。

IT资源栈
评论前必须登录!
立即登录 注册