Skywork定时任务配置指南:触发条件与自动执行详解
Skywork 桌面版定时任务完全采用本地化调度架构,不依赖云端排队或统一分发。所有任务调度、时间触发与条件校验均在客户端本地执行——这意味着更低的响应延迟与更高的数据私密性,同时要求用户自行确保设备在线且运行环境稳定。
简单来说,定时任务就是“到达预定时间后自动新建一个对话,并按照预设的 Prompt 执行一遍”。整个过程与手动触发无异:可调用 MCP 工具、启用浏览器自动化、读写文件、执行 Skills 等。每次触发均生成独立对话,并单独扣除 Credits。配置前需明确几个要点:
- 执行时间基于本机系统时区,不会自动校准网络时间
- 电脑进入睡眠、休眠或关机状态时,任务直接跳过,不会后续补跑
- 关键任务建议开启“保持系统唤醒”开关(位于定时任务页面右上角)
- 首次配置前,先用同样的 Prompt 手动执行一遍,确认流程稳定且 Credits 消耗在预期范围内
定时任务的核心触发逻辑
触发动作前可嵌入条件判断,避免无效空转。仅当校验通过时才正式启动新对话。目前支持三种配置方式:
- 始终执行:默认行为,不做条件验证,到点即触发
- 公式判断:使用轻量级表达式,例如
file_exists("C:/data/weekly_report.xlsx") && get_row_count("C:/data/weekly_report.xlsx") > 10,结果为真则执行,否则跳过或按自定义重试策略处理 - 自定义类判断:需编写 C# 类实现
IScheduleCondition接口并返回布尔值。适用于对接内部 API、查询数据库状态、读取注册表等复杂场景
状态监控与人工介入方式
任务运行中或暂停时,可通过以下途径实时掌握进度并干预:
- 在命令面板输入
status [task_id],查看当前阶段、进度、内存占用及最近日志 - 运行期间按
Ctrl+Shift+S呼出悬浮控制栏,点击“详情”获取实时快照 - 打开
%LOCALAPPDATA%\Skywork\Desktop\states目录,用记事本查看[task_id].json(仅只读,切勿编辑) - 若异常中断,调用
resume_task(task_id)可从上一个持久化节点继续执行,无需从头重启
常见问题排查指引
定时任务配置后未按时执行?按以下顺序逐一排查:
- 系统托盘内 Skywork 客户端主进程是否仍在运行?确认不是仅存图标残留
- Windows 电源计划是否启用了“硬盘关闭”或“USB 选择性暂停”?这两项常会意外终止后台任务
- 查看任务日志中是否出现
"condition evaluated false"或"skipped due to system sleep"等标记 - 公式判断失败时,在命令面板临时执行
eval "your_formula_here"验证语法与上下文变量是否正常
