WorkBuddy 自动化任务配置
概述
WorkBuddy 自动化允许用户创建定时或一次性任务,在指定时间自动执行。支持每日同步、每周复习、定时提醒、定期报告等场景,实现"设置一次,持续运行"的无人值守工作流。
核心概念
调度类型
| 类型 | 字段 | 说明 |
|---|---|---|
| 循环执行 | scheduleType: "recurring" + rrule |
按规则重复执行(每日、每周、每月等) |
| 一次性 | scheduleType: "once" + scheduledAt |
在指定时间执行一次 |
关键配置项
- name: 自动化名称(人类可读)
- prompt: 执行时运行的指令(描述任务本身,不含调度信息)
- rrule: RFC 5545 重复规则字符串(仅循环执行需要)
- scheduledAt: ISO 8601 日期时间(仅一次性执行需要)
- cwds: 工作目录列表(逗号分隔,决定自动化在哪些项目目录下运行)
- modelId: 使用的 AI 模型 ID
- expertId: 执行时激活的专家 ID
- status:
"ACTIVE"或"PAUSED" - validFrom / validUntil: 有效期范围(可选)
创建自动化流程
步骤 1:明确需求
确认以下信息:
1. 任务内容(做什么)
2. 执行频率(什么时候做)
3. 工作目录(在哪个项目下执行)
4. 是否需要特定模型或专家
步骤 2:生成 RRULE
根据频率生成对应的 RRULE 字符串。常见模式见 references/rrule-cheatsheet.md。
快速参考:
- 每天 22:30 → FREQ=DAILY;BYHOUR=22;BYMINUTE=30
- 每周一 9:00 → FREQ=WEEKLY;BYDAY=MO;BYHOUR=9;BYMINUTE=0
- 每月 1 号 10:00 → FREQ=MONTHLY;BYMONTHDAY=1;BYHOUR=10;BYMINUTE=0
- 每 2 小时 → FREQ=HOURLY;INTERVAL=2
步骤 3:创建自动化
使用 automation_update 工具(mode="create")创建。示例:
automation_update(
mode: "create",
name: "每日工作总结",
prompt: "整理今天在当前项目目录下的工作内容,生成简洁的工作总结,包括:完成了什么、遇到的问题、明天的计划。将总结保存到工作目录下的日志文件中。",
scheduleType: "recurring",
rrule: "FREQ=DAILY;BYHOUR=22;BYMINUTE=30",
cwds: "C:/Users/project-a,C:/Users/project-b",
status: "ACTIVE"
)
步骤 4:验证
创建后使用 automation_update(mode="list")确认自动化已创建并处于 ACTIVE 状态。
常用自动化模板
以下模板可直接复制使用,将 <占位符> 替换为实际值。详细说明见 references/automation-templates.md。
模板 1:每日工作总结
name: 每日工作总结
prompt: 整理今天的工作内容,生成包含"完成事项/遇到问题/明日计划"三部分的总结,保存到工作目录的 daily-log 目录下,文件名为当天日期。
scheduleType: recurring
rrule: FREQ=DAILY;BYHOUR=22;BYMINUTE=30
cwds: <项目目录路径>
模板 2:每周知识复习
name: 每周知识复习
prompt: 回顾本周的工作日志和学习笔记,提取关键知识点和经验教训,生成一份周报。检查是否有遗漏的任务或未解决的问题,提醒跟进。
scheduleType: recurring
rrule: FREQ=WEEKLY;BYDAY=MO;BYHOUR=9;BYMINUTE=0
cwds: <项目目录路径>
模板 3:定时提醒(一次性)
name: 开会提醒
prompt: 提醒用户:下午 3 点有一个项目评审会议,请准备好相关材料。
scheduleType: once
scheduledAt: 2026-08-01T14:50
模板 4:定期数据备份
name: 每周数据库备份
prompt: 执行数据库备份操作:1) 检查备份目录是否存在 2) 执行备份 3) 验证备份文件完整性 4) 清理超过 30 天的旧备份
scheduleType: recurring
rrule: FREQ=WEEKLY;BYDAY=SU;BYHOUR=2;BYMINUTE=0
cwds: <项目目录路径>
模板 5:每日简报
name: 每日简报
prompt: 生成今日简报:1) 今日待办事项概览 2) 昨天的工作进展 3) 重要提醒事项 4) 一句激励语。以简洁友好的语气呈现。
scheduleType: recurring
rrule: FREQ=DAILY;BYHOUR=8;BYMINUTE=30
cwds: <项目目录路径>
管理已有自动化
| 操作 | 工具调用 |
|---|---|
| 查看所有自动化 | automation_update(mode: "list") |
| 查看详情 | automation_update(mode: "view", id: "<自动化ID>") |
| 修改配置 | automation_update(mode: "update", id: "<自动化ID>", ...) |
| 暂停/恢复 | automation_update(mode: "update", id: "<自动化ID>", status: "PAUSED"/"ACTIVE") |
| 删除 | automation_update(mode: "delete", id: "<自动化ID>") |
重要:删除自动化必须使用 automation_update 工具,绝不能通过数据库操作或文件系统删除。
最佳实践
-
Prompt 要自包含:自动化执行时用户可能不在场,prompt 必须包含完成任务所需的全部信息。不要写"请查看之前的对话"之类的话。
-
多项目目录:使用
cwds指定多个工作目录(逗号分隔),自动化会在所有指定目录下运行。 -
时区注意:RRULE 中的时间使用服务器时区(默认 GMT+8)。
BYHOUR=22表示北京时间 22 点。 -
合理设置超时:复杂任务可能需要较长时间,确保模型选择和 prompt 复杂度匹配。
-
先测试再上线:创建自动化后,可以先手动执行一次 prompt 确认效果,再启用定时。
-
定期检查:使用
automation_update(mode: "list")定期检查自动化状态,确保没有异常暂停。 -
有效期控制:临时活动可用
validFrom和validUntil控制生效范围,避免遗忘的自动化长期运行。
故障排查
自动化未触发、时间不对、cwds 不生效等常见问题,见 references/troubleshooting.md。
参考资源
references/rrule-cheatsheet.md— RRULE 语法完整速查表(每日/每周/每月/每年/高级模式)references/automation-templates.md— 12 个完整自动化模板(含 prompt 全文)references/troubleshooting.md— 常见问题排查指南