ClawKit Logo
ClawKitReliability Toolkit
Back to Registry
Official Verified

gateway-watchdog

Monitor OpenClaw gateway health with a watchdog state machine, Discord alerts, cooldown dedupe, and isolated fallback deployment on macOS. Use when users want gateway failure detection, auto-recovery policy, and low-noise Discord incident notifications.

skill-install β€” Terminal

Install via CLI (Recommended)

clawhub install openclaw/skills/skills/jonathanjing/openclaw-gateway-watchdog-skill
Or

Gateway Watchdog (Discord)

Discord-first watchdog for OpenClaw gateway incidents.

πŸ› οΈ Installation

1. Ask OpenClaw (Recommended)

Tell OpenClaw: "Install the gateway-watchdog skill." The agent will handle the installation and configuration automatically.

2. Manual Installation (CLI)

If you prefer the terminal, run:

clawhub install gateway-watchdog

Isolation model

  • Watchdog data is isolated under ~/.openclaw/watchdogs/gateway-discord/.
  • No edits to openclaw.json are required.
  • Default mode is read-only monitoring (GW_WATCHDOG_ENABLE_RESTART=0).
  • Automatic restart is opt-in and bounded by max attempts.

Files in this skill

  • scripts/gateway-watchdog.sh - health checks + state machine + Discord notification.
  • scripts/install-launchd.sh - installs a user LaunchAgent from template.
  • references/com.openclaw.gateway-watchdog.plist.template - launchd template.
  • references/cron-agent-turn.md - isolated cron prompt template.

Health checks

The watchdog checks:

openclaw gateway status --json
openclaw health --json --timeout <ms>

Pass criteria:

  • gateway runtime is running
  • RPC probe is healthy (when present)
  • health snapshot returns successfully

Failure classes:

  • runtime_stopped
  • rpc_probe_failed
  • health_unreachable
  • auth_mismatch
  • config_invalid

Quick start (manual run)

bash "{baseDir}/scripts/gateway-watchdog.sh"

Optional env:

export DISCORD_WEBHOOK_URL="https://discord.com/api/webhooks/..."
export DISCORD_BOT_TOKEN="discord_bot_token"
export DISCORD_CHANNEL_ID="<your_discord_channel_id>"
export GW_WATCHDOG_SOURCE="manual"
export GW_WATCHDOG_FAIL_THRESHOLD=2
export GW_WATCHDOG_COOLDOWN_SECONDS=300

Delivery priority:

  1. DISCORD_WEBHOOK_URL
  2. DISCORD_BOT_TOKEN + DISCORD_CHANNEL_ID

macOS background mode (LaunchAgent)

Install LaunchAgent (does not edit OpenClaw core config):

bash "{baseDir}/scripts/install-launchd.sh" --interval 30 --load

Check status:

launchctl list | rg "com.openclaw.gateway-watchdog"

OpenClaw cron mode (internal path)

Use isolated job and keep messaging in one channel:

openclaw cron add \
  --name "gateway-watchdog-internal" \
  --cron "*/1 * * * *" \
  --session isolated \
  --message "Run bash {baseDir}/scripts/gateway-watchdog.sh and report state changes only." \
  --announce \
  --channel discord \
  --to "channel:<your_channel_id>" \
  --best-effort-deliver

Auto-recovery policy (opt-in)

Enable bounded restart:

export GW_WATCHDOG_ENABLE_RESTART=1
export GW_WATCHDOG_MAX_RESTART_ATTEMPTS=2

Safety constraints:

  • restart only after failure threshold is met
  • max attempts enforced per incident window
  • no reinstall or destructive mutation

Backup and audit artifacts

Metadata

Stars1947
Views1
Updated2026-03-04
View Author Profile
AI Skill Finder

Not sure this is the right skill?

Describe what you want to build β€” we'll match you to the best skill from 16,000+ options.

Find the right skill
Add to Configuration

Paste this into your clawhub.json to enable this plugin.

{
  "plugins": {
    "official-jonathanjing-openclaw-gateway-watchdog-skill": {
      "enabled": true,
      "auto_update": true
    }
  }
}
Safety NoteClawKit audits metadata but not runtime behavior. Use with caution.