← Back to Skills Marketplace
zacjiang

Website Monitor

by Shihao Jiang (Zac) · GitHub ↗ · v1.0.0
cross-platform ✓ Security Clean
924
Downloads
0
Stars
5
Active Installs
1
Versions
Install in OpenClaw
/install site-monitor
Description
Monitor websites for changes, downtime, or specific content. Get notified when a page changes, goes down, or matches/stops matching a pattern. Lightweight —...
README (SKILL.md)

Website Monitor

Lightweight website monitoring — detect changes, downtime, or content patterns without external services.

Usage

Check if a site is up

python3 {baseDir}/scripts/monitor.py check https://example.com

Monitor for changes (compare to last snapshot)

python3 {baseDir}/scripts/monitor.py watch https://example.com --state-dir /tmp/monitor-state

Returns exit code 0 if unchanged, 1 if changed (with diff), 2 if down.

Check for specific content

python3 {baseDir}/scripts/monitor.py match https://example.com/pricing --pattern "Enterprise plan"

Returns exit code 0 if pattern found, 1 if not found.

Batch monitor from file

# sites.txt: one URL per line
python3 {baseDir}/scripts/monitor.py batch sites.txt --state-dir /tmp/monitor-state

Integration with OpenClaw

Heartbeat check

Add to your HEARTBEAT.md:

Run website monitor batch check on sites.txt.
If any site is down or changed, notify me.

Cron job

# Check every 30 minutes
openclaw cron add --every 30m --task "Run website monitor on my sites list and alert me if anything changed"

Features

  • 🔍 Change detection with text diff
  • ⬆️ Uptime checking (HTTP status + response time)
  • 🎯 Pattern matching (regex supported)
  • 📁 File-based state (no database needed)
  • 📋 Batch monitoring from URL list
  • 🪶 Zero dependencies beyond Python stdlib + requests

Dependencies

pip3 install requests

How State Works

When using watch mode, the script saves a hash of each page's text content in --state-dir. On the next run, it compares the current hash to the saved one. If different, it reports the change and shows a text diff.

State files are named by URL hash, so you can monitor hundreds of sites without collision.

Usage Guidance
This skill appears to do exactly what it says: fetch URLs, diff their text, and save snapshots. Before installing, consider: (1) run it in a restricted environment (unprivileged user or container) because it will make outbound HTTP requests to whatever URLs you provide; (2) choose a secure state-dir (not world-readable) since page snapshots may include sensitive content; (3) review and control the list of URLs you monitor to avoid scanning internal services unintentionally; (4) install the 'requests' dependency from a trusted source and pin its version if needed; and (5) note the source is 'unknown' with no homepage—if provenance matters, obtain the script from a vetted source or audit the code yourself (the included monitor.py is small and readable).
Capability Analysis
Type: OpenClaw Skill Name: site-monitor Version: 1.0.0 The website-monitor skill is a straightforward utility for checking site uptime and detecting content changes. The Python script (scripts/monitor.py) uses the standard requests library to fetch URLs and stores state locally in a configurable directory (defaulting to /tmp/monitor-state) to perform diffing. No evidence of data exfiltration, malicious execution, or prompt injection was found; the code logic aligns perfectly with the stated purpose in SKILL.md.
Capability Assessment
Purpose & Capability
The name/description align with the included script and instructions: the tool fetches pages, checks uptime, matches patterns, and keeps file-based state. No unrelated binaries, env vars, or services are requested.
Instruction Scope
SKILL.md instructs the agent to run the bundled Python script and optionally add cron/heartbeat tasks. The runtime steps only read the provided URL list and state directory and do not ask the agent to read other system files or secrets.
Install Mechanism
There is no install spec beyond advising pip3 install requests. No downloads from 3rd-party URLs or archive extraction are present; the included Python script is self-contained.
Credentials
The skill requests no environment variables or credentials. The only external dependency is the 'requests' library, which is justified for HTTP fetching.
Persistence & Privilege
The skill writes snapshot/state files to a state directory (default /tmp/monitor-state). This is normal for a monitor, but those files can contain scraped page content and should be stored with appropriate access controls; the skill does not request persistent platform privileges or always:true.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install site-monitor
  3. After installation, invoke the skill by name or use /site-monitor
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
Initial release: uptime, change detection, content matching
Metadata
Slug site-monitor
Version 1.0.0
License
All-time Installs 5
Active Installs 5
Total Versions 1
Frequently Asked Questions

What is Website Monitor?

Monitor websites for changes, downtime, or specific content. Get notified when a page changes, goes down, or matches/stops matching a pattern. Lightweight —... It is an AI Agent Skill for Claude Code / OpenClaw, with 924 downloads so far.

How do I install Website Monitor?

Run "/install site-monitor" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Website Monitor free?

Yes, Website Monitor is completely free (open-source). You can download, install and use it at no cost.

Which platforms does Website Monitor support?

Website Monitor is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Website Monitor?

It is built and maintained by Shihao Jiang (Zac) (@zacjiang); the current version is v1.0.0.

💬 Comments