openclaw - 💡(How to fix) Fix [Bug]: Discord outbound delivery broken — "Outbound not configured for channel: discord" (2026.5.18+, persists in 2026.5.19-beta.1) [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#84147Fetched 2026-05-20 03:43:27
View on GitHub
Comments
1
Participants
2
Timeline
5
Reactions
1
Author
Timeline (top)
labeled ×2closed ×1commented ×1subscribed ×1

Error Message

[discord] tool reply failed (target=channel:1488191501736349789 session=agent:main:discord:channel:1488191501736349789): Error: Outbound not configured for channel: discord [discord] block reply failed (target=channel:1488191501736349789 session=agent:main:discord:channel:1488191501736349789): Error: Outbound not configured for channel: discord [discord] final reply failed (target=channel:1488191501736349789 session=agent:main:discord:channel:1488191501736349789): Error: Outbound not configured for channel: discord

Root Cause

Root cause analysis: The outbound delivery path in deliver-Bau6nH95.js loads the outbound adapter from the active plugin channel registry:

Fix Action

Fix / Workaround

Steps to reproduce:

  1. Install OpenClaw 2026.4.26 with working Discord channel config (multiple accounts, tokens, guilds, channels, allowFrom all set).
  2. Upgrade to 2026.5.18 via openclaw update --yes (or openclaw update --tag beta --yes for 2026.5.19-beta.1).
  3. Gateway starts, Discord bots connect via health-monitor after ~5 min delay.
  4. Send a message to any Discord bot — it receives and processes it (ack reaction appears), but the reply never arrives.
  5. Check logs: Error: Outbound not configured for channel: discord on every reply attempt.

Workaround: None found. Downgrading to 2026.4.26 restores functionality.

Code Example

[discord] tool reply failed (target=channel:1488191501736349789 session=agent:main:discord:channel:1488191501736349789): Error: Outbound not configured for channel: discord
[discord] block reply failed (target=channel:1488191501736349789 session=agent:main:discord:channel:1488191501736349789): Error: Outbound not configured for channel: discord
[discord] final reply failed (target=channel:1488191501736349789 session=agent:main:discord:channel:1488191501736349789): Error: Outbound not configured for channel: discord

---

// load-BwwQNoDb.js
const loadOutboundAdapterFromRegistry = createChannelRegistryLoader(
  (entry) => entry.plugin.outbound
);

---

if (!handler) throw new Error(`Outbound not configured for channel: ${params.channel}`);

---

13:23:38 [gateway] ready
13:23:38 [delivery-recovery] Found 6 pending delivery entries — starting recovery
13:23:53 [delivery-recovery] Recovered delivery ca7eebde-... on discord
13:24:05 [delivery-recovery] Recovered delivery e7981a0f-... on discord
13:24:16 [delivery-recovery] Recovered delivery b283b268-... on discord
13:24:27 [delivery-recovery] Recovered delivery c4c1cad2-... on discord
13:24:28 [delivery-recovery] Recovered delivery c653e266-... on discord
13:24:29 [delivery-recovery] Recovered delivery cdc69263-... on discord
13:24:29 [delivery-recovery] Delivery recovery complete: 6 recovered, 0 failed
13:28:36 [health-monitor] [discord:default] health-monitor: restarting (reason: stopped)
13:28:58 [discord] [default] Discord bot probe resolved @openclaw-homelab
13:29:01 [discord] client initialized as 1488191077981618397; awaiting gateway readiness

---

13:36:46 [discord] tool reply failed: Error: Outbound not configured for channel: discord
13:37:02 [discord] block reply failed: Error: Outbound not configured for channel: discord
13:37:05 [discord] final reply failed: Error: Outbound not configured for channel: discord

---

13:23:38 [delivery-recovery] Found 6 pending delivery entries — starting recovery
13:24:29 [delivery-recovery] Delivery recovery complete: 6 recovered, 0 failed

---

@openclaw/discord | discord | openclaw | enabled | ~/.openclaw/npm/node_modules/@openclaw/discord/dist/index.js | 2026.5.19-beta.1

---

$ openclaw config get outbound
Config path not found: outbound
$ openclaw doctor
(no outbound-related warnings or fixes offered)
RAW_BUFFERClick to expand / collapse

Bug type: Regression (worked before, now fails)

Beta release blocker: Yes

Title: [Bug]: Discord outbound delivery broken — "Outbound not configured for channel: discord" (2026.5.18+, persists in 2026.5.19-beta.1)

Summary: After upgrading from 2026.4.26 to 2026.5.18 (and subsequently to 2026.5.19-beta.1), Discord bots receive messages and process them normally (ack reactions work), but all replies fail with Error: Outbound not configured for channel: discord. This is not a user-configurable setting — there is no outbound config key in the schema. The outbound adapter is loaded dynamically from the plugin channel registry at runtime, and the Discord plugin (@openclaw/discord) ships an outbound adapter (outbound-adapter-C54-43UU.js), but it is never registered in the active plugin channel registry.

This was reported in #83972 (closed as COMPLETED), but the underlying outbound issue was never resolved — only the initial "Discord not connecting" symptom was partially addressed by the health-monitor delayed initialization.

Steps to reproduce:

  1. Install OpenClaw 2026.4.26 with working Discord channel config (multiple accounts, tokens, guilds, channels, allowFrom all set).
  2. Upgrade to 2026.5.18 via openclaw update --yes (or openclaw update --tag beta --yes for 2026.5.19-beta.1).
  3. Gateway starts, Discord bots connect via health-monitor after ~5 min delay.
  4. Send a message to any Discord bot — it receives and processes it (ack reaction appears), but the reply never arrives.
  5. Check logs: Error: Outbound not configured for channel: discord on every reply attempt.

Expected behavior: Discord bots receive messages AND send replies, as in 2026.4.26. No user-side outbound configuration should be needed — the outbound adapter should be registered by the Discord plugin automatically.

Actual behavior: Every outbound delivery fails:

[discord] tool reply failed (target=channel:1488191501736349789 session=agent:main:discord:channel:1488191501736349789): Error: Outbound not configured for channel: discord
[discord] block reply failed (target=channel:1488191501736349789 session=agent:main:discord:channel:1488191501736349789): Error: Outbound not configured for channel: discord
[discord] final reply failed (target=channel:1488191501736349789 session=agent:main:discord:channel:1488191501736349789): Error: Outbound not configured for channel: discord

The delivery-recovery mechanism on gateway restart replays previously failed messages, giving the appearance of a fix (replies to old messages appear), but new messages still fail with the same error.

Root cause analysis: The outbound delivery path in deliver-Bau6nH95.js loads the outbound adapter from the active plugin channel registry:

// load-BwwQNoDb.js
const loadOutboundAdapterFromRegistry = createChannelRegistryLoader(
  (entry) => entry.plugin.outbound
);

The createChannelRegistryLoader searches getActivePluginChannelRegistry()?.channels for a matching plugin.id === "discord". When this returns undefined, the outbound handler is null, and deliver-Bau6nH95.js throws:

if (!handler) throw new Error(`Outbound not configured for channel: ${params.channel}`);

This means the Discord plugin's outbound adapter is not being registered into the channel registry during plugin initialization, even though:

  • @openclaw/discord 2026.5.18 / 2026.5.19-beta.1 ships outbound-adapter-C54-43UU.js
  • The plugin shows as enabled in openclaw plugins list
  • Discord inbound (message receiving) works correctly

Workaround: None found. Downgrading to 2026.4.26 restores functionality.

OpenClaw version: 2026.5.19-beta.1 (ba9034b) — also reproducible on 2026.5.18 (50a2481)

Operating system: Ubuntu (Linux 6.8.0-106-generic)

Install method: npm global

Model: local/gemini-3-flash-preview

Provider / routing chain: openclaw gateway → local provider (gemini-3-flash-preview)

Logs, screenshots, and evidence:

Gateway startup (2026.5.19-beta.1) — Discord connects successfully after health-monitor delay:

13:23:38 [gateway] ready
13:23:38 [delivery-recovery] Found 6 pending delivery entries — starting recovery
13:23:53 [delivery-recovery] Recovered delivery ca7eebde-... on discord
13:24:05 [delivery-recovery] Recovered delivery e7981a0f-... on discord
13:24:16 [delivery-recovery] Recovered delivery b283b268-... on discord
13:24:27 [delivery-recovery] Recovered delivery c4c1cad2-... on discord
13:24:28 [delivery-recovery] Recovered delivery c653e266-... on discord
13:24:29 [delivery-recovery] Recovered delivery cdc69263-... on discord
13:24:29 [delivery-recovery] Delivery recovery complete: 6 recovered, 0 failed
13:28:36 [health-monitor] [discord:default] health-monitor: restarting (reason: stopped)
13:28:58 [discord] [default] Discord bot probe resolved @openclaw-homelab
13:29:01 [discord] client initialized as 1488191077981618397; awaiting gateway readiness

New message received but reply fails (after recovery):

13:36:46 [discord] tool reply failed: Error: Outbound not configured for channel: discord
13:37:02 [discord] block reply failed: Error: Outbound not configured for channel: discord
13:37:05 [discord] final reply failed: Error: Outbound not configured for channel: discord

Delivery-recovery causes confusion — old replies appear on restart, making it look partially fixed:

13:23:38 [delivery-recovery] Found 6 pending delivery entries — starting recovery
13:24:29 [delivery-recovery] Delivery recovery complete: 6 recovered, 0 failed

Plugin shows as enabled:

@openclaw/discord | discord | openclaw | enabled | ~/.openclaw/npm/node_modules/@openclaw/discord/dist/index.js | 2026.5.19-beta.1

No outbound config exists (not a user-facing setting):

$ openclaw config get outbound
Config path not found: outbound
$ openclaw doctor
(no outbound-related warnings or fixes offered)

Impact and severity:

  • Affected: All Discord users upgrading from ≤2026.4.26 to ≥2026.5.18
  • Severity: Critical — Discord is completely non-functional for outbound (cannot reply to any message)
  • Frequency: 100% reproducible across 2026.5.18 and 2026.5.19-beta.1
  • Affects all 5 Discord accounts (default, coder, writer, researcher, assistant)

Additional information:

  • Last known good version: 2026.4.26
  • First known bad version: 2026.5.18
  • Persists in: 2026.5.19-beta.1
  • Related issue: #83972 (closed as COMPLETED — outbound problem was not actually fixed)
  • The delivery-recovery mechanism replays old failed messages on restart, which can mislead debugging by making it appear that replies are working when only cached old replies are being delivered
  • Discord plugin version matches gateway version (no version mismatch)
  • openclaw doctor and openclaw doctor --fix do not detect or fix this issue

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…

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 [Bug]: Discord outbound delivery broken — "Outbound not configured for channel: discord" (2026.5.18+, persists in 2026.5.19-beta.1) [1 comments, 2 participants]