Hormuz Strait Monitor

v1.0.0

Track shipping transit data through the Strait of Hormuz. Monitors transits, daily throughput, and non-Iranian vessel counts from hormuzstraitmonitor.com and...

1· 116·0 current·0 all-time
by赖根@laigen

Install

OpenClaw Prompt Flow

Install with OpenClaw

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

Previewing Install & Setup.
Prompt PreviewInstall & Setup
Install the skill "Hormuz Strait Monitor" (laigen/hormuz-strait-monitor) from ClawHub.
Skill page: https://clawhub.ai/laigen/hormuz-strait-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 hormuz-strait-monitor

ClawHub CLI

Package manager switcher

npx clawhub@latest install hormuz-strait-monitor
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Benign
medium confidence
Purpose & Capability
The name/description (monitoring Hormuz transit data) aligns with the implementation: the script uses Selenium + Chrome to render JavaScript pages (hormuzstraitmonitor.com and shipxy.com), parses metrics with regex/DOM, and appends results to a CSV in the user's OpenClaw workspace. Required runtime pieces (Chrome, selenium, webdriver-manager) are appropriate for this scraping task.
Instruction Scope
SKILL.md and the script confine actions to fetching two specified sites, parsing page text/embedded JSON, taking optional screenshots for debugging, appending CSV rows, and creating alerts. They do not instruct reading unrelated system files or environment variables. One scope gap: notifications are supported (e.g., 'wecom' channel) but SKILL.md and references/config.json do not document how authentication/credentials for notification channels are supplied—this is a missing operational detail (not proven malicious).
Install Mechanism
There is no explicit install spec, but the code uses webdriver-manager to auto-download a matching ChromeDriver at runtime. That behavior will fetch a binary from the web and write it to disk (typical for webdriver-manager). This is expected for Selenium-based scripts but is an external download performed at runtime rather than through an audited package install.
Credentials
The skill declares no required environment variables or credentials, which matches the visible code so far. However, SKILL.md advertises notification channels (wecom/others) without explaining how to provide channel credentials or webhooks; if the script supports sending alerts to external services it may require secrets (not declared). The script writes data and screenshots to the user's OpenClaw workspace (expected) and does not appear to request unrelated sensitive access.
Persistence & Privilege
The skill is not always-on and does not request elevated platform privileges. It only writes files to its own workspace paths (CSV, debug screenshots). It does not modify other skills or global agent settings according to provided files.
Assessment
This skill is functionally coherent for scraping Hormuz transit metrics, but take these precautions before installing: 1) Inspect the remainder of scripts/hormuz_monitor.py (notifications and any subprocess usage) to confirm where alerts are posted and whether secrets/webhooks are required; the SKILL.md does not document notification authentication. 2) Expect webdriver-manager to download ChromeDriver at runtime and write to the user's cache—run in an environment where automatic downloads are acceptable. 3) The script will create/append a CSV and may save debug screenshots under ~/.openclaw/workspace; ensure you are comfortable with that storage location. 4) Run initially in debug mode or a sandboxed account to confirm parsing behavior and that no unexpected network endpoints are contacted. If you need higher assurance, ask the skill author to document notification auth flows (what credentials or webhooks are used) or to provide a version that requires explicit user-supplied webhooks stored in the skill's config file.

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

latestvk974p3398csa58d0hjb60hz1s584g2x7
116downloads
1stars
1versions
Updated 2w ago
v1.0.0
MIT-0

Hormuz Strait Transit Monitor

Track shipping transit data through the Strait of Hormuz - a critical chokepoint for global oil supply.

Quick Start

# Run the monitor
python ~/.openclaw/workspace/skills/hormuz-strait-monitor/scripts/hormuz_monitor.py

# With notification channel
python ~/.openclaw/workspace/skills/hormuz-strait-monitor/scripts/hormuz_monitor.py --channel wecom

# Debug mode (keep browser visible)
python ~/.openclaw/workspace/skills/hormuz-strait-monitor/scripts/hormuz_monitor.py --debug

Data Collected

SourceFieldFormatExample
hormuzstraitmonitor.comTransits (24h)Number of ships6 ships
Day NormalDaily average60/day
Daily ThroughputDWT (Deadweight Tonnage)500K DWT
Avg ThroughputAverage DWT10.3M
shipxy.comNon-Iranian VesselsCount from vessel list4 vessels

Data Sources

SourceURLData Collected
hormuzstraitmonitor.comhttps://hormuzstraitmonitor.com/Transits (24h), Daily Throughput, Day Normal, Avg Throughput
shipxy.comhttps://www.shipxy.com/special/hormuzNon-Iranian vessels exiting strait in 12h

Both sites require JavaScript rendering - static HTTP fetch will not work.

Alert Conditions

Alert triggers when any condition is met:

ConditionThresholdMeaning
Transits Recovery>= 10 vesselsAbsolute recovery threshold
Transits Recovery>= 20% of day normalRelative recovery threshold
Throughput Recovery>= 20% of avgOil flow returning
Non-Iranian Vessels>= 10 exiting in 12hWestern/Asian shipping activity

Output

Data is appended to CSV: ~/.openclaw/workspace/memory/hormuz-transit-data.csv

Columns:

  • timestamp - Collection time
  • transits_24h - Vessels transited in last 24h
  • daily_throughput - Current daily oil flow
  • day_normal - Normal daily transit count
  • avg_throughput - Average daily throughput
  • non_iranian_vessels - Non-Iranian vessels exiting in 12h
  • alerts - Alert messages (if any)

Configuration

See references/config.json for threshold customization.

To enable notifications:

  1. Edit references/config.json
  2. Set "channel": "wecom" or other supported channel
  3. Or use --channel flag at runtime

Environment Requirements

Required:

  • Google Chrome (installed at /usr/bin/google-chrome)
  • Python 3.x
  • selenium + webdriver-manager

Install dependencies:

pip install selenium webdriver-manager

Chrome version: This skill uses Chrome 147+ (headless mode).

Workflow

  1. Fetch hormuzstraitmonitor.com

    • Launch headless Chrome
    • Wait for JavaScript rendering (~10s)
    • Parse Transits (24h), Daily Throughput, Day Normal, Avg
    • Use regex patterns for data extraction
  2. Fetch shipxy.com

    • Navigate to Chinese shipping portal
    • Wait for rendering (~15s)
    • Parse Non-Iranian vessel count (Chinese text patterns)
  3. Record Data

    • Append to CSV file
    • Include timestamp and all collected values
  4. Check Alerts

    • Compare current vs previous data
    • Evaluate threshold conditions
    • Generate alert messages
  5. Notify (if configured)

    • If alerts triggered OR channel configured
    • Send summary via specified channel

Troubleshooting

Chrome not found:

ERROR: Chrome binary not found at /usr/bin/google-chrome

Solution: Install Google Chrome or update binary path in script.

Selenium not installed:

ERROR: selenium and webdriver-manager not installed

Solution: pip install selenium webdriver-manager

Data not parsed:

  • Check debug screenshots: ~/.openclaw/workspace/memory/hormuzstraitmonitor_debug.png
  • Run with --debug to see browser content
  • Website structure may have changed - update regex patterns

Timeout errors:

  • Increase wait time in script (JavaScript-heavy pages)
  • Check network connectivity to both sites

Cron Integration

To monitor regularly, add to heartbeat or cron:

Heartbeat (HEARTBEAT.md):

- Check Hormuz Strait transit data (every 4h)

Cron job:

# Every 4 hours
openclaw cron add --schedule "0 */4 * * *" --name hormuz-monitor \
  --payload '{"kind": "agentTurn", "message": "Run Hormuz Strait monitor skill"}'

Notes

  • The Strait of Hormuz handles ~20% of global oil consumption
  • During Iran-West tensions, transits may drop significantly
  • Recovery signals indicate de-escalation or alternative routing
  • Non-Iranian vessel count is key indicator of Western/Asian shipping confidence

Comments

Loading comments...