在任何 LUI/Claw 自然语言定时任务写入、更新或确认前使用本 Skill。目标是避免用户创建重复任务、高风险重复写任务、不支持的平台/店铺任务,以及明显会排队或失败的高频任务。
本 Skill 只做创建前预检,不负责真正创建任务。输出结果必须归入以下决策之一:proceed、reuse_or_update、silent_merge、ask_confirmation、block、partial_create、warn_then_proceed。
检测前收集或推断以下字段:
lui 或 claw)、用户原始表达、解析后的任务名称/内容、任务类型、执行时间、执行频次、店铺范围、平台范围、策略参数、通知设置。必须先把本次 LUI 任务标准化,再做比较。不要只比较用户原始话术。
scripts/check_scheduled_task_conflicts.py 标准化任务类型、店铺、平台、频次、时间和策略。ask_confirmation、block、partial_create、warn_then_proceed 需要给用户提示。auto_listing。partial_create。references/permission-sql.md 的 SQL 模板执行:绑定/授权来自 1688-shopkeeper 的店铺查询结果,ISV 权限来自 /DistributeApiNew/checkShopPaidStatus 的 result.isPaid。block,明确说明不能创建的原因和下一步可选动作。ask_confirmation,给出编号选项,在用户选择前不要创建任务。partial_create,列出支持和不支持的店铺/平台范围,并询问是否继续。reuse_or_update 或 silent_merge,默认不打扰用户,除非调用方需要内部审计说明。warn_then_proceed,说明风险、推荐调整方案,并允许用户继续。当已经有结构化任务数据时,使用内置检测脚本:
python3 scripts/check_scheduled_task_conflicts.py input.json --format markdown
python3 scripts/check_scheduled_task_conflicts.py input.json --json
输入 JSON 结构:
{
"proposed_task": {},
"existing_tasks": [],
"user_context": {}
}
调用方需要机器可读结果时使用 --format json。输入路径传 - 时从标准输入读取 JSON。
JSON 输出固定包含以下字段:
{
"decision": "proceed|reuse_or_update|silent_merge|ask_confirmation|block|partial_create|warn_then_proceed",
"prompt_required": true,
"normalized_proposed_task": {},
"findings": [],
"user_prompt": ""
}
退出码约定:0 表示检测成功并已输出决策;2 表示输入 JSON、文件读取或字段结构错误;其它非 0 表示脚本异常。block 和 ask_confirmation 是业务决策,不是脚本失败。
脚本会调用 scripts/_tracker.py 记录本地运行事件。打点只包含决策、是否需要提示和 finding 数量,不得记录用户原始话术、店铺名称、店铺 ID、商品、订单或任何授权凭证。
可选环境变量:SCHEDULED_TASK_CONFLICT_CHECKER_TRACKING=0 可关闭本地打点;SCHEDULED_TASK_CONFLICT_CHECKER_TRACK_PATH=/path/to/file.jsonl 可指定打点文件位置。
block 或 partial_create。需要精确查看任务类型映射、重复/冲突优先级、LUI/Claw 提示模板时,读取 references/rule-matrix.md。
需要生成或核对绑定店铺、店铺授权、ISV 高级版权限的 SQL 判断时,读取 references/permission-sql.md。
共 1 个版本