Some checks failed
CI / docs-scope (push) Has been cancelled
CI / secrets (push) Has been cancelled
CI / ios (push) Has been cancelled
Docker Release / validate_manual_backfill (push) Has been cancelled
Install Smoke / docs-scope (push) Has been cancelled
Sandbox Common Smoke / sandbox-common-smoke (push) Has been cancelled
Workflow Sanity / no-tabs (push) Has been cancelled
Workflow Sanity / actionlint (push) Has been cancelled
Workflow Sanity / config-docs-drift (push) Has been cancelled
CI / changed-scope (push) Has been cancelled
CI / build-artifacts (push) Has been cancelled
CI / release-check (push) Has been cancelled
CI / checks (pnpm canvas:a2ui:bundle && bunx vitest run --config vitest.unit.config.ts, bun, test) (push) Has been cancelled
CI / checks (pnpm canvas:a2ui:bundle && pnpm test, node, 2, 1, test) (push) Has been cancelled
CI / checks (pnpm canvas:a2ui:bundle && pnpm test, node, 2, 2, test) (push) Has been cancelled
CI / checks (pnpm protocol:check, node, protocol) (push) Has been cancelled
CI / checks (pnpm test:channels, node, channels) (push) Has been cancelled
CI / checks (pnpm test:extensions, node, extensions) (push) Has been cancelled
CI / check (push) Has been cancelled
CI / startup-memory (push) Has been cancelled
CI / check-docs (push) Has been cancelled
CI / compat-node22 (push) Has been cancelled
CI / skills-python (push) Has been cancelled
CI / checks-windows (pnpm test, node, 6, 1, test) (push) Has been cancelled
CI / checks-windows (pnpm test, node, 6, 2, test) (push) Has been cancelled
CI / checks-windows (pnpm test, node, 6, 3, test) (push) Has been cancelled
CI / checks-windows (pnpm test, node, 6, 4, test) (push) Has been cancelled
CI / checks-windows (pnpm test, node, 6, 5, test) (push) Has been cancelled
CI / checks-windows (pnpm test, node, 6, 6, test) (push) Has been cancelled
CI / macos (push) Has been cancelled
CI / android (./gradlew --no-daemon :app:assembleDebug, build) (push) Has been cancelled
CI / android (./gradlew --no-daemon :app:testDebugUnitTest, test) (push) Has been cancelled
Docker Release / approve_manual_backfill (push) Has been cancelled
Docker Release / build-amd64 (push) Has been cancelled
Docker Release / build-arm64 (push) Has been cancelled
Docker Release / create-manifest (push) Has been cancelled
Install Smoke / install-smoke (push) Has been cancelled
3.2 KiB
3.2 KiB
summary, read_when, title
| summary | read_when | title | |
|---|---|---|---|
| Health check steps for channel connectivity |
|
Health Checks |
Health Checks (CLI)
Short guide to verify channel connectivity without guessing.
Quick checks
openclaw status— local summary: gateway reachability/mode, update hint, linked channel auth age, sessions + recent activity.openclaw status --all— full local diagnosis (read-only, color, safe to paste for debugging).openclaw status --deep— also probes the running Gateway (per-channel probes when supported).openclaw health --json— asks the running Gateway for a full health snapshot (WS-only; no direct Baileys socket).- Send
/statusas a standalone message in WhatsApp/WebChat to get a status reply without invoking the agent. - Logs: tail
/tmp/openclaw/openclaw-*.logand filter forweb-heartbeat,web-reconnect,web-auto-reply,web-inbound.
Deep diagnostics
- Creds on disk:
ls -l ~/.openclaw/credentials/whatsapp/<accountId>/creds.json(mtime should be recent). - Session store:
ls -l ~/.openclaw/agents/<agentId>/sessions/sessions.json(path can be overridden in config). Count and recent recipients are surfaced viastatus. - Relink flow:
openclaw channels logout && openclaw channels login --verbosewhen status codes 409–515 orloggedOutappear in logs. (Note: the QR login flow auto-restarts once for status 515 after pairing.)
Health monitor config
gateway.channelHealthCheckMinutes: how often the gateway checks channel health. Default:5. Set0to disable health-monitor restarts globally.gateway.channelStaleEventThresholdMinutes: how long a connected channel can stay idle before the health monitor treats it as stale and restarts it. Default:30. Keep this greater than or equal togateway.channelHealthCheckMinutes.gateway.channelMaxRestartsPerHour: rolling one-hour cap for health-monitor restarts per channel/account. Default:10.channels.<provider>.healthMonitor.enabled: disable health-monitor restarts for a specific channel while leaving global monitoring enabled.channels.<provider>.accounts.<accountId>.healthMonitor.enabled: multi-account override that wins over the channel-level setting.- These per-channel overrides apply to the built-in channel monitors that expose them today: Discord, Google Chat, iMessage, Microsoft Teams, Signal, Slack, Telegram, and WhatsApp.
When something fails
logged outor status 409–515 → relink withopenclaw channels logoutthenopenclaw channels login.- Gateway unreachable → start it:
openclaw gateway --port 18789(use--forceif the port is busy). - No inbound messages → confirm linked phone is online and the sender is allowed (
channels.whatsapp.allowFrom); for group chats, ensure allowlist + mention rules match (channels.whatsapp.groups,agents.list[].groupChat.mentionPatterns).
Dedicated "health" command
openclaw health --json asks the running Gateway for its health snapshot (no direct channel sockets from the CLI). It reports linked creds/auth age when available, per-channel probe summaries, session-store summary, and a probe duration. It exits non-zero if the Gateway is unreachable or the probe fails/timeouts. Use --timeout <ms> to override the 10s default.