ecommerce-price-watcher Pass

Track product prices across ecommerce sites and alert on offers or target-price hits. Use when a user wants to monitor one or many product URLs or item queries, compare current vs previous prices, detect discounts, and generate alert-ready summaries with product name, old/new price, percent drop, and direct link.

65out of 100
1.0k
stars
96
downloads
144
views

// Install Skill

Install Skill

Skills are third-party code from public GitHub repositories. SkillHub scans for known malicious patterns but cannot guarantee safety. Review the source code before installing.

Install globally (user-level):

npx skillhub install openclaw/skills/ecommerce-price-watcher

Install in current project:

npx skillhub install openclaw/skills/ecommerce-price-watcher --project

skill.install.customTargetHelp

npx skillhub install openclaw/skills/ecommerce-price-watcher --target-dir /path/to/skills

Suggested path: ~/.claude/skills/ecommerce-price-watcher/

AI Review

65
out of 100
Instruction Quality60
Description Precision60
Usefulness70
Technical Soundness72

Solid price monitoring skill with a functional Python script and layered parsing. Main gaps: no numbered step-by-step workflow in SKILL.md, no error handling table, and trusted domain list is Chile-specific. Script quality elevates it above average.

betamoderatebargain-huntersecommerce-analystsprice-trackingecommerce-monitoringdeal-alerts
Reviewed by claude-code on 3/30/2026

SKILL.md Content

---
name: ecommerce-price-watcher
description: Track product prices across ecommerce sites and alert on offers or target-price hits. Use when a user wants to monitor one or many product URLs or item queries, compare current vs previous prices, detect discounts, and generate alert-ready summaries with product name, old/new price, percent drop, and direct link.
---

# Ecommerce Price Watcher

Monitor product URLs, keep price history, detect offers, and output alert-ready JSON.

## Quick start

Use `scripts/price_watch.py`.

```bash
# URL mode
python3 skills/ecommerce-price-watcher/scripts/price_watch.py add \
  --url "https://example.com/product" \
  --target-price 399990 \
  --currency CLP

# Item mode (discover URLs from query)
python3 skills/ecommerce-price-watcher/scripts/price_watch.py add-item \
  --query "iPhone 13 128GB Chile" \
  --target-price 349990 \
  --currency CLP \
  --trusted-only \
  --max-results 5

python3 skills/ecommerce-price-watcher/scripts/price_watch.py check --all
```

## Commands

- `add`: add a single product URL
- `add-item`: discover product URLs from an item query, then add watches
- `list`: list watched products
- `check --id <id>`: check one product now
- `check --all`: check all products now
- `remove --id <id>`: delete watcher
- `history --id <id>`: print full price history

## Alert behavior

A check produces alerts when at least one condition matches:

1. `price_drop`: current price < previous price
2. `target_hit`: current price <= target price

Alert payload includes:
- product id
- title
- old/new price
- drop percent (when available)
- URL
- timestamp

## Item-query mode details

`add-item` uses a lightweight search discovery flow to find candidate product links.

- `--trusted-only` restricts discovered URLs to a curated trusted domain list.
- `--max-results` controls how many links are added.
- Duplicate URLs are skipped safely.

This gives users natural language entry ("track iPhone 13 128GB") instead of forcing direct URLs.

## Parsing strategy

Use a layered parser:
1. JSON-LD `offers.price`
2. Open Graph/meta price fields
3. Generic HTML regex fallback

When multiple prices are found, choose the lowest positive value as the current offer candidate.

## Security standards

- Accept only `http`/`https` URLs.
- Enforce request timeout.
- Enforce response body size cap.
- Do not execute remote JavaScript.
- Store no API keys/tokens in watcher data.
- Treat all page content as untrusted.
- Return structured JSON for safe downstream automation.

## Limits and operational notes

- Some stores block bot-like requests (403). This is expected on certain sites.
- Price extraction is best-effort and may need store-specific adapters over time.
- For production alerting, run `check --all` on schedule and forward only non-empty `alerts`.

## Suggested scheduled usage

Run every 30–120 minutes via cron, then send each alert to Telegram/WhatsApp/Discord.

License

Declared license: MIT

MIT License

Copyright (c) 2026 openclaw

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

View the license in the source repositorythe version published there is authoritative.