#my agent always send me a single . when working / thinking

1 messages · Page 1 of 1 (latest)

burnt crater
#

basically the title, when i run a long subagent run like 30 min, it will diasppear and come back and spit 10 dots for me or even during normal work i asked something and it went away to check, and return me with this:

[23/04/2026 17:16] Worbot: Let me check the recent cron job run logs:
[23/04/2026 17:17] Worbot: .
[23/04/2026 17:17] Worbot: The cron job ran successfully (status: "ok", delivered: true). Let me check the actual session logs to see what messages were sent:
[23/04/2026 17:17] Worbot: Let me check the most recent isolated session (the one from today at 14:25, which matches the cron run time):

pliant crownBOT
digital garnetBOT
#

To help others find answers, you can mark your question as solved via Right click solution message -> Apps -> ✅ Mark Solution

burnt crater
#

hello @real ginkgo ?

real ginkgoBOT
#

Yep, I’m here 🦐

Short version: that . is almost certainly not intentional thinking output. It looks like Discord streaming/block-streaming leaking tiny punctuation-only chunks.

If you want, paste these and I’ll tell you the exact fix for your setup:

  • openclaw --version
  • openclaw config get channels.discord.streaming
  • openclaw config get channels.discord.blockStreaming
  • openclaw config get agents.defaults.blockStreamingDefault

If you just want the quickest thing to try right now, turn off Discord streaming/block streaming and use typing instead:

{
  agents: {
#
    defaults: {
      typingMode: "instant",
    },
  },
  channels: {
    discord: {
      streaming: {
        mode: "off",
        block: {
          enabled: false,
        },
      },
    },
  },
}
#

I checked the code path, and there isn’t a built-in “send dot while thinking” behavior.

burnt crater
#

herb@openclaw:~/.openclaw$ openclaw --version
openclaw config get channels.discord.streaming
openclaw config get channels.discord.blockStreaming
openclaw config get agents.defaults.blockStreamingDefault
OpenClaw 2026.4.14 (323493f)

🦞 OpenClaw 2026.4.14 (323493f) — It's not "failing," it's "discovering new ways to configure the same thing wrong."

{
"mode": "partial"
}

🦞 OpenClaw 2026.4.14 (323493f) — Your config is valid, your assumptions are not.

Config path not found: channels.discord.blockStreaming

🦞 OpenClaw 2026.4.14 (323493f) — I'll do the boring stuff while you dramatically stare at the logs like it's cinema.

on

real ginkgoBOT
#

Yep, this makes it much clearer.

I need to correct one thing from my earlier guess: with your actual config, this is not Discord preview-streaming.

You have:

  • channels.discord.streaming.mode = "partial"
  • agents.defaults.blockStreamingDefault = "on"

And per the docs/code, Discord preview streaming is skipped when block streaming is enabled. So in your setup, the . is almost certainly a tiny block-streamed chunk leaking out as its own message.

Also, channels.discord.blockStreaming missing is normal here. The modern key is:

  • channels.discord.streaming.block.enabled

Best fix, Discord only

If you want Discord to use one edited preview message instead of random tiny chunks:

#
openclaw config set channels.discord.streaming.block.enabled false
openclaw config set channels.discord.streaming.mode partial
openclaw gateway restart

If you want no interim Discord messages at all

Use typing only:

openclaw config set channels.discord.streaming.block.enabled false
openclaw config set channels.discord.streaming.mode off
openclaw config set agents.defaults.typingMode instant
openclaw gateway restart

If you want to keep block streaming everywhere else

#

Keep agents.defaults.blockStreamingDefault on, and just override Discord with:

{
  channels: {
    discord: {
      streaming: {
        mode: "partial",
        block: {
          enabled: false,
        },
      },
    },
  },
}
#

One more thing

You’re on 2026.4.14, which is a bit behind. I’d update too, because there have been streaming/preview fixes since then. I wouldn’t blame the whole thing on version alone, but I also wouldn’t stay on .14 while debugging this.

Docs:

If you try the Discord override and it still spits dots, send me:

openclaw config get channels.discord.streaming.block.enabled
openclaw status --all

Glad we caught the real config interaction here.