定时工作流,准点运行。
Actions 繁忙时,GitHub 的 schedule 触发可能延迟,甚至漏掉一次运行。cron.surf 将按你的时区在准确的那一分钟启动工作流,运行失败或根本没启动时发邮件提醒你。
上线时邮件通知你
on:- schedule:- - cron: "0 17 * * *" # 9am PST, 10am PDT+ workflow_dispatch:+ # cron.surf: 0 9 * * * America/Los_Angeles jobs: # unchanged
定时运行为什么会晚
负载高时会延迟
“The schedule event can be delayed during periods of high loads of GitHub Actions workflow runs.” 每个整点最拥挤。
GitHub 文档有时直接丢掉
“If the load is sufficiently high enough, some queued jobs may be dropped.” 漏跑了也不会有任何提示。
GitHub 文档workflow_dispatch 调用会立刻启动一次运行。cron.surf 会在你写的那一分钟替你发出调用,再一直跟到运行结束。
上线后怎么用
安装 App
选择账号和要覆盖的仓库,一个仓库也行。之后随时可以在 GitHub 设置里改。
改一行,推送
把 schedule 换成一行 # cron.surf: 注释,再加上 workflow_dispatch:。提交上会出现一个检查,显示下次运行时间。
第 2 步也可以交给你的 agent
上线后,把这句话贴给 Claude Code、Codex 或 Cursor。它会找出所有定时工作流,把时间换算成你的时区,然后开一个 PR。
Read https://cron.surf/github/agent.md and move this repo's scheduled workflows to cron.surf.你会得到什么
准点到分钟
按你写的时间启动,支持任意 IANA 时区,夏令时自动处理。
每次运行都有人盯
每次运行都跟到出结果。运行失败或没启动,都会发邮件给你。
每次推送都检查
改动工作流的提交会收到一个检查:显示下次运行时间,或者指出那一行具体错在哪。
README 徽章
显示工作流的准点率,每次运行后更新。
计划定价
常见问题
什么时候上线?
正在开发。在上面留下邮箱,上线当天会收到一封邮件。
App 会访问什么?
读取工作流文件(Contents: read),启动工作流(Actions: write),发布检查(Checks: write)。它只启动带有 # cron.surf: 注释的工作流,从不改你的代码。
会多花 Actions 分钟数吗?
不会比以前多。每次运行还是原来那个工作流,只是换了触发方式。
怎么改回去?
把 schedule 块加回去、删掉注释,或者直接卸载 App。
能用哪种 cron 语法?
标准五段 cron,和 GitHub 一样,可以另加时区。现在就可以用 cron.surf 工具检查任意表达式。