web-monitor-proMonitor web pages for changes, price drops, stock availability, and custom conditions. Use when a user asks to watch/track/monitor a URL, get notified about...
Install via ClawdBot CLI:
clawdbot install jakes420/web-monitor-proWatch any web page. Know when it changes.
python3 scripts/monitor.py quickstart # shows suggestions + engine status
python3 scripts/monitor.py watch "https://example.com/product"
python3 scripts/monitor.py check
Use quickstart on first run. It:
The agent can use this info to ask the user what they want to monitor and set it up for them.
~/.web-monitor/. Uses curl by default.The easiest way to start. Point it at a URL and it figures out the rest.
python3 scripts/monitor.py watch "https://example.com/product"
It detects whether it's a product page (sets up price monitoring), a stock page (watches availability), or a regular page (tracks content). No flags needed.
Add options if you want more control:
python3 scripts/monitor.py watch "https://example.com" --group wishlist
python3 scripts/monitor.py watch "https://example.com" --browser --webhook "https://hooks.slack.com/..."
When you want full control, use add:
python3 scripts/monitor.py add "https://example.com/product" \
--label "Cool Gadget" \
--condition "price below 500" \
--interval 360 \
--group "wishlist" \
--priority high \
--target 3000 \
--browser \
--webhook "https://hooks.slack.com/..."
All options (work with both add and watch):
--label/-l name for the monitor--selector/-s CSS selector to focus on (#price, .stock-status)--condition/-c when to alert (see Condition Syntax below)--interval/-i check interval in minutes (default: 360)--group/-g category name ("wishlist", "work")--priority/-p high, medium, or low (default: medium)--target/-t price target number--browser/-b use Playwright for JS-rendered pages--webhook/-w webhook URL, repeatable for multiple endpointspython3 scripts/monitor.py check # check all
python3 scripts/monitor.py check --id 3 # check one
python3 scripts/monitor.py check --verbose # include content preview
Returns status (changed/unchanged), condition info, price data, and a human-readable change summary. Examples of what summaries look like:
When changes are detected, an HTML diff is auto-generated. The path appears in the diff_path field.
Everything at a glance.
python3 scripts/monitor.py dashboard
python3 scripts/monitor.py dashboard --whatsapp
Shows status icons, last check time, days monitored, current prices, target progress, and browser/webhook config. Groups monitors by category.
python3 scripts/monitor.py trend 3
python3 scripts/monitor.py trend 3 --days 30
Shows direction (rising/dropping/stable), min/max/avg with dates, target progress, and a sparkline.
Compare prices across stores in a group:
python3 scripts/monitor.py compare mygroup
python3 scripts/monitor.py compare --all
Shows cheapest to most expensive, price history, and the best deal as a percentage below average.
Add a competitor to an existing monitor:
python3 scripts/monitor.py add-competitor 3 "https://competitor.com/same-product"
Creates a new monitor in the same group with the same condition.
Pre-built setups for common patterns. Skip the manual config.
python3 scripts/monitor.py template list
python3 scripts/monitor.py template use price-drop "https://example.com/product"
python3 scripts/monitor.py template use restock "https://example.com/product"
python3 scripts/monitor.py template use sale "https://example.com/deals"
Available templates:
price-drop watches for price decreases, snapshots current price as baselinerestock looks for "in stock", "available", "add to cart"content-update tracks page changes with smart diffsale watches for "sale", "discount", "% off"new-release watches for new items or versionsEach one pre-configures the condition, interval, and priority.
python3 scripts/monitor.py list # all monitors
python3 scripts/monitor.py list --group wishlist # filter by group
python3 scripts/monitor.py pause 3 # skip during checks
python3 scripts/monitor.py resume 3 # re-enable
python3 scripts/monitor.py remove 3 # delete
Attach notes to any monitor:
python3 scripts/monitor.py note 3 "waiting for Black Friday"
python3 scripts/monitor.py notes 3
Take a manual snapshot:
python3 scripts/monitor.py snapshot 3
python3 scripts/monitor.py snapshot 3 --note "price before sale"
View history:
python3 scripts/monitor.py history 3
python3 scripts/monitor.py history 3 --limit 10
Side-by-side HTML comparison. Old on the left, new on the right. Green for additions, red for removals, yellow for changes.
python3 scripts/monitor.py diff 3
python3 scripts/monitor.py screenshot 3
diff generates the comparison and opens it in your browser. screenshot saves the current content for future diffing.
Weekly summary, formatted for WhatsApp:
python3 scripts/monitor.py report
python3 scripts/monitor.py groups
Lists all groups with monitor counts.
The monitor uses a fetch engine to grab page content. By default (--engine auto), it tries engines in order until one works:
Check what's available on your system:
python3 scripts/monitor.py engines
Force a specific engine:
python3 scripts/monitor.py watch "https://example.com" --engine cloudscraper
python3 scripts/monitor.py add "https://example.com" --engine browser
Install cloudscraper (recommended for Cloudflare-protected e-commerce sites):
pip3 install cloudscraper
The engine preference is saved per monitor. You can mix engines across monitors.
Sites like Amazon, Best Buy, and most SPAs load content with JavaScript. Default curl fetching won't see it. Add --browser to use Playwright's headless Chromium:
python3 scripts/monitor.py watch "https://amazon.com/dp/B0EXAMPLE" --browser
If Playwright isn't installed, it falls back to curl and warns you. Install with:
pip3 install playwright && python3 -m playwright install chromium
Fire a JSON POST when conditions are met or content changes:
python3 scripts/monitor.py add "https://example.com" --webhook "https://hooks.slack.com/services/..."
Use --webhook multiple times for multiple endpoints. The payload includes monitor_id, label, url, event details (status, condition_met, change_summary, current_price), and timestamp.
Webhooks fire during check whenever something triggers.
python3 scripts/monitor.py export > monitors.json
python3 scripts/monitor.py import monitors.json
Import skips duplicates by URL.
python3 scripts/monitor.py gui
Opens ~/.web-monitor/console.html in your browser. Single self-contained HTML file. Shows all monitors, price trends, alert history, groups, and templates. Dark/light mode, filtering, sorting, sparklines. No external dependencies.
Add --no-open to generate without launching.
price below 500 or price < 500 alerts when price drops below thresholdprice above 1000 or price > 1000 alerts when price exceeds thresholdcontains 'in stock' alerts when text appears on pagenot contains 'out of stock' alerts when text disappearsSet up a cron job to check monitors regularly:
Task: Check all web monitors. Run: python3 <skill_dir>/scripts/monitor.py check
Report any monitors where status is "changed" or "condition_met" is true.
If nothing changed, stay silent.
Recommended schedule: every 6 hours (0 /6 ). For weekly reports, run report on Mondays.
python3 scripts/monitor.py feedback "your message"
python3 scripts/monitor.py feedback --bug "something broke"
python3 scripts/monitor.py feedback --idea "wouldn't it be cool if..."
python3 scripts/monitor.py debug
watch is almost always the right starting point. Use add only when you need specific conditions.--selector reduces noise. If you only care about the price, point it at #price instead of the whole page.compare to find the best deal across stores.dashboard and check output.snapshot --note before a sale event gives you a clean baseline to diff against.--browser is not optional. It's required.Generated Mar 1, 2026
Consumers and businesses monitor product pages on Amazon, Best Buy, or other retailers for price drops. The agent sets up monitors with price-drop templates, alerting via webhooks when prices fall below targets, enabling timely purchases and budget optimization.
Users track high-demand items like electronics or limited-edition goods for restocks. The agent uses restock templates to watch for 'in stock' indicators, notifying instantly when products become available, reducing missed opportunities and manual checks.
Researchers or marketers monitor news sites, blogs, or competitor pages for new articles or changes. The agent employs content-update templates with visual diffs, summarizing updates and alerting via Slack or Discord for real-time insights.
Procurement teams or savvy shoppers compare prices for the same product across multiple stores. The agent adds competitors to monitors, using the compare feature to identify the best deals and track trends, aiding in cost-saving decisions.
Users monitor deal pages or event sites for sales, discounts, or new releases. The agent applies sale or new-release templates, setting conditions to alert on keywords like 'sale' or '% off', helping capture promotions early.
Offer a premium version with advanced features like unlimited monitors, faster intervals, or priority support. Charge a monthly fee, targeting businesses that need extensive web monitoring for competitive intelligence or inventory management.
Provide basic monitoring for free with limits on monitors or intervals, then upsell features like webhooks, browser rendering, or detailed analytics. This attracts individual users and converts them to paying customers as needs grow.
Sell customized packages to large organizations for internal use, such as monitoring regulatory updates or competitor websites. Include dedicated support, API access, and integration with existing tools like Slack or CRM systems.
💬 Integration Tip
Integrate with existing workflows by setting up webhooks to platforms like Slack or Discord for instant notifications, and use templates to simplify common monitoring tasks without manual configuration.
Automatically update Clawdbot and all installed skills once daily. Runs via cron, checks for updates, applies them, and messages the user with a summary of what changed.
Full desktop computer use for headless Linux servers. Xvfb + XFCE virtual desktop with xdotool automation. 17 actions (click, type, scroll, screenshot, drag,...
Essential Docker commands and workflows for container management, image operations, and debugging.
Tool discovery and shell one-liner reference for sysadmin, DevOps, and security tasks. AUTO-CONSULT this skill when the user is: troubleshooting network issues, debugging processes, analyzing logs, working with SSL/TLS, managing DNS, testing HTTP endpoints, auditing security, working with containers, writing shell scripts, or asks 'what tool should I use for X'. Source: github.com/trimstray/the-book-of-secret-knowledge
Deploy applications and manage projects with complete CLI reference. Commands for deployments, projects, domains, environment variables, and live documentation access.
Monitor topics of interest and proactively alert when important developments occur. Use when user wants automated monitoring of specific subjects (e.g., product releases, price changes, news topics, technology updates). Supports scheduled web searches, AI-powered importance scoring, smart alerts vs weekly digests, and memory-aware contextual summaries.