openclaw - 💡(How to fix) Fix Gateway startup probes bundled WhatsApp runtime deps and can hang/delay restarts even when channels.whatsapp is not configured [1 comments, 2 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
openclaw/openclaw#71994Fetched 2026-04-27 05:36:21
View on GitHub
Comments
1
Participants
2
Timeline
3
Reactions
0
Participants
Timeline (top)
closed ×1commented ×1cross-referenced ×1

On a packaged Linux/systemd install, Gateway startup can still probe the bundled WhatsApp channel runtime-deps path and invoke npm/git resolution even when channels.whatsapp is absent from openclaw.json.

Operationally, this makes restart look hung or badly delayed when the host cannot satisfy the WhatsApp runtime-deps install chain.

In my case the startup path attempted to resolve a git dependency via SSH:

[channels] failed to load bundled channel whatsapp: npm error code 128
npm error command git --no-replace-objects ls-remote ssh://[email protected]/whiskeysockets/libsignal-node.git
[email protected]: Permission denied (publickey)
npm error fatal: Could not read from remote repository.

Error Message

[channels] failed to load bundled channel whatsapp: npm error code 128 npm error command git --no-replace-objects ls-remote ssh://[email protected]/whiskeysockets/libsignal-node.git npm error fatal: Could not read from remote repository. [channels] failed to load bundled channel whatsapp: npm error code 128 npm error An unknown git error occurred npm error command git --no-replace-objects ls-remote ssh://[email protected]/whiskeysockets/libsignal-node.git npm error A complete log of this run can be found in: /root/.openclaw/plugin-runtime-deps/openclaw-unknown-a44f41aef101/.openclaw-npm-cache/_logs/2026-04-26T05_27_34_085Z-debug-0.log

Root Cause

On a packaged Linux/systemd install, Gateway startup can still probe the bundled WhatsApp channel runtime-deps path and invoke npm/git resolution even when channels.whatsapp is absent from openclaw.json.

Operationally, this makes restart look hung or badly delayed when the host cannot satisfy the WhatsApp runtime-deps install chain.

In my case the startup path attempted to resolve a git dependency via SSH:

[channels] failed to load bundled channel whatsapp: npm error code 128
npm error command git --no-replace-objects ls-remote ssh://[email protected]/whiskeysockets/libsignal-node.git
[email protected]: Permission denied (publickey)
npm error fatal: Could not read from remote repository.

Fix Action

Fix / Workaround

Local stopgap that avoided the restart stall

As a local hotfix, I removed the @openclaw/whatsapp / whatsapp entry from:

That is only a package-local workaround, not a real fix.

Code Example

[channels] failed to load bundled channel whatsapp: npm error code 128
npm error command git --no-replace-objects ls-remote ssh://git@github.com/whiskeysockets/libsignal-node.git
git@github.com: Permission denied (publickey)
npm error fatal: Could not read from remote repository.

---

[channels] failed to load bundled channel whatsapp: npm error code 128
npm error An unknown git error occurred
npm error command git --no-replace-objects ls-remote ssh://git@github.com/whiskeysockets/libsignal-node.git
git@github.com: Permission denied (publickey).
npm error A complete log of this run can be found in: /root/.openclaw/plugin-runtime-deps/openclaw-unknown-a44f41aef101/.openclaw-npm-cache/_logs/2026-04-26T05_27_34_085Z-debug-0.log
RAW_BUFFERClick to expand / collapse

Summary

On a packaged Linux/systemd install, Gateway startup can still probe the bundled WhatsApp channel runtime-deps path and invoke npm/git resolution even when channels.whatsapp is absent from openclaw.json.

Operationally, this makes restart look hung or badly delayed when the host cannot satisfy the WhatsApp runtime-deps install chain.

In my case the startup path attempted to resolve a git dependency via SSH:

[channels] failed to load bundled channel whatsapp: npm error code 128
npm error command git --no-replace-objects ls-remote ssh://[email protected]/whiskeysockets/libsignal-node.git
[email protected]: Permission denied (publickey)
npm error fatal: Could not read from remote repository.

Environment

  • OpenClaw packaged install under /usr/lib/node_modules/openclaw
  • Linux + systemd
  • Gateway service startup / restart path
  • channels.whatsapp not present in ~/.openclaw/openclaw.json

Expected behavior

If WhatsApp is not configured/enabled, Gateway startup should not probe or attempt bundled runtime dependency installation for the bundled WhatsApp channel.

Actual behavior

Gateway startup still enters the bundled WhatsApp channel load/runtime-deps path and can spend significant time in npm/git resolution before continuing or failing.

Observed evidence

Recent startup logs showed:

[channels] failed to load bundled channel whatsapp: npm error code 128
npm error An unknown git error occurred
npm error command git --no-replace-objects ls-remote ssh://[email protected]/whiskeysockets/libsignal-node.git
[email protected]: Permission denied (publickey).
npm error A complete log of this run can be found in: /root/.openclaw/plugin-runtime-deps/openclaw-unknown-a44f41aef101/.openclaw-npm-cache/_logs/2026-04-26T05_27_34_085Z-debug-0.log

The key operational point is not just the npm failure itself, but that startup touched the WhatsApp bundled runtime-deps path at all despite WhatsApp being absent from config.

Local stopgap that avoided the restart stall

As a local hotfix, I removed the @openclaw/whatsapp / whatsapp entry from:

  • /usr/lib/node_modules/openclaw/dist/channel-catalog.json

After that, restarting Gateway no longer triggered the WhatsApp/npm/libsignal-node path on this host.

That is only a package-local workaround, not a real fix.

Likely direction to inspect

This may be related to bundled channel discovery / persisted-auth-state probing / catalog-driven startup inclusion for built-in channels.

Even if a built-in channel has historical auth state or catalog metadata, startup probably should not automatically enter runtime-deps install for that channel unless it is actually configured/enabled (or the user explicitly asks to relink it).

Related context

A separate issue about recursive external runtime-deps staging (openclaw-unknown-*) was already closed as fixed-on-main (#71978 / #71599 lineage). This report is narrower and about the unexpected WhatsApp startup probe/install path itself when WhatsApp is not configured.

extent analysis

TL;DR

The Gateway startup probe of the WhatsApp channel runtime-deps path can be fixed by ensuring that the channel is properly excluded from the startup process when not configured in openclaw.json.

Guidance

  • Verify that the channels.whatsapp entry is indeed absent from ~/.openclaw/openclaw.json to confirm the expected configuration.
  • Investigate the channel discovery and catalog-driven startup inclusion mechanisms to identify why the WhatsApp channel is being probed despite being unconfigured.
  • Consider implementing a check to skip runtime-deps installation for unconfigured channels, such as WhatsApp, to prevent unnecessary probes and potential startup delays.
  • Review the channel-catalog.json file to understand how built-in channels are managed and how to properly exclude unconfigured channels from the startup process.

Example

No code snippet is provided as the issue is more related to configuration and startup behavior rather than a specific code fix.

Notes

The provided local stopgap solution, removing the @openclaw/whatsapp entry from channel-catalog.json, may not be a permanent fix and could have unintended consequences. A more thorough investigation into the channel discovery and startup mechanisms is necessary to identify a robust solution.

Recommendation

Apply a workaround by modifying the channel-catalog.json file to exclude unconfigured channels, such as WhatsApp, from the startup process, until a more permanent fix can be implemented. This approach is chosen because it directly addresses the observed behavior and provides a clear direction for further investigation and potential fixes.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

FAQ

Expected behavior

If WhatsApp is not configured/enabled, Gateway startup should not probe or attempt bundled runtime dependency installation for the bundled WhatsApp channel.

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING

openclaw - 💡(How to fix) Fix Gateway startup probes bundled WhatsApp runtime deps and can hang/delay restarts even when channels.whatsapp is not configured [1 comments, 2 participants]