让 prompt 自己上班Orca automations 按计划从 CLI 跑 prompt——周期性的 triage、review、维护任务不用你手动开工作树。本课目标是:创建一个 disabled 的自动化、检查它、再启用并手动触发一次。
安全起步:先 --disabled
调 prompt 与目标时先禁用状态创建,避免误触发:
orca automations create \
--name "Weekday triage" \
--trigger weekdays \
--time 09:00 \
--prompt "Triage new issues and summarize blockers" \
--provider codex \
--repo my-repo \
--disabled \
--json
--trigger 支持预设:hourly / daily / weekdays / weekly,也接受 cron 表达式或 RRULE 字符串;用 --timezone <tz> 指定 IANA 时区而非运行时默认。
跑在哪里
| 参数 | 行为 |
|---|---|
--repo <selector> |
每次 run 在仓库里创建或选择工作 |
--workspace <selector> |
在既有 Orca 工作树内运行(如 active) |
| 都不传 | 从当前 shell 目录解析所在工作树 |
orca automations create --name "Nightly status" --trigger "0 18 * * 1-5" \
--prompt "Summarize today's changes" --provider claude --workspace active --disabled
门控与会话复用
- --precheck:每次 run 前跑一条廉价 shell 探测;非零退出会跳过本次并记录 skipped run:
orca automations create --name "PR review" --trigger hourly \
--precheck "gh pr list --json number -q '.[0].number'" \
--prompt "Review requested PRs" --provider codex --repo my-repo --disabled --json
- --reuse-session:针对既有工作树的自动化,后续 run 复用上一次的自动化终端而不是每次空白启动:
orca automations create --name "Inbox digest" --trigger hourly \
--prompt "Summarize unread mail" --provider codex --workspace active \
--reuse-session --disabled
用 orca automations edit <id> --fresh-session --json 切回每次新终端。
管理与维护
orca automations list --json
orca automations show <automationId> --json
orca automations edit <automationId> --enabled --json
- 桌面端自动化列表可搜索:name / project / prompt 文本
- SSH 主机上的外部自动化在主机断连时仍可管理(含删除)——不需要活跃 SSH 会话就能移除计划
- 项目级目标:
--project <id>+--host <id>或--project-host-setup <id>精确定位
落地练习:完整生命周期
- 创建一个 disabled 的每日自动化(triage prompt + precheck)
automations list/show检查配置正确automations edit <id> --enabled启用- 手动触发或等下一个窗口,确认 run 落地(含 skipped run 记录)
- 跑完改回
--disabled或删除,清理干净
怎么判断做对了?——你能说出 --disabled、--precheck、--reuse-session 三个参数各自防什么坑,并完成一次创建→启用→触发的闭环。
卡住了怎么办? 没按计划跑:检查时区(--timezone)与 precheck 是否非零退出;误触发风险大就先保持 disabled 调好再启用。
小结
- 创建先 --disabled,trigger 支持预设 / cron / RRULE
- --repo / --workspace 决定 run 落在哪;都不传解析当前目录
- --precheck 非零退出跳过并记录 skipped run
- --reuse-session 复用自动化终端;可切回 --fresh-session
- 管理:list / show / edit --enabled;SSH 断连也能管理
下一节,Computer Use 与 Worktree Checkpoints。