Files
memind/skills/scheduled-task-automation/SKILL.md
T
john 5de58af9ed fix(wechat): resolve scheduled task cancel via manage LLM instead of hard rules
Use a lightweight LLM over active task lists to pick taskId for cancel,
exclude page.generate from scheduled-task inbound, and remove single-task
auto-cancel so Cursor page generation stays isolated.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-29 13:45:28 +08:00

3.7 KiB
Raw Blame History

name, description
name description
scheduled-task-automation 处理定时自动任务(Scheduled Automation):澄清执行时间与任务内容,写入订阅;到点由系统自动执行并推送结果。不处理纯待办/提醒。

定时自动任务(Scheduled Task Automation

这个 skill 处理到点自动执行并交付结果的定时任务,与 schedule-assistant(待办/提醒)严格分离。

适用范围

  • 创建一次性或循环的定时自动任务(Scheduled Task / Recurring Automation
  • 查询、取消、更新执行说明(taskSpec 当前用户的定时任务
  • 澄清缺失的执行时间或任务内容

边界

  1. 处理纯提醒、待办记录、日程查询 —— 那些交给 schedule-assistant
  2. 在当前对话里立即执行长任务;本 skill 只负责写入/更新定时订阅
  3. 只能操作当前用户的数据;工具成功返回前,不能说「已经设置好了」。
  4. 信息不完整时先追问,禁止臆造时间或任务内容。
  5. 用户是在补充已有任务的长期规范/格式/参考页(如「以后新闻按 8/29 格式」)时,用 scheduled_task_update_spec不要去生成 HTML 页面。

可用工具

  • scheduled_task_create(创建,需用户确认卡片)
  • scheduled_task_list
  • scheduled_task_cancel
  • scheduled_task_update_spec(更新 taskSpec / 标题,直接写入)

必填信息(创建前必须齐全)

字段 说明
taskSpec 到时具体执行什么(给后续 Agent 的说明)
recurrence once 一次性 / daily 每天 / weekly 每周
执行时间 oncerunAtLocaldaily/weeklyhour+minuteweekly 还需 weekday

时间写入(必守)

  1. 禁止自行估算 Unix 毫秒时间戳。
  2. 一次性任务用 runAtLocalYYYY-MM-DD HH:mm,用户时区)。
  3. 循环任务用 hour0-23+ minute0-59);每周任务额外传 weekday0=周日 … 6=周六)。
  4. 写入后可用 scheduled_task_list 核对。

工作规则

  1. 先判断用户是要创建查询取消还是更新规范
  2. 缺时间或缺任务内容时,一次只追问最小必要信息。
  3. 取消 / 更新前必须先 scheduled_task_list,用返回的 taskId 操作;由你理解用户指哪一条,不要猜 titleMatch。
    • 微信 inbound:取消会先 listTasks,再用 manage LLM 从 active 列表里选 taskId 后调用 scheduled_task_cancel;只有 LLM 关闭或需完整编排时才进入 Goose。
    • 用户在要求 生成/修改 HTML 页面page.generate)时,不要走定时任务取消链路。
  4. 更新规范:用户补充格式标准、参考页面 URL、排版约束时,对目标任务调用 scheduled_task_update_specmergeTaskSpec: true 追加说明。
  5. 创建成功后,用用户能理解的话说明何时执行、执行什么、recurrence、推送通道。
  6. 若提示里给出了 sourceMessageId,调用 scheduled_task_create 时必须原样传入。

回复要求

  • 简短、直接
  • 成功时说明任务摘要、时间与 recurrence
  • 失败时明确没写入成功,并给出下一步

示例

用户:每天 6 点帮我做今日新闻页面

助手:(信息齐全后调用 scheduled_task_create) 已设置循环任务:每天 06:00(北京时间)自动搜索并生成「今日新闻页」,完成后推送链接。

用户:以后新闻早报都按 8 月 29 号那版格式执行

助手:(scheduled_task_list → 对 5:30 新闻任务 scheduled_task_update_spec + mergeTaskSpec) 已更新定时任务的执行说明,之后到点会按新格式生成。