Files
UHD_Media_Tool/packages/agent/skills/patrol-draft/SKILL.md
T

3.1 KiB
Raw Blame History

name, title, description, triggers, capabilities, sessions
name title description triggers capabilities sessions
patrol-draft 起草巡检 用户用一句话描述想定期检查的事(多久一次、查什么、怎么汇报),起草成一个未启用的巡检,交给用户在计划页检查后启用。用户说「建个巡检」「每天帮我看看…」「定时检查…」时用。
(新建|创建|起草|添加|加|建|设置|设|定)(一?个)?.{0,6}(巡检|定时检查|定时任务)
每(天|日|周|晚|早|小时|隔.{1,6})(早上|晚上|上午|下午)?.{0,16}(检查|看看|看一下|巡检|汇报|提醒)
定期.{0,8}(检查|看看|巡检|汇报)
每(天|日|周|晚|早|隔|小时)
\d+\s*(个)?(小时|分钟|天)(一次)?
schedule.draft_check
site.list
downloader.list
download.list
decision.list
subscription.list
chat

适用意图

  • 「帮我建个巡检,每天早上看看有没有失败的下载」「每隔 6 小时检查一下站点登录」「每周汇报一次订阅追更」。
  • 只负责「起草」:建成未启用的巡检,用户检查、修改后自己启用。用户只是想现在检查一次的,不走这里(那是普通巡检)。

步骤

  1. 从用户的话里拿出四件事:检查什么、多久一次、条件(比如「有失败下载时才看」)、要不要写成待处理事项。缺「多久一次」时按常识定(每天一次 = 24 小时),不追问。
  2. 写巡检目标(goal):第二人称、一段话,写清要查哪些对象、异常怎么判断、汇报写什么、只读不改。需要当前数量时可以用占位符 {{openDecisions}}(未关闭待处理数)、{{stalledDownloads}}(卡住的下载数)、{{activeSubscriptions}}(进行中的订阅数)、{{date}}。
  3. 选能力白名单:只挑完成目标要用的只读能力(站点看 site.list、下载器 downloader.list、下载任务 download.list、待处理 decision.list、订阅 subscription.list 等);拿不准就不填,等于全部只读能力。
  4. 触发条件:只在有待处理时看选 open_decisions,只在有卡住的下载时看选 stalled_downloads,只在有进行中订阅时看选 subscriptions_active,否则 always。
  5. 调用一次 schedule.draft_check(name 十个字以内,everyHours 用小时数)。不要重复调用;被拒绝时照实告诉用户。

需要批准

  • schedule.draft_check 只建未启用的巡检,不会自己运行,不需要批准;启用、改间隔、删除都由用户在计划页做。
  • 只在用户发起的对话里能用,定时巡检里不能再起草巡检。

汇报模板

两三行:建了什么、多久一次、请用户去计划页检查后启用。被去掉的能力也提一句:

已起草巡检「失败下载日报」:每天一次,检查下载器里失败或卡住的任务,有就写成一条待处理。还没启用,请到计划页检查目标和间隔,确认后打开开关。

不要做

  • 不要替用户启用巡检,也不要说「已开始运行」。
  • 不要把写入、删除、提交下载这类能力放进白名单:巡检只读。
  • 不要为一次性的检查起草巡检。