SuperAPI AI 工具集

loop

办公与效率

查看项目

更新于 10-17 23:56

技能介绍

用途

Loop 是一个用来设置周期性监控任务的技能。当用户输入“/loop <interval> <prompt>”时,它会把用户描述的监控需求安排成定时任务,并按用户选择的方式发送通知,适合需要定期检查状态、周期性执行命令并保存结果的场景。

主要能力

  • 解析间隔参数:支持分钟、小时、天三种粒度,并转换为对应的 cron 表达式。
    • Nm(N ≤ 59)→ */N * * * *
    • Nh(N ≤ 23)→ 0 */N * * *
    • Nd → 0 0 */N * *
  • 对于不能整除的间隔,将其调整为最接近的整齐值,并告知用户。
  • 在创建任务前,先澄清三项信息:监控什么(解析 prompt)、如何执行(使用哪个 x-cmd 模块或命令)、结果存放在哪里。
  • 通知方式在创建前询问:内存(默认,保存结果供后续查看)、邮箱(有新结果时通知),或用户指定的其他方式。
  • 通过 x cron add 创建 cron 任务,任务名带时间戳,例如 loop-$(date +%Y%m%d%H%M%S)。
  • 创建后立即执行一次命令,不等待首次定时触发。
  • 完成后向用户报告任务名与 cron 表达式、可读的执行频率、监控目标和结果存储位置。
  • 取消任务使用 x cron rm <name>。

使用方式

触发格式:

/loop <interval> <prompt>

创建任务的核心命令形如:

x cron add \
    --name "loop-$(date +%Y%m%d%H%M%S)" \
    --desc "<description>" \
    "<cron-expression>" \
    "<full-command>"

取消任务:

x cron rm <name>

适用场景

需要按固定间隔重复检查某项状态、周期性执行某条 x-cmd 命令、并在产生新结果时收到通知的监控类场景。

限制与约束

  • 创建前必须询问结果存储方式。
  • 创建后必须立即执行一次。
  • 对于不规整的间隔需要取整,并向用户说明。
  • 间隔的粒度仅涵盖分钟、小时、天,且分钟数不超过 59、小时数不超过 23。
  • 具体可用的 x-cmd 模块、通知渠道的配置方式,资料中暂未提供。