下载地址
https://www.zhengdianxue.com/wp-content/uploads/skills/org-kzdd4w2j--restock-deadline-calculator.zip将提示词发送给你的 AI 安装该 skills
请根据 https://skillhub.cn/install/skillhub.md,安装 @org-kzdd4w2j/restock-deadline-calculator。按库存+日均销量算最晚国内出运日期与补货数量,防海外仓断货;含在途库存扣减。触发:补货/断货/最晚出运/备货测算/补货测算/库存盘点/还能卖几天/什么时候出货/库存够卖多久/在途。
阅读全文 (展开查看完整说明)
概述
补货出运测算
按「在库库存 + 日均销量 + 出运上架周期」算「最晚哪天从国内出运才不断货」和「该补多少件」,保证海外仓不断货。支持在途库存扣减。
前置条件(安装后先看)
| 项 | 要求 |
|---|---|
| 运行环境 | Python 3.6+(脚本仅用标准库,macOS/Linux 自带或指定解释器均可) |
| 第三方依赖 | 无(零 pip install,开箱即用) |
| 网络 / API | 不需要(纯本地计算,无 token、无密钥、无外部接口) |
| 数据准备 | 使用前需备好下列输入数据(缺了就问人,别硬算) |
使用前要备好的数据:
- 在库库存(件)——从 WMS/系统查
- 日均销量(件/天)——近 30 天销量 ÷ 30
- 上架周期(天)——国内出运 → 美国仓点可售的完整天数,向承运商/仓库确认
- 在途库存(件)——已出运未到库的数量(可选,有就给)
- 在途预计送达日期(可选,给了才能做断货衔接判断)
快速上手
对话触发:直接说「算下 SKU X 的补货」,把库存、日均销量、上架周期(哪个仓点)报出来即可,缺了会自动追问。
手动命令行:
cd ~/.workbuddy/skills/restock-deadline-calculator/scripts
python3 restock_calc.py --sku A --inventory 500 --daily-sales 20 --lead-time 20 --days 30带在途扣减:
python3 restock_calc.py --inventory 500 --daily-sales 20 --lead-time 20 --days 30 --in-transit 300 --in-transit-eta 2026-10-01最简要求:至少给「在库库存 + 日均销量 + 上架周期」三个数,其余用默认值(备货 30 天、无在途、无额外缓冲)。
用途
给定一个 SKU 的在库库存、日均销量、出运上架周期,回答三个问题:
- 还能卖几天?(什么时候断货)
- 最晚哪天必须从国内出运?
- 该补多少件?(想备多少天货,扣掉在途)
触发场景
- 用户问「补货」「断货」「什么时候出货」「最晚出运」「备货测算」「库存够卖多久」「还能卖几天」「在途」
- 给出 SKU + 库存 + 日均销量 + 上架周期,要求算补货时间点和数量
- 不触发:单纯查库存数量(那是 WMS 数据查询,不是测算);货柜到港追踪(那是 container-tracking)
核心公式
可售天数 = 在库库存 ÷ 日均销量
预计断货日期 = 今天 + 可售天数
最晚出运日期 = 今天 + (可售天数 − 上架周期 − 额外缓冲天数)
目标备货数量 = ⌈日均销量 × 备货天数⌉
建议补货数量 = max(0, 目标备货数量 − 在途库存) ← 在途扣减输入参数
| 参数 | 必须 | 说明 |
|---|---|---|
| SKU | 可选 | 仅用于输出标注 |
| 在库库存 | ✅ | 单位:件 |
| 日均销量 | ✅ | 件/天,口径建议近 30 天 |
| 上架周期 | ✅ | 国内出运→美国某仓点上架可售的完整周期(含清关/提货/上架,见下口径) |
| 备货天数 | 可选 | 想备多少天货,默认 30 天 |
| 在途库存 | 可选 | 已出运、尚未到库的数量,默认 0 |
| 在途 ETA | 可选 | 在途货预计送达仓库日期,给了才能做断货衔接判断 |
| 额外缓冲天数 | 可选 | 额外再留的余量,默认 0(见下口径) |
| 今天日期 | 可选 | 默认取系统当天 |
上架周期口径(重要)
上架周期默认应已包含清关、提货、上架等延误缓冲,直接按「国内出运 → 仓点可售」的完整天数报即可,不用额外再加缓冲。
- 若使用者报的是「纯运输时间」(不含清关上架),必须主动提醒补 3~7 天缓冲。
--buffer是「额外再留的余量」,仅在用户想更保守时用,默认 0。
仓点上架周期参考(只给建议,最终日期由使用者确认)
| 仓点 | 参考周期 |
|---|---|
| 美西(CA 等) | 约 20 天 |
| 美东(NJ 等) | 约 25~28 天 |
| 中部(TX 等) | 约 22~24 天 |
上表只是建议起点,最终出运/上架周期天数必须以使用者确认为准,不能拿参考值直接算完就报。
在途扣减规则
- 补货量:先按目标备货量算,再扣掉在途数量,结果不低于 0(别多补)。
- 断货衔接判断(给了在途 ETA 才做):
在途 ETA ≤ 现有断货日→ 在途能接上,实际断货日 = ETA + (ETA 时剩余在库 + 在途) ÷ 日均,输出延后后的实际断货日。在途 ETA > 现有断货日→ 中间会断货,在途救不了这段,提示加急/空运补缺口。
- 未给在途 ETA → 保守按现有库存计断货日,只扣减补货量,提醒补 ETA 更准。
- 最晚出运日始终按「现有在库库存」算(保守,防在途延误导致断货)。
执行步骤
- 确认输入:SKU、在库库存、日均销量、上架周期(哪个仓点,最终天数使用者拍板)、备货天数(默认 30)、在途库存 + 在途 ETA(有就给)、是否额外加缓冲。
- 若本 skill 目录存在
scripts/restock_calc.py,直接调用:
python3 restock_calc.py --inventory 500 --daily-sales 20 --lead-time 20 --days 30
# 加 SKU:--sku A
# 加在途扣减:--in-transit 300 --in-transit-eta 2026-10-01
# 加额外缓冲:--buffer 5
# 指定今天:--date 2026-09-21
# JSON 输出:--json- 若无脚本,按「核心公式」手算,日期必须用系统当天(
date命令),禁止手算日期。 - 输出结果(格式见下),并给紧急分级。
输出格式
SKU: A
今天: 2026-09-21
在库库存 500 件 | 日均销量 20 件/天
可售天数 25 天 → 预计断货 2026-10-16
在途库存 300 件 | 预计送达 2026-10-01
实际断货日(含在途): 2026-10-31
在途提示: 在途可在断货前接上,实际断货日已延后
上架周期 20 天
最晚出运日期 2026-09-26(距今 5 天)
建议补货数量(备30天): 300 件
(目标备货 600 件 - 在途 300 件)
紧急程度: 🔴 紧急紧急分级
| 级别 | 判定(距今 = 可售天数 − 上架周期 − 额外缓冲) |
|---|---|
| 🟢 充裕 | 距今 > 14 天 |
| 🟡 注意 | 距今 7~14 天 |
| 🔴 紧急 | 距今 0~7 天 |
| ⛔ 已断货风险 | 距今 ≤ 0 天(现在出运已来不及,建议空运/加急或海外仓调拨) |
边界与陷阱
- 日均销量或库存 ≤ 0 → 无法测算,问人。
- 上架周期缺失 → 必须问清是哪个仓点,最终天数由使用者确认,不能默认美西。
- 可售天数 ≤ 上架周期 → 已经来不及,标 ⛔,建议空运/加急,不能只报一个过去的日期了事。
- 日期用脚本/系统当天算,禁止手算日期(手算易错)。
- 在途数量给了但没给 ETA → 只扣减补货量、不延后断货日,提醒补 ETA。
- 在途 ETA 晚于现有断货日 → 中间会断货,必须提示加急,不能只报"补货量扣了在途"就完事。
Mode B(缺信息必须问)
以下缺失时,必须在输出前暂停问人:
- 上架周期对应哪个仓点?(美西/美东/中部周期不同,最终天数使用者确认)
- 日均销量口径?(近 7 天还是近 30 天,默认近 30 天)
- 备货天数?(默认 30 天,是否要备更久)
- 有没有在途货?有则问清在途数量 + 预计送达仓库日期(ETA)
- 是否需要额外缓冲?(默认上架周期已含缓冲,一般不加)
验证标准
- [ ] 可售天数 = 库存 ÷ 日均销量;最晚出运 = 今天 + (可售天数 − 上架周期 − 缓冲)
- [ ] 补货数量 = max(0, ⌈日均销量 × 备货天数⌉ − 在途库存)
- [ ] 给了在途 ETA 时,断货衔接判断正确(ETA ≤ 断货日则延后,> 则提示加急)
- [ ] 日期由脚本/系统当天算出,非手算
- [ ] 紧急分级与「距今天数」一致
- [ ] 可售天数 ≤ 上架周期时,输出了 ⛔ 已断货风险提示
示例
成功案例(无在途)
输入:SKU A,库存 500,日均 20,美西上架 20 天,备货 30 天输出:可售 25 天,最晚 9/26 出运,补 600 件(用户 2026-09-21 提供的标准例子)
在途扣减案例
输入:SKU A,库存 500,日均 20,上架 20 天,备货 30 天,在途 300 件,ETA 2026-10-01输出:实际断货 10/31,最晚 9/26 出运,补 300 件(600 − 300 在途)
边界案例
输入:库存 300,日均 20,上架 20 天→ 可售 15 天 < 上架 20 天,⛔ 已断货风险:现在出运已来不及,建议空运/加急。
版本与变更记录
| 版本 | 日期 | 变更 |
|---|---|---|
| v1.1.0 | 2026-09-21 | 新增在途扣减(–in-transit + –in-transit-eta)与断货衔接判断;上架周期口径明确「默认已含缓冲」;补货量转 int;补「前置条件/快速上手/变更记录」章节 |
| v1.0.0 | 2026-09-21 | 初版:库存+日均销量算最晚出运日与补货量,紧急分级 + 断货预警 |