Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help


title: “Product Price Monitor — Watch product, flight, or listing prices; alert on target” sidebar_label: “Product Price Monitor” description: “Watch product, flight, or listing prices; alert on target”

{/* 本页面由 website/scripts/generate-skill-docs.py 根据技能对应的 SKILL.md 文件自动生成。请直接编辑源文件 SKILL.md,而非此页面。 */}

商品价格监控器

实时监控商品、航班或列表的价格,并在达到设定条件时发出警报。

技能元数据

来源合并版(默认已安装)
路径skills/productivity\product-price-monitor
版本0.1.0
开发者Ben Barclay (benbarclay),Hermes Agent
许可协议MIT
支持平台linux、macos、windows
标签价格、库存状况、购物、旅行、警报
相关技能地图

参考:完整 SKILL.md 内容

:::info 以下是当触发该技能时 Hermes 会加载的完整技能定义。技能处于激活状态时,智能体将依据此内容执行操作。
::

商品价格监控器

可监控具体的可购买商品,并在其统一计算后的总价或库存状况满足条件时发出警报。该技能可明确处理不同规格选项、税费、货币转换、库存情况、取消规则以及重复警报等问题。初始化过程会在前台运行一次,后续的定期检查则通过 cronjob 定时任务自动执行(price-watch 自动化模板负责构建此类定时任务)。

适用场景

  • “当这款笔记本电脑的价格降至 1,000 美元以下时通知我。”
  • “监控这些航班,一旦票价低于 500 美元即发出警报。”
  • “当这家酒店有可退款的房间时告诉我。”
  • “追踪门票/列表的库存状况。”
  • 对于已设置的价格监控任务,会按照 cron 定时规则触发检查(步骤 4-6)。 不适用场景:不适合用于一次性查询“当前价格是多少”的需求(此类需求应直接使用 web_search/web_extract)。

流程 — 设置(前台模式,仅需执行一次)

1. 明确具体商品信息

记录来源网址/提供商、产品编号或列表ID(如有)、不同规格选项、数量、购买地点、日期、出行人数、会员登录要求、商品状况、卖家信息以及可接受的替代品。当两种规格选项无法混淆时,即可完成此步骤。

2. 定义警报条件

指定货币类型、含税价与不含税价、最高价格限制、库存可用性规则、运费标准、是否可退换、舱位/房间/票级要求、冷却时间以及通知发送地址。当通过模拟示例能够得出确定的警报结果时,即完成此步骤。

3. 建立实时基准值并安排调度

使用 web_extract 或 browser_navigate 获取有限的实时数据,并记录数据获取时间、来源价格、各类费用及税金、库存状况以及相关条款。在至少一次前台模式的数据获取成功后,方可进行调度操作。将监控契约(包括商品信息、监测条件及基准值观测结果)写入 ~/.hermes/price-watches/<watch-slug>.json 文件中的状态文件中,随后创建相应任务:

cronjob(action="create",
        schedule="every 6h",
        prompt="Load the product-price-monitor skill and run the tick for the watch contract at ~/.hermes/price-watches/<watch-slug>.json.",
        deliver=<user's destination>)

请选择一个既符合速率限制又遵守网站服务条款的更新频率。当观测数据与基准值完全匹配且任务存在时,即视为处理完成。

流程 —— 检查(每次定时执行)

4. 获取并标准化数据

重新获取原始数据。仅使用带有时间戳的汇率转换货币,同时保留原始货币单位。需区分基础价格、强制费用、运费/税费、总价以及商品是否有货状态。忽略那些波动较大的页面元数据。如果获取失败,则表示状态未知:应报告或跳过处理,绝不能用错误页面覆盖上一次有效的观测结果。当当前观测数据与基准值相当或被明确标记为失败时,即视为处理完成。

5. 比较并过滤重复项

在达到阈值、出现符合条件的有货状态、价格显著下降或按需恢复时发出警报。将最后一次有效的观测结果及最后一次警报的指纹信息存储到状态文件中。对于相同的优惠信息,再次触发时不得再发送警报,必须遵守冷却时间要求。当根据存储的状态可以确定是否需要警报时,即视为处理完成。

6. 发送通知或保持沉默

当满足特定条件时,警报内容应包括:具体的商品/型号、观测到的总价格及原始货币单位、有货状态与服务条款、阈值值、数据获取时间戳、来源链接以及重要的不确定性因素。绝不能声称已预留库存。如果没有任何符合条件的情况,则保持沉默——除非用户要求定期发送“仍在监控中”的提示,否则不得发出此类消息。当状态文件反映了本次执行的结果时,即视为处理完成。

常见问题与陷阱

  • 对基础票价与全包价格阈值进行比对。
  • 对商品尺寸、卖家、舱位、日期或房间条款错误的情况发出警报。
  • 用错误页面覆盖之前记录的正确状态值。
  • 过度频繁地发起查询,从而导致被封禁或违反网站使用条款。
  • 在任何一次前端数据获取成功之前就安排任务执行。

验证标准

  • 监控合约会锁定相关商品,避免两种不同配置的商品被混淆。
  • 在创建任何任务之前,至少已有一次前端数据获取成功。
  • 警报的生成结果能根据状态文件以确定性方式重现,且不会出现重复警报。
  • 失败的查询永远不会替代之前记录的正确状态。
  • 警报中需包含全包价格、货币类型、时间戳以及来源链接。