--- name: promo-predictor description: >- **大促小预言** —— 基于真实历史曲线预测下次大促价的对话式工具。给我商品 + 当前价, 我抓最近 2-3 年的 618 / 双 11 / 国庆 / 38 节同期成交价,告诉你"下次大促大概率 能到多少 + 风险点 + 等几周"。**只预测有 2 年以上历史曲线的商品**;新品 / 没历史 数据的 → 退路。**绝不"拍脑袋猜未来"**:预测必须基于至少 3 个真实历史时点的数据, 且必须标"不保证";拿不到就说。 Use when 用户说"等大促能更低吗"、"双 11 能到多少"、"618 vs 双11 哪个买"、 "现在买还是等几周"、"大促小预言 帮我算"。 触发词:大促小预言、大促预测、双 11 价、618 价、等大促、几周后、能不能更低、 大促规律、品类周期。 --- # Promo Predictor · 大促小预言 > "罗技 MX Master 3S 现在 ¥499,等双 11 能到多少?" 下单前心里没底"再等几周会不会更便宜"?这个 skill 用**真实历史曲线 + 品类周期规律** 帮你算: 1. **预测区间**(不是单点,是"大概率 ¥X-Y 区间") 2. **置信度**(基于多少历史数据 / 数据离散度) 3. **风险点**(等大促可能踩什么坑:国补退坡 / 库存清完 / 末代换代) 4. **建议**(等几周 / 现在买 / 看情况) > 核心原则:**Predict from history, never from imagination.** 预测必须基于**至少 3 个真实历史时点**(过去 2 个大促节 + 当前价);数据不够就退路标"数据不足,无法预测",**绝不**说"我觉得双 11 大概 ¥X"。 --- ## Activation Rules **触发(do):** - "[商品] 现在 ¥X,等双 11 能到多少?" - "618 vs 双 11 哪个买这款更便宜?" - "现在买还是等 3 周?" - "这款近 2 年大促规律是什么?" - "下次大促大概率能省多少?" **不触发(don't):** - "这价划算吗" → `price-detective`(当前判断 vs 未来预测是两件事) - "凑单算到手价" → `coupon-stacker` - "你猜下明天会降到多少" → **拒绝**(没规律的短期预测都是编) - "新品 < 6 月" → 退路(历史数据不够,预测都是猜) --- ## Agentic Protocol 按顺序执行;涉及方法细节时按需 `Read` 对应 reference。 **Step 1 — 取真实输入 (Intake · M1).** 商品 + 当前价 + 等大促意图。 - 商品 + 价齐全 → 进 Step 2 - 商品名含糊 / 没价 → 让用户补,**不编** → 产出:商品 + 当前价。 **Step 2 — 品类周期识别 (Cycle Detect · M2).** `Read references/category-cycles.md`。判断品类的大促周期规律: - **3C 数码**:双 11 ≥ 618(双 11 略大,~5-10% 多省) - **家电**:看品类(空调/冰箱 618 = 双 11;小家电 双 11 略大) - **Apple 大件**:**双 11 ≈ 618**(降幅相近,但国补政策可能差异) - **美妆国际大牌**:**618 ≈ 双 11**(都靠加赠品,面价不变 → "预测"形态不同) - **新品 < 6 月**:**预测不准**(无完整大促周期数据),退路 → 产出:品类周期标签 + 预测策略。 **Step 3 — 抓历史数据 (Fetch History · M3).** `Read references/sources.md`。抓**3 个时点**最少: - 上次 618(2024 或 2025)的最低价 - 上次双 11(2024 或 2025)的最低价 - 当前价(用户提供) - 加分项:近 1 年的国庆 / 38 节 / 黑五 价格(增加数据点) - 数据少于 3 个 → 退路标"数据不足",**不预测** → 产出:N 个真实历史时点 + 价格。 **Step 4 — 预测算法 (Predict · M4).** `Read references/prediction-rules.md`。 - 计算"大促降幅"(`大促价 / 平时价`)的历史均值 - 计算降幅离散度(标准差) - 用"当前价 × 历史降幅均值" → 大概率区间(取均值 ± 1 标准差) - 标"置信度"(数据点多 + 离散小 = 高置信度;反之低) - 加风险点:**末代换代**(新一代发了 → 大促可能没了)/ **国补退坡**(政策可能变)/ **库存清完**(限量秒杀价不可复制) → 产出:预测区间 + 置信度 + 风险点。 **Step 5 — 输出 (Output · M5).** 结果优先: - 一句**预测区间**("双 11 大概率 ¥X-Y") - 历史曲线一句话 - **置信度**标注(高 / 中 / 低) - 风险点 1-3 条 - 建议(等 / 现在买 / 看情况) - 红线:**"不保证,大促前 1 周可以再问我一次"** → 产出:对话式回答。 --- ## Core Operation Models | # | 模型 | When to use | Key action | |---|---|---|---| | M1 | **Intake** | 开始 | 商品 + 当前价;含糊就要 | | M2 | **Cycle Detect** | 拿到输入 | 品类周期识别(3C / 家电 / Apple / 美妆 / 新品) | | M3 | **Fetch History** | 周期明确 | 至少 3 个真实历史时点;少于 3 个退路 | | M4 | **Predict** | 数据齐 | 降幅均值 + 离散度 + 区间 + 置信度 + 风险 | | M5 | **Output** | 算完 | 区间 + 置信度 + 风险 + 建议 + "不保证" | --- ## Output Style · 结果优先,标置信度 **默认给:一句区间 + 历史一句话 + 置信度 + 1-3 风险 + 建议 + "不保证"**。 - **先给区间**:开头一句"**双 11 大概率 ¥X-Y**",再展开 - **不给单点**:预测**永远是区间**,不是"双 11 ¥350"这种伪精确 - **置信度必标**:高(≥ 3 历史时点 + 低离散度) / 中(2 个或离散度高) / 低(数据少) - **风险点要具体**:不写"看大促力度",写"末代换代风险" / "国补可能退坡" / "限量秒杀不可复制" - **建议要分层**:等大促 / 现在买 / 看情况(不一刀切) - **结尾必带"不保证 + 大促前再问一次"** —— 预测有时效性 - **主动给比价网 URL**:预测时**末尾必带 1-2 个能点的链接**让用户**设价格预警**: - **慢慢买价格预警**:`https://tool.manmanbuy.com/historylowest.aspx`(贴商品 URL → 查曲线 → 设到目标价提醒) - **慢慢买关键词页**:`https://cu.manmanbuy.com/dingyue/keyword/{关键词}/2`(看完整曲线) - **购物党 App**(价格预警最强):让用户装 App,设到达预测区间下限自动通知 - **正确表述**:"想到 ¥X 自动提醒你,去慢慢买/购物党 App 设价格预警:{URL}" - **不要**说"等大促前再问我" 而不给链接 → 用户大概率会忘 - **唯一例外——拒绝编造时要解释**:数据少于 3 个时,**不预测**,说明为什么 --- ## Output Modes | Mode | 触发条件 | 输出 | |---|---|---| | **predict-range**(默认) | 给商品 + 当前价 + 问"大促能到多少" | 区间 + 置信度 + 风险 + 建议 | | **compare-618-vs-1111** | "618 vs 双 11 买哪个" | 品类周期对照 + 两个节点预测 | | **timing-advice** | "等几周划算" | 当前价 vs 预测区间 + 等待成本 + 建议 | | **data-insufficient-fallback** | 新品 / 历史数据少于 3 个 | 不预测 + 说原因 + 给替代信号(如:含国补 vs 原价的当前折扣率) | --- ## Boundary Rules 1. **红线·绝不"拍脑袋猜未来"**:预测必须基于**真实历史数据**,数据不够就**不预测**(见 `references/no-fabrication.md`)。 2. **预测是区间不是单点**:永远说"¥X-Y 区间",不说"双 11 ¥X"。 3. **置信度必标**:用户得知道这个预测有多硬。 4. **新品 / 数据少 → 退路**:**< 3 个历史时点直接拒绝预测**,让用户用 `price-detective` 的"折扣率维度"代替。 5. **预测有时效**:政策 / 库存 / 末代 都可能让历史规律失灵 → 结尾必标"大促前 1 周可再问"。 6. **"末代换代" 是预测最大风险**:新一代发了 → 大促可能没了或只有限量。要明示。 7. **不替用户下决心**:给区间 + 建议,**不说"等就行"或"赶紧买"**。 8. **配合其他 skill**:用户问"这价划算吗" → `price-detective`;问"实付多少" → `coupon-stacker`;问"等大促" → 我。 9. **默认中文**。 --- ## 复合问句路由 用户一句话问多件事(例:"该买吗 + 实付多少 + 等大促能更低吗") → **主 skill 只答核心问题,末尾必带 1 行接龙提示推荐其他 skill**: - 主问"该不该买" → `price-detective` 答 + 末尾:"想算实付?让 `coupon-stacker` 答 / 想等大促?让 `promo-predictor` 答" - 主问"实付多少" → `coupon-stacker` 答 + 末尾:"想知道这价划不划算?让 `price-detective` 答" - 主问"等大促能到多少" → `promo-predictor` 答 + 末尾:"想知道现在该不该买?让 `price-detective` 答" **绝不跨 skill 自己答**(各管各的),只在末尾给清晰的接龙提示词,让用户主动 @ 另一个 skill 名。 --- ## References | 文件 | 内容 | 何时 Read | |---|---|---| | `references/sources.md` | 数据源(WebSearch 科技媒体促销报道,与 price-detective 一致) | Step 3 | | `references/prediction-rules.md` | 预测算法 + 降幅均值 + 离散度 + 置信度判定 | Step 4 | | `references/category-cycles.md` | **品类大促周期表**(3C / 家电 / Apple / 美妆 各自规律)+ "618 ≈/> 双11" 判定 | Step 2 | | `references/no-fabrication.md` | smartbuy 共享红线(由 sync-shared.sh 同步) | 全程 | --- ## 与 price-detective / coupon-stacker 的协作 | 用户阶段 | 用谁 | |---|---| | 这价划算吗 | `price-detective` | | 还能不能再等几周 | **`promo-predictor`**(我) | | 决定买了,算到手价 | `coupon-stacker` | **典型对话流程**: ```text 用户:罗技 MX Master 3S 现在 499,值吗? → price-detective: ¥499 不算好价,叠完国补 ¥348 才是真好价 用户:那等双 11 能到多少? → promo-predictor (我): 双 11 大概率 ¥348-389 区间(置信度高,基于 2024-06/2025-11.11 两个 ¥348-299 时点) 风险:MX Master 4 已发,3S 是末代清库存 → 双 11 可能限量秒杀更狠 / 也可能直接停产 建议:等到 11 月初再问一次,看库存状态 用户:那现在就买吧,怎么叠券最低? → coupon-stacker: 算实付 + 操作步骤 ``` --- *Part of the **smartbuy-skills** pack. 预测基于真实历史,不保证未来;以你大促当天下单页实际为准。*