Website Monitor

v1.0.0

Monitor websites for changes, downtime, or specific content. Get notified when a page changes, goes down, or matches/stops matching a pattern. Lightweight —...

0· 931·5 current·5 all-time
byShihao Jiang (Zac)@zacjiang

Install

OpenClaw Prompt Flow

Install with OpenClaw

Best for remote or guided setup. Copy the exact prompt, then paste it into OpenClaw for zacjiang/site-monitor.

Previewing Install & Setup.
Prompt PreviewInstall & Setup
Install the skill "Website Monitor" (zacjiang/site-monitor) from ClawHub.
Skill page: https://clawhub.ai/zacjiang/site-monitor
Keep the work scoped to this skill only.
After install, inspect the skill metadata and help me finish setup.
Use only the metadata you can verify from ClawHub; do not invent missing requirements.
Ask before making any broader environment changes.

Command Line

CLI Commands

Use the direct CLI path if you want to install manually and keep every step visible.

OpenClaw CLI

Bare skill slug

openclaw skills install site-monitor

ClawHub CLI

Package manager switcher

npx clawhub@latest install site-monitor
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Benign
high confidence
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.
Assessment
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).

Like a lobster shell, security has layers — review code before you run it.

latestvk97eff5t4y44fezgh9h040edz582a45v
931downloads
0stars
1versions
Updated 1mo ago
v1.0.0
MIT-0

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.

Comments

Loading comments...