Bug Fix โ€” Slack April 16, 2026

OpenClaw Slack /focus Not Working: Messages Ignore Runtime Binding

If you're using OpenClaw on Slack and /focus appears to succeed โ€” it confirms the binding, writes to current-conversations.json โ€” but messages in the bound channel still route to the default agent shell instead of your target session, this is issue #67739. The binding is written correctly; Slack inbound routing just isn't reading it. Here's the workaround.

What's Happening

OpenClaw's /focus command is supposed to bind a Slack channel to a specific ACP session โ€” so messages in that channel route to your target agent rather than the default responder. The command writes the binding to ~/.openclaw/bindings/current-conversations.json correctly. You can verify it's there. The problem is on the inbound routing side: when a message arrives in that channel, the Slack inbound router doesn't check the bindings file and falls through to the agent shell anyway.

The binding exists. The router ignores it. Messages never reach the intended session.

Who Gets Hit

This affects anyone running multi-agent Slack setups where different channels are supposed to route to different specialized agents. It's particularly painful for:

Workaround #1 โ€” Use Discord Instead of Slack (If Possible)

Discord's channel binding and thread-based routing don't have this bug. If your use case allows switching channels, Discord is the more reliable multi-agent surface right now. Both sessions_spawn with thread: true and channel-based routing work as expected on Discord.

Workaround #2 โ€” Route via sessions_send Instead of /focus

Rather than relying on channel-level focus binding, have your orchestrator agent route messages explicitly using sessions_send:

// Instead of /focus โ†’ type in channel
// Have your main agent relay the message directly:
sessions_send({
  sessionKey: "your-target-session",
  message: "the task or message content"
})

This bypasses the broken inbound routing entirely. The target session receives the message reliably. Downside: requires an intermediary agent turn to relay, rather than direct channel-to-session binding.

Workaround #3 โ€” Pin to 4.12

If Slack focus binding is central to your workflow, 4.12 predates this regression:

npm install -g openclaw@2026.4.12
openclaw gateway restart

Diagnosing vs Other /focus Issues

This specific bug has a signature: /focus returns success, and if you check ~/.openclaw/bindings/current-conversations.json you'll see the binding entry โ€” but messages still go to the wrong place. If /focus is throwing an error, or if the bindings file isn't being written at all, that's a different issue.

# Check if binding was written
cat ~/.openclaw/bindings/current-conversations.json

If the entry is there but routing is wrong โ†’ issue #67739 (this bug).
If the file is empty or missing โ†’ different root cause, check gateway logs.

Status

Issue #67739 is open as of April 16, 2026. No patch timeline confirmed yet. Watching for 4.15 stable.

TL;DR

Multi-agent Slack setup not behaving?

ClawReady configures multi-agent routing that works reliably โ€” whether you're on Slack, Discord, or both. We know the current bug landscape and design around it.

Book a Free Call โ†’