mcpField
N
notify-templates

notify-templates

github.com/anthropics生产力2.2k57 次安装2 周前更新
代码仓库

关于 notify-templates

notify-templates 是一项技能,用现有库存和采购数据填充固定通知模板。它规定了告警路由、批量处理及写入 outbox 的方式,避免逐项重复发送通知。

主要功能

  1. 01生成低库存 Slack 告警
  2. 02撰写供应商采购订单邮件
  3. 03整理供人工审核的通知
  4. 04按对象和阈值路由通知
  5. 05批量写入通知 outbox

适用场景

  1. 01在库存检查中报告低库存
  2. 02请求供应商确认采购订单
  3. 03升级高金额或异常采购事项
  4. 04库存巡查后发送单条汇总

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/anthropics/cwc-workshops --skill notify-templates

安装后在 Claude Code 中输入/notify-templates确认已加载。

详细介绍

通知模板

通知是填充模板,不是创意写作。不要为此启动子 Agent。 使用已有数据填写占位内容,然后将结果追加到发件箱。

低库存 Slack 警报

:warning: *Low stock* — {{sku}} ({{product_name}})
On hand: {{on_hand}} · Reorder point: {{reorder_point}} · Days of cover: {{days_cover}}
{{action_line}}

action_line 可以是 PO {{po_id}} placed for {{qty}} units (ETA {{eta}}) 或 Awaiting review — {{reason}}。

供应商邮件

Subject: PO {{po_id}} — {{qty}} × {{sku}}

Hi {{supplier_name}},

Please confirm PO {{po_id}} for {{qty}} units of {{sku}} ({{product_name}}) at ${{unit_price}}/unit.
Requested delivery: {{requested_date}}. {{expedite_note}}

Thanks,
StockPilot

升级处理(需要人工审核)

:octagonal_sign: *Review needed* — {{sku}}
Recommended qty: {{qty}} (confidence {{confidence}})
Flags: {{flags_csv}}
Reason: {{reason}}

路由(谁接收什么)

对象何时发送示例
ops 频道(默认)低库存警报、补货建议、循环盘点调整、每周报告。几乎所有情况。
ops 中使用 @hereTop 100 SKU 出现实际或即将发生的缺货,或供应商延迟导致 7 天内缺货。“WH-EAST 现有库存为 0,整个网络将在 <1d 内缺货”
采购负责人(私信/邮件,不发频道)单笔 PO > $25k、偏离评分最高的供应商,或考虑新供应商。
财务仅当某个供应商的未结 PO 余额将超过 $100k,或怀疑存在重复 PO 时。日常事务不发。

升级到默认频道以外时,请添加一行说明触发了哪个阈值。

批量发送,不要刷屏

对于扫描和每日检查,发送一条汇总通知,不要为每个 SKU 各发一条。上面的低库存模板适用于单个 SKU 任务;如果是扫描任务,请撰写一条消息,列出已采取行动的 SKU(以及任何已暂缓的 SKU),并在最后一次性发送。

如果任务明确要求每个 SKU 各发一条警报(例如“为 Top 10 中的每个 SKU 发送个性化警报”):每个 SKU 填写一次模板,并像这样通过一条 Bash heredoc 将所有内容写入发件箱:

python -c '
import json
rows = [...top-10 from batch_days_of_cover.py...]
with open("/mnt/user/sinks/outbox.jsonl", "a") as f:
    for r in rows:
        f.write(json.dumps({"channel": "ops", "sku": r["sku"],
                            "message": f":warning: Low stock — {r[\"sku\"]} ..."}) + "\n")
'

不要针对每个 SKU 调用一次 send_slack_alert(或启动子 Agent)——这会产生 N 次模型往返来填充模板。

批量发送后,最终回复应包含简短确认(“✓ 已向 ops 发送 10 条警报——请查看发件箱”)以及一张简明表格,列出 SKU、现有库存和可覆盖天数。不要在回复中重复完整警报内容;内容已在发件箱中。

如何发送

通过 Bash 直接追加到 /mnt/user/sinks/outbox.jsonl——每行一个 JSON 对象,例如:

python -c 'import json; print(json.dumps({"channel": "ops", "sku": "SKU-0012", "message": "..."}))' \
  >> /mnt/user/sinks/outbox.jsonl

使用 json.dumps 对消息中的换行符进行转义(直接使用 echo 会破坏 JSONL)。整个任务就是:读取一次所需数据(如果尚未获取),追加一次。如果发送通知的调用次数超过两次,那就是过度设计了。

评论

支持 Markdown