自动化
自动化按时间发送任务提示,适合定期项目检查、摘要或一次性跟进。Automation 插件必须启用,Wuu 也必须在未休眠的机器上运行;这不是云端托管调度器。
- 打开自动化并选择工作区。这会选择任务所在的工作区,不会切换当前对话。
- 选择新建自动化,填写名称和清晰的任务内容。
- 在运行于中选择每次新建会话,或选择已有会话。
- 设置每天、工作日、每周或自定义时间;只运行一次时打开仅执行一次。更多设置包含时区和独立运行。
- 选择创建。之后的编辑需要点击保存修改。
提示中除了目标,也应写明限制:
汇总这个项目主分支自昨天以来的变更。如果能取得检查结果,指出失败项。不要修改文件,也不要发布任何内容。选择执行位置
Section titled “选择执行位置”新会话任务每次创建一个可见会话,各次运行可以重叠。开启独立运行后,会基于工作区当前 HEAD 创建单独的 Git worktree,不复制尚未提交的改动。
已有会话任务继续使用该会话的上下文和工作区。如果会话正忙,消息会排在当前工作之后。这种模式不能创建新的 worktree。agent 的 cron 工具把两种模式称为 new_thread 和 thread_heartbeat。
时间与错过的触发
Section titled “时间与错过的触发”自定义时间使用五字段 cron 表达式。0 9 * * 1-5 表示所选时区工作日的 09:00。时区采用 Asia/Shanghai 等 IANA 名称,桌面最初选择系统时区。
星期字段接受 0–7:0 和 7 都表示周日,1–6 表示周一到周六。列表和范围先按原始数值选取步长,再解释周日别名:6,7 和 6-7 都选中周末,5-7/2 选中周五和周日,而 6-7/2 只选中周六。同时包含 0 和 7 不会额外触发一次周日任务。
旧版本可能保存了跳过已选周日的下次运行时间,重启 Wuu 会保留这个时间。升级后,打开受影响的任务,修改名称等字段,再点击保存修改即可立即重算。cron 表达式可以保持不变;未编辑任务时,保存修改按钮不可用。
如果没有这样更新,未暂停的重复任务会在原定时间派发后重算;一次性任务仍保留旧的到期时间。暂停任务在升级或保存后仍保持暂停,需要运行时请显式继续。错过的周日不会逐次补跑。
插件约每 15 秒检查一次到期任务,因此不能保证精确到秒启动。停机后恢复时,过期的一次性任务会派发一次;过期的重复任务也只派发一次,再从当前时间计算下一次,而不是逐次补跑所有错过的时间。
一次性任务在派发时就会离开计划,即使后续执行失败也一样。应查看运行记录确认结果;它不会自动作为新的单次任务重试。
管理与查看结果
Section titled “管理与查看结果”侧栏跟随页面中选择的工作区。「正在运行」列出正在启动、运行和排队的执行;「接下来」按触发时间排列已启用的计划,并显示各任务的时区。点击任务可打开详情,已经离开调度表的一次性任务也能从运行列表打开。窗口可见时,列表约每 15 秒刷新一次,回到窗口或编辑后也会刷新。刷新失败时会提示,并保留上次获取的数据。
计划中的任务按下次运行时间排列。任务行上的开关或编辑器中的启用用于暂停和继续未来触发;暂停后任务仍在原位。删除只移除计划,不删除已经创建的会话,也不会停止正在运行的工作;需要到对应会话中停止。关闭编辑器或选择其他任务会丢弃未保存的修改。
详情面板显示最近运行和错误,最近一次运行失败的任务会在列表中标出。单次任务离开计划后仍保留在目录中:「最近运行」列出仍在启动、排队、运行、失败、中断或待确认的保留快照,「已完成」只列出成功完成的运行。重复任务成功运行一次,不代表计划结束。每个工作区最多保留 100 个任务和 500 条运行记录。
没有看到运行时,先确认 Wuu 当时未休眠且正在运行、插件已启用、任务未暂停,以及工作区和目标会话仍存在,再检查时区、下次运行时间和错误。模型访问权限、额度、网络和执行权限都可能导致失败。
CI 或 Wuu 之外的调度器可以使用 wuu exec。