无需 Codex 的 Codex Automations:用 Claude Code 和 systemd 打造夜班代理

两周前,OpenAI 推出了 Codex Automations。简单来说:你定义一个触发器(如 cron、代码 push 或新 issue),写下自然语言指令,一个代理在独立的 worktree 中自动执行这一切。整个过程无需人类介入。在你睡觉时,代理自动整理 issues、总结 CI 错误、生成发布文档,甚至优化自身的指令。 听上去像魔法?确实有几分神奇。但他们在 keynote 里没怎么提到的一个细节是:你必须在桌面上运行 Codex App。支持 macOS 和 Windows。没有无头服务器的选项。安装在一个迷你 PC 上并丢一边任其运行?没门。 这时我想:“等等,我已经有这个了。” 你已经拥有的组件 如果你在使用 Claude Code,那么你已经拥有 90% 的基础设施。用命令 claude --print 就能在非交互式会话中执行提示(prompt)。传递指令,获取结果,关闭,不需要图形界面或者打开的终端窗口。这对于一个 cron 工作来说简直完美。 如果你已有一台永远开机的服务器(比如迷你 PC、树莓派,或者每月 5 欧元的 VPS),那么你已经有了调度程序。systemd 或 cron,任选一个,它们都已运行了多年,已经非常稳定。 如果你在用 Gitea、GitHub 或任何支持 API 的代码托管平台,意味着你已经有了存放结果的位置:PR 评论、新建 Issue 或直接提交文件。 用简单点的话说:Codex Automations 是一种范式,而不是一个产品。而且这种范式已经存在很多年了。 ┌─────────────────────────────────────────────┐ │ systemd timer (每隔 N 小时运行) │ │ │ │ │ ▼ │ │ bash/fish 脚本 │ │ │ │ │ ├── git pull --ff-only │ │ ├── claude --print "prompt" │ │ ├── 解析结果 │ │ ├── 通知 (Telegram/email) │ │ └── git push (如果有变更) │ └─────────────────────────────────────────────┘ 自动化的构成 所有的自动化都遵循同样的结构。一个脚本会经过以下步骤: ...

2026年3月11日 · Fernando

/loop 在 Claude Code 中:一个与终端共存的 cron

几个月来,我一直用自制的 cron 来执行 Claude Code 的任务。一个 Bash 脚本启动一个 headless 会话,给它一个 prompt,等待任务完成后关闭。它能运作,虽然运作得勉强,但能用。如果有需要,我把代码放在 GitHub 供大家参考。 而上周五,Anthropic 发布了 2.1.71 版本,引入了 /loop。一个原生的调度器,就直接内置在 Claude Code 会话中。 我的第一反应是:“我的项目凉了。” 试用之后的第二反应是:“嗯…还没死,但离死不远了。” /loop 的功能 语法相当简洁: /loop 5m check the deploy status 这个命令告诉 Claude Code:“每 5 分钟,执行这个 prompt 一次。” 不需要退出会话,也不需要 cron,也不用脚本。Claude 来解析时间间隔,安排任务,并在会话仍然开启且处于 *空闲* 状态时执行它。 你可以串联多个斜杠命令: /loop 20m /review-pr 1234 /loop 1h make test 2>&1 | tail -5 每个 loop 都有一个“安全网”:三天后它会自动到期。如果你曾经留下一个忘记关闭的 cron,你大概能理解这种设计有多贴心。 ## 我会如何使用它 试用一天后,我已经发现了三个明确的用途: **1. 在开发过程中监控测试。** 现在我正在 Tokamak 上实现一个重要功能(比如冷启动的五个优化阶段)。与其每次修改一点代码就运行 `make test`,不如直接这样做: /loop 10m make test 2>&1 | grep -E “passed|failed” ...

2026年3月9日 · Fernando