创建定时任务
本指南介绍如何创建定时任务,让一个 Workflow 按 Cron 计划在指定设备上自动执行。比如每天早上 8 点自动签到、每小时巡检一次某个 App。
前提:先有一个 Workflow
定时任务执行的是 Workflow,而不是临时输入的指令。所以在创建定时任务之前,你必须先准备好要跑的 Workflow。如果还没有,请先去 Workflow 页面创建一个,参见使用 Workflow。
如果没有任何可用 Workflow,新建定时任务的对话框里选择 Workflow 时会提示「没有可用的工作流,请先创建工作流」。
新建定时任务
打开左侧导航的「定时任务」页面。这里列出了已有的所有定时任务,每个任务是一张卡片,显示它绑定的 Workflow、设备、执行模式、Cron 表达式、上次执行结果和下次执行时间。

点击右上角的「新建任务」,弹出创建对话框,依次填写下面几项。

任务名称
给任务起一个一眼能认出来的名字,比如「每日签到」。这个名字只用于在列表里区分任务,不影响执行。
选择 Workflow
从下拉框里选一个已有的 Workflow,这是任务到点后实际要执行的内容。
执行模式
选择用哪种方式执行这个 Workflow:
- 经典执行(classic):默认模式,逐步执行。
- 分层代理(layered):由规划层拆解步骤后执行,适合更复杂的任务。
两种模式的区别详见模式说明。如果不确定,先用经典执行。
选择设备或分组
对话框里有「选择设备」和「选择分组」两个切换按钮,二选一:
- 选择设备:勾选一台或多台具体设备,任务会在这些设备上分别执行。设备右侧的绿点表示当前在线。
- 选择分组:选一个设备分组,任务会在该分组下的所有设备上执行。分组适合设备会增减的场景,新加入分组的设备会自动纳入这个定时任务,不用再回来改配置。设备分组的管理参见多设备管理。
两种方式必须至少指定一项,否则无法保存。
Cron 表达式
填入一个 Cron 表达式来描述执行计划。格式见下一节。你也可以直接用快捷预设填充:
- 每小时:
0 * * * * - 每天 8:00:
0 8 * * * - 每天 12:00:
0 12 * * * - 每天 18:00:
0 18 * * * - 每周一 9:00:
0 9 * * 1
点击任一预设按钮会把对应表达式自动填进输入框,你也可以在此基础上手动改。
填完后点「保存」即可。新任务默认是启用状态,到点就会自动执行。
Cron 表达式格式
Cron 表达式由 5 个字段组成,用空格分隔,依次是:
分 时 日 月 周
各字段的取值范围:分(0-59)、时(0-23)、日(1-31)、月(1-12)、周(0-6,0 表示周日)。* 表示「每一个」。
几个例子:
0 8 * * *:每天 8 点 0 分执行(分=0,时=8,日/月/周都不限)。30 9 * * 1:每周一 9 点 30 分执行。0 */2 * * *:每隔 2 小时执行一次。0 0 1 * *:每月 1 号 0 点执行。
注意必须是 5 个字段,多了或少了都会保存失败。
启用、查看与管理
回到定时任务列表,每张卡片上都能完成日常管理。
启用 / 禁用:卡片右上角的开关控制任务是否生效。关掉开关任务就暂停,不会再触发;重新打开即恢复,不用删了重建。
下次执行时间:卡片上的「下次执行」显示按当前 Cron 计算出的下一次触发时间,可以用它来核对自己的表达式写对了没有。「上次执行」则显示最近一次的执行时间和结果(成功 / 部分成功 / 失败),多设备任务还会显示成功数 / 总数。
编辑:点卡片上的「编辑」可以修改任务的任意字段,保存后下次执行按新配置生效。
删除:点「删除」并确认后任务会被移除,此操作不可恢复。
配合 Docker 服务器 7x24 运行
定时任务只有在 AutoGLM-GUI 服务进程运行时才会触发。如果你用桌面版或本地命令行启动,关掉程序后定时任务就不再执行了。
要让定时任务真正做到无人值守、长期稳定地按计划跑,建议把后端部署在一台常开的服务器上,用 Docker 以守护方式运行,并把目标设备通过无线方式连上去。部署方式参见用 Docker 部署。这样即使你关掉自己的电脑,服务器上的定时任务也会照常执行。