#Fresh Google API returns "โš ๏ธ Something went wrong while processing your request. Please try again"

1 messages ยท Page 1 of 1 (latest)

edgy oasis
#

In openclaw I get the error. I see in aistudio I see the api being triggered but openclaw just returns the error leaving me unable to use google

hearty sandal
#

Hey @pastel helm

pastel helmBOT
#

Hey Julian โ€” yep, if AI Studio shows traffic, the key is probably being used, but OpenClaw is hiding the providerโ€™s real failure behind the generic Discord-facing error.

First thing: what version are you on?

openclaw --version

Then please grab the real error from logs/status:

openclaw status --all
openclaw models status
openclaw logs --follow

Send the relevant redacted log lines around the failed Google request. Things to check while youโ€™re there:

#
  • Make sure the model ref is using provider google/... for Gemini API / AI Studio, not google-antigravity/... or google-gemini-cli/... unless you intentionally set those up.
  • Make sure the Gateway process actually sees GEMINI_API_KEY or GOOGLE_API_KEY โ€” if itโ€™s running as a service, your shell env may not be the service env.
  • Try a fresh session after changing model/auth, so youโ€™re not stuck on an old strict session model override.

Docs: https://docs.openclaw.ai/providers/google and https://docs.openclaw.ai/help/faq

hollow mapleBOT
#

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

edgy oasis
#

version: ๐Ÿฆž OpenClaw 2026.5.3-1 (2eae30e) - and no, I do not want to upgrade

Logs/status around the error:
12:59:19+00:00 warn fetch-timeout {"subsystem":"fetch-timeout"} {"timeoutMs":10000,"elapsedMs":11667,"operation":"fetchWithTimeout","url":"https://api.telegram.org/bot856663โ€ฆJUwE/getMe"} fetch timeout reached; aborting operation
12:59:32+00:00 warn fetch-timeout {"subsystem":"fetch-timeout"} {"timeoutMs":10000,"elapsedMs":12711,"operation":"fetchWithTimeout","url":"https://api.telegram.org/bot866888โ€ฆwpjo/getMe"} fetch timeout reached; aborting operation
12:59:58+00:00 warn gateway/ws {"subsystem":"gateway/ws"} handshake timeout conn=c2f3f64e-939d-4b94-81aa-74af15f69e77 peer=127.0.0.1:51038->127.0.0.1:18888 remote=127.0.0.1
12:59:59+00:00 info channels/discord {"subsystem":"channels/discord"} discord gateway: Gateway websocket closed: 1000
12:59:59+00:00 warn gateway/ws {"subsystem":"gateway/ws"} {"cause":"handshake-timeout","handshake":"failed","durationMs":39622,"lastFrameType":"req","lastFrameMethod":

pastel helmBOT
#

Thanks โ€” and fair, we can troubleshoot 2026.5.3 without pushing an upgrade.

Those log lines donโ€™t show the Google model failure yet. They show Telegram getMe timeouts and a local Gateway WS handshake timeout. That points more toward the gateway/event loop or channel startup getting wedged/slow, not โ€œbad Gemini keyโ€ directly.

Can you run these and paste the redacted output?

openclaw models status
openclaw infer model run --model google/gemini-3.1-pro-preview --prompt "reply exactly OK" --json
openclaw logs --tail 200

If infer model run succeeds, the Google key/model path is fine and the issue is likely the Discord/session path. If it fails, that output should finally include the real Gemini/API error behind the generic message.

Also: if you donโ€™t actively use Telegram on this gateway, temporarily disable/remove the broken Telegram accounts or tokens and restart the gateway. Repeated api.telegram.org/.../getMe timeouts can make startup/probes noisy and slow enough that other local WS handshakes start timing out too.

edgy oasis
#

Config was last written by a newer OpenClaw (2026.5.7); current version is 2026.5.3-1.
{
"ok": true,
"capability": "model.run",
"transport": "local",
"provider": "google",
"model": "gemini-3.1-pro-preview",
"attempts": [],
"outputs": [
{
"text": "OK",
"mediaUrl": null
}
]
}
error: unknown option '--tail'

pastel helmBOT
#

Good find โ€” the Gemini/API path is healthy. openclaw infer model run ... returning OK means the fresh Google key and google/gemini-3.1-pro-preview are working.

The red flag is this instead:

Config was last written by a newer OpenClaw (2026.5.7); current version is 2026.5.3-1.

Thatโ€™s a split-brain install/version mismatch. If you donโ€™t want to upgrade, the clean fix is not โ€œdebug Googleโ€ โ€” itโ€™s to get the config back to a state written by 2026.5.3, or run the matching 2026.5.7 binary. Newer OpenClaw may have written config/session fields that older 2026.5.3 doesnโ€™t understand, and that can show up as generic processing failures even though direct model inference works.

Also, my bad on --tail โ€” use one of these instead:

openclaw logs --follow
# or, if gateway RPC/log command is unhappy:
tail -n 200 "$(ls -t /tmp/openclaw/openclaw-*.log | head -1)"
#

Next checks Iโ€™d do:

which openclaw
openclaw --version
openclaw gateway status --deep
openclaw config get meta.lastTouchedVersion

If youโ€™re staying on 2026.5.3, look for an openclaw.json backup from before 2026.5.7 touched it and restore that, then restart the gateway. If there isnโ€™t a backup, paste the gateway status --deep + recent logs around one failed Discord message and we can narrow which newer config/session field is tripping 2026.5.3.

edgy oasis
#

I had to downgrade to 2026.5.3 cause newer is unstable. I do not havebackup not written by 2026.5.7 I believe

openclaw@ubuntu-8gb-fsn1-1:~$ which openclaw
openclaw --version
openclaw gateway status --deep
openclaw config get meta.lastTouchedVersion
/home/openclaw/.npm-global/bin/openclaw
OpenClaw 2026.5.3-1 (2eae30e)
Config warnings:

  • plugins.entries.deepclaw-openclaw: plugin deepclaw-openclaw: installed plugin package requires compiled runtime output for TypeScript entry index.ts: expected ./dist/index.js, ./dist/index.mjs, ./dist/index.cjs, index.js, index.mjs, index.cjs
  • plugins.entries.memory-core: plugin disabled (disabled in config) but config is present
    Config was last written by a newer OpenClaw (2026.5.7); current version is 2026.5.3-1.

๐Ÿฆž OpenClaw 2026.5.3-1 (2eae30e) โ€” I've seen your commit messages. We'll work on that together.

โ”‚
โ—‡
Service: systemd (enabled)
File logs: /tmp/openclaw/openclaw-2026-05-09.log
Command: /usr/bin/node /home/openclaw/.npm-global/lib/node_modules/openclaw/dist/index.js gateway --port 18888
Service file: ~/.config/systemd/user/openclaw-gateway.service
Service env: OPENCLAW_GATEWAY_PORT=18888

Config (cli): ~/.openclaw/openclaw.json
Config (service): ~/.openclaw/openclaw.json

Gateway: bind=loopback (127.0.0.1), port=18888 (service args)
Probe target: ws://127.0.0.1:18888
Dashboard: http://127.0.0.1:18888/
Probe note: Loopback-only gateway; only local clients can connect.

Runtime: running (pid 1239520, state active, sub running, last exit 0, reason 0)
Connectivity probe: ok
Capability: admin-capable

Listening: 127.0.0.1:18888
Troubles: run openclaw status
Troubleshooting: https://docs.openclaw.ai/troubleshooting
Config warnings:

  • plugins.entries.deepclaw-openclaw: plugin deepclaw-openclaw: installed plugin package requires compiled runtime output for TypeScript entry index.ts: expected ./dist/index.js, ./dist/index.mjs, ./dist/index.cjs, index.js, index.mjs, index.cjs
  • plugins.entries.memory-core: plugin disabled (disabled in config) but config is present
    Config was last written by a newer OpenClaw (2026.5.7); current version is 2026.5.3-1.

๐Ÿฆž OpenClaw 2026.5.3-1 (2eae30e) โ€” Ah, the fruit tree company! ๐ŸŽ

2026.5.7
openclaw@ubuntu-8gb-fsn1-1:~$

pastel helmBOT
#

Got it. Since youโ€™re intentionally pinned to 2026.5.3, Iโ€™d treat this as a downgrade-recovery problem, not a Google API problem.

Two separate things are showing up:

  1. Gemini works:
provider=google model=gemini-3.1-pro-preview โ†’ OK

So the fresh Google key/model is not the issue.

  1. Your 2026.5.3 gateway is reading config touched by 2026.5.7, plus a broken plugin:
plugins.entries.deepclaw-openclaw: requires compiled runtime output ...
#
meta.lastTouchedVersion = 2026.5.7

I would not just edit meta.lastTouchedVersion first โ€” that only silences the guard. It doesnโ€™t remove any 2026.5.7-era config/plugin state that 2026.5.3 may be choking on.

Try this recovery path:

cp ~/.openclaw/openclaw.json ~/.openclaw/openclaw.json.before-2026-5-3-recovery
openclaw plugins disable deepclaw-openclaw
openclaw plugins doctor

If the plugin command refuses because the config was written by 2026.5.7, thatโ€™s the one case where the downgrade guard explicitly says to use the env var for an intentional recovery action:

#
OPENCLAW_ALLOW_OLDER_BINARY_DESTRUCTIVE_ACTIONS=1 openclaw plugins disable deepclaw-openclaw
openclaw plugins doctor

Then restart the gateway. If restart is blocked for the same reason:

OPENCLAW_ALLOW_OLDER_BINARY_DESTRUCTIVE_ACTIONS=1 openclaw gateway restart

After that, test the Discord thread again. If it still gives the generic error, paste:

openclaw logs --follow
#

right after one failed Discord message.

The memory-core disabled but config is present warning is probably cleanup noise. The broken deepclaw-openclaw package is the one Iโ€™d remove from the blast radius first.

edgy oasis
#

openclaw@ubuntu-8gb-fsn1-1:~$ cp ~/.openclaw/openclaw.json ~/.openclaw/openclaw.json.before-2026-5-3-recovery
openclaw plugins disable deepclaw-openclaw
openclaw plugins doctor
Config was last written by a newer OpenClaw (2026.5.7); current version is 2026.5.3-1.
Config warnings:

  • plugins.entries.deepclaw-openclaw: plugin deepclaw-openclaw: installed plugin package requires compiled runtime output for TypeScript entry index.ts: expected ./dist/index.js, ./dist/index.mjs, ./dist/index.cjs, index.js, index.mjs, index.cjs
  • plugins.entries.memory-core: plugin disabled (disabled in config) but config is present

๐Ÿฆž OpenClaw 2026.5.3-1 (2eae30e) โ€” Shell yeahโ€”I'm here to pinch the toil and leave you the glory.

โ”‚
โ—‡ Config warnings โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
โ”‚ โ”‚
โ”‚ - plugins.entries.deepclaw-openclaw: plugin deepclaw-openclaw: installed plugin package โ”‚
โ”‚ requires compiled runtime output for TypeScript entry index.ts: expected โ”‚
โ”‚ ./dist/index.js, ./dist/index.mjs, ./dist/index.cjs, index.js, index.mjs, index.cjs โ”‚
โ”‚ - plugins.entries.memory-core: plugin disabled (disabled in config) but config is โ”‚
โ”‚ present โ”‚
โ”‚ โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ
Plugin not found: deepclaw-openclaw. Run openclaw plugins list to see installed plugins.
Config was last written by a newer OpenClaw (2026.5.7); current version is 2026.5.3-1.
Config warnings:

  • plugins.entries.deepclaw-openclaw: plugin deepclaw-openclaw: installed plugin package requires compiled runtime output for TypeScript entry index.ts: expected ./dist/index.js, ./dist/index.mjs, ./dist/index.cjs, index.js, index.mjs, index.cjs
  • plugins.entries.memory-core: plugin disabled (disabled in config) but config is present
#

๐Ÿฆž OpenClaw 2026.5.3-1 (2eae30e) โ€” I run on caffeine, JSON5, and the audacity of "it worked on my machine."

โ”‚
โ—‡ Config warnings โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
โ”‚ โ”‚
โ”‚ - plugins.entries.deepclaw-openclaw: plugin deepclaw-openclaw: installed plugin package โ”‚
โ”‚ requires compiled runtime output for TypeScript entry index.ts: expected โ”‚
โ”‚ ./dist/index.js, ./dist/index.mjs, ./dist/index.cjs, index.js, index.mjs, index.cjs โ”‚
โ”‚ - plugins.entries.memory-core: plugin disabled (disabled in config) but config is โ”‚
โ”‚ present โ”‚
โ”‚ โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ
No plugin issues detected.
openclaw@ubuntu-8gb-fsn1-1:~$
openclaw@ubuntu-8gb-fsn1-1:~$ OPENCLAW_ALLOW_OLDER_BINARY_DESTRUCTIVE_ACTIONS=1 openclaw plugins disable deepclaw-openclaw
openclaw plugins doctor
Config was last written by a newer OpenClaw (2026.5.7); current version is 2026.5.3-1.
Config warnings:

  • plugins.entries.deepclaw-openclaw: plugin deepclaw-openclaw: installed plugin package requires compiled runtime output for TypeScript entry index.ts: expected ./dist/index.js, ./dist/index.mjs, ./dist/index.cjs, index.js, index.mjs, index.cjs
  • plugins.entries.memory-core: plugin disabled (disabled in config) but config is present

๐Ÿฆž OpenClaw 2026.5.3-1 (2eae30e) โ€” Self-hosted, self-updating, self-aware (just kidding... unless?).

โ”‚
โ—‡ Config warnings โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
โ”‚ โ”‚
โ”‚ - plugins.entries.deepclaw-openclaw: plugin deepclaw-openclaw: installed plugin package โ”‚
โ”‚ requires compiled runtime output for TypeScript entry index.ts: expected โ”‚
โ”‚ ./dist/index.js, ./dist/index.mjs, ./dist/index.cjs, index.js, index.mjs, index.cjs โ”‚
โ”‚ - plugins.entries.memory-core: plugin disabled (disabled in config) but config is โ”‚
โ”‚ present โ”‚
โ”‚

pastel helmBOT
#

Yep, that explains it: the config entry exists, but the installed plugin registry doesnโ€™t know that plugin id anymore, so plugins disable canโ€™t target it. We need to remove the stale config entry directly.

Since you already made a backup, do this with config patch rather than hand-editing:

cat > /tmp/openclaw-plugin-cleanup.json5 <<'JSON5'
{
  plugins: {
    entries: {
      "deepclaw-openclaw": null
    }
  }
}
JSON5

OPENCLAW_ALLOW_OLDER_BINARY_DESTRUCTIVE_ACTIONS=1 openclaw config patch --file /tmp/openclaw-plugin-cleanup.json5 --dry-run
#
OPENCLAW_ALLOW_OLDER_BINARY_DESTRUCTIVE_ACTIONS=1 openclaw config patch --file /tmp/openclaw-plugin-cleanup.json5
openclaw config validate

If validate passes, restart with the same downgrade-recovery env var:

OPENCLAW_ALLOW_OLDER_BINARY_DESTRUCTIVE_ACTIONS=1 openclaw gateway restart

Then check:

openclaw gateway status --deep
#

You may still see the memory-core disabled but config is present warning, but thatโ€™s much less suspicious. The stale deepclaw-openclaw entry is the one producing a real plugin load warning.

#

Looks like you ran plugins disable again, not the stale-entry cleanup patch. plugins doctor saying โ€œNo plugin issues detectedโ€ is a bit misleading here โ€” the config warning is still real, and plugins disable canโ€™t help if the plugin isnโ€™t in the installed plugin registry.

Run this exact cleanup instead:

cat > /tmp/openclaw-plugin-cleanup.json5 <<'JSON5'
{
  plugins: {
    entries: {
      "deepclaw-openclaw": null
    }
  }
}
JSON5

OPENCLAW_ALLOW_OLDER_BINARY_DESTRUCTIVE_ACTIONS=1 openclaw config patch --file /tmp/openclaw-plugin-cleanup.json5 --dry-run
#
OPENCLAW_ALLOW_OLDER_BINARY_DESTRUCTIVE_ACTIONS=1 openclaw config patch --file /tmp/openclaw-plugin-cleanup.json5
openclaw config validate
OPENCLAW_ALLOW_OLDER_BINARY_DESTRUCTIVE_ACTIONS=1 openclaw gateway restart
openclaw gateway status --deep

After that, the deepclaw-openclaw warning should be gone. If it isnโ€™t, paste:

openclaw config get plugins.entries.deepclaw-openclaw
openclaw config get plugins.entries
edgy oasis
#

openclaw@ubuntu-8gb-fsn1-1:~$ cat > /tmp/openclaw-plugin-cleanup.json5 <<'JSON5'
{
plugins: {
entries: {
"deepclaw-openclaw": null
}
}
}
JSON5

OPENCLAW_ALLOW_OLDER_BINARY_DESTRUCTIVE_ACTIONS=1 openclaw config patch --file /tmp/openclaw-plugin-cleanup.json5 --dry-run
Config warnings:

  • plugins.entries.deepclaw-openclaw: plugin deepclaw-openclaw: installed plugin package requires compiled runtime output for TypeScript entry index.ts: expected ./dist/index.js, ./dist/index.mjs, ./dist/index.cjs, index.js, index.mjs, index.cjs
  • plugins.entries.memory-core: plugin disabled (disabled in config) but config is present
    Config was last written by a newer OpenClaw (2026.5.7); current version is 2026.5.3-1.

๐Ÿฆž OpenClaw 2026.5.3-1 (2eae30e) โ€” Shell yeahโ€”I'm here to pinch the toil and leave you the glory.

โ”‚
โ—‡ Config warnings โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
โ”‚ โ”‚
โ”‚ - plugins.entries.deepclaw-openclaw: plugin deepclaw-openclaw: installed plugin package โ”‚
โ”‚ requires compiled runtime output for TypeScript entry index.ts: expected โ”‚
โ”‚ ./dist/index.js, ./dist/index.mjs, ./dist/index.cjs, index.js, index.mjs, index.cjs โ”‚
โ”‚ - plugins.entries.memory-core: plugin disabled (disabled in config) but config is โ”‚
โ”‚ present โ”‚
โ”‚ โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ
Error: Dry run failed: config schema validation failed.

    • channels.telegram.accounts.default.dmPolicy: invalid config: must have required property 'dmPolicy'
    • channels.telegram.accounts.default.groupPolicy: invalid config: must have required property 'groupPolicy'
    • channels.telegram.accounts.archimedes.dmPolicy: invalid config: must have required property 'dmPolicy'
    • channels.telegram.accounts.archimedes.groupPolicy: invalid config: must have required property 'groupPolicy'
    • channels.telegram.accounts.hemingway.dmPolicy: invalid config: must have required property 'dmPolicy'
    • channels.telegram.accounts.hemingway.groupPolicy: invalid config: must have required property 'groupPolicy'
    • channels.telegram.accounts.iris.dmPolicy: invalid config: must have required property 'dmPolicy'
    • channels.telegram.accounts.iris.groupPolicy: invalid config: must have required property 'groupPolicy'
    • channels.telegram.accounts.crawly.dmPolicy: invalid config: must have required property 'dmPolicy'
    • channels.telegram.accounts.crawly.groupPolicy: invalid config: must have required property 'groupPolicy'
      openclaw@ubuntu-8gb-fsn1-1:~$
pastel helmBOT
#

Aha โ€” now we found the actual downgrade incompatibility.

config patch --dry-run validates the whole config, and 2026.5.3 requires every Telegram account to explicitly have:

  • dmPolicy
  • groupPolicy

So the stale plugin cleanup is blocked until the Telegram account shape is made valid for 2026.5.3.

Use a combined patch that fixes Telegram account policies and removes the stale plugin entry in one go:

cat > /tmp/openclaw-2026-5-3-recovery.json5 <<'JSON5'
{
  channels: {
    telegram: {
#
      accounts: {
        default: { dmPolicy: "pairing", groupPolicy: "allowlist" },
        archimedes: { dmPolicy: "pairing", groupPolicy: "allowlist" },
        hemingway: { dmPolicy: "pairing", groupPolicy: "allowlist" },
        iris: { dmPolicy: "pairing", groupPolicy: "allowlist" },
        crawly: { dmPolicy: "pairing", groupPolicy: "allowlist" }
      }
    }
  },
  plugins: {
    entries: {
      "deepclaw-openclaw": null
    }
  }
}
#
JSON5

OPENCLAW_ALLOW_OLDER_BINARY_DESTRUCTIVE_ACTIONS=1 openclaw config patch --file /tmp/openclaw-2026-5-3-recovery.json5 --dry-run
OPENCLAW_ALLOW_OLDER_BINARY_DESTRUCTIVE_ACTIONS=1 openclaw config patch --file /tmp/openclaw-2026-5-3-recovery.json5
openclaw config validate
OPENCLAW_ALLOW_OLDER_BINARY_DESTRUCTIVE_ACTIONS=1 openclaw gateway restart
openclaw gateway status --deep

I picked conservative policies: DMs use pairing, groups stay allowlisted. The patch should merge into each account without removing tokens or other settings.

If you donโ€™t use Telegram at all on this box, we can instead disable Telegram, but the above is the safer first recovery step because it preserves existing setup.

edgy oasis
#

openclaw@ubuntu-8gb-fsn1-1:~$ cat > /tmp/openclaw-plugin-cleanup.json5 <<'JSON5'
{
plugins: {
entries: {
"deepclaw-openclaw": null
}
}
}
JSON5

OPENCLAW_ALLOW_OLDER_BINARY_DESTRUCTIVE_ACTIONS=1 openclaw config patch --file /tmp/openclaw-plugin-cleanup.json5 --dry-run
OPENCLAW_ALLOW_OLDER_BINARY_DESTRUCTIVE_ACTIONS=1 openclaw config patch --file /tmp/openclaw-plugin-cleanup.json5
openclaw config validate
Config warnings:

  • plugins.entries.deepclaw-openclaw: plugin deepclaw-openclaw: installed plugin package requires compiled runtime output for TypeScript entry index.ts: expected ./dist/index.js, ./dist/index.mjs, ./dist/index.cjs, index.js, index.mjs, index.cjs
  • plugins.entries.memory-core: plugin disabled (disabled in config) but config is present
    Config was last written by a newer OpenClaw (2026.5.7); current version is 2026.5.3-1.

๐Ÿฆž OpenClaw 2026.5.3-1 (2eae30e) โ€” Claws out, commit inโ€”let's ship something mildly responsible.

โ”‚
โ—‡ Config warnings โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
โ”‚ โ”‚
โ”‚ - plugins.entries.deepclaw-openclaw: plugin deepclaw-openclaw: installed plugin package โ”‚
โ”‚ requires compiled runtime output for TypeScript entry index.ts: expected โ”‚
โ”‚ ./dist/index.js, ./dist/index.mjs, ./dist/index.cjs, index.js, index.mjs, index.cjs โ”‚
โ”‚ - plugins.entries.memory-core: plugin disabled (disabled in config) but config is โ”‚
โ”‚ present โ”‚
โ”‚ โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€

#

โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ
Error: Dry run failed: config schema validation failed.

    • channels.telegram.accounts.default.dmPolicy: invalid config: must have required property 'dmPolicy'
    • channels.telegram.accounts.default.groupPolicy: invalid config: must have required property 'groupPolicy'
    • channels.telegram.accounts.archimedes.dmPolicy: invalid config: must have required property 'dmPolicy'
    • channels.telegram.accounts.archimedes.groupPolicy: invalid config: must have required property 'groupPolicy'
    • channels.telegram.accounts.hemingway.dmPolicy: invalid config: must have required property 'dmPolicy'
    • channels.telegram.accounts.hemingway.groupPolicy: invalid config: must have required property 'groupPolicy'
    • channels.telegram.accounts.iris.dmPolicy: invalid config: must have required property 'dmPolicy'
    • channels.telegram.accounts.iris.groupPolicy: invalid config: must have required property 'groupPolicy'
    • channels.telegram.accounts.crawly.dmPolicy: invalid config: must have required property 'dmPolicy'
    • channels.telegram.accounts.crawly.groupPolicy: invalid config: must have required property 'groupPolicy'
      Config warnings:
  • plugins.entries.deepclaw-openclaw: plugin deepclaw-openclaw: installed plugin package requires compiled runtime output for TypeScript entry index.ts: expected ./dist/index.js, ./dist/index.mjs, ./dist/index.cjs, index.js, index.mjs, index.cjs
  • plugins.entries.memory-core: plugin disabled (disabled in config) but config is present
    Config was last written by a newer OpenClaw (2026.5.7); current version is 2026.5.3-1.

๐Ÿฆž OpenClaw 2026.5.3-1 (2eae30e) โ€” No $999 stand required.

โ”‚
โ—‡ Config warnings โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
โ”‚ โ”‚
โ”‚ - plugins.entries.deepclaw-openclaw: plugin deepclaw-openclaw: installed plugin package โ”‚
โ”‚ requires compiled runtime output for TypeScript entry index.ts: expected โ”‚
โ”‚ ./dist/index.js, ./dist/index.mjs, ./dist/index.cjs, index.js, index.mjs, index.cjs โ”‚
โ”‚ - plugins.entries.memory-core: plugin disabled (disabled in config) but config is โ”‚
โ”‚ present โ”‚
โ”‚ โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ
Config warnings:

  • plugins.entries.deepclaw-openclaw: plugin deepclaw-openclaw: installed plugin package requires compiled runtime output for TypeScript entry index.ts: expected ./dist/index.js, ./dist/index.mjs,
pastel helmBOT
#

Thatโ€™s still the plugin-only patch, so itโ€™s hitting the same validation wall. The command output is truncated, but the important bit from the previous run was the Telegram schema failure.

Run the combined recovery patch from my last message โ€” it adds the missing Telegram account dmPolicy/groupPolicy fields and removes deepclaw-openclaw in one validated write:

cat > /tmp/openclaw-2026-5-3-recovery.json5 <<'JSON5'
{
  channels: {
    telegram: {
      accounts: {
        default: { dmPolicy: "pairing", groupPolicy: "allowlist" },
        archimedes: { dmPolicy: "pairing", groupPolicy: "allowlist" },
        hemingway: { dmPolicy: "pairing", groupPolicy: "allowlist" },
        iris: { dmPolicy: "pairing", groupPolicy: "allowlist" },
        crawly: { dmPolicy: "pairing", groupPolicy: "allowlist" }
      }
#
    }
  },
  plugins: {
    entries: {
      "deepclaw-openclaw": null
    }
  }
}
JSON5

OPENCLAW_ALLOW_OLDER_BINARY_DESTRUCTIVE_ACTIONS=1 openclaw config patch --file /tmp/openclaw-2026-5-3-recovery.json5 --dry-run
OPENCLAW_ALLOW_OLDER_BINARY_DESTRUCTIVE_ACTIONS=1 openclaw config patch --file /tmp/openclaw-2026-5-3-recovery.json5
openclaw config validate

If that dry-run still fails, paste the lines after Error: Dry run failed: โ€” those are the next blockers.

#

That failure is still from /tmp/openclaw-plugin-cleanup.json5 โ€” it only removes the plugin entry, so validation still fails on Telegram before it can write anything.

Please run this and sanity-check the filename says recovery, not plugin-cleanup:

cat > /tmp/openclaw-2026-5-3-recovery.json5 <<'JSON5'
{
  channels: {
    telegram: {
      accounts: {
        default: { dmPolicy: "pairing", groupPolicy: "allowlist" },
        archimedes: { dmPolicy: "pairing", groupPolicy: "allowlist" },
        hemingway: { dmPolicy: "pairing", groupPolicy: "allowlist" },
        iris: { dmPolicy: "pairing", groupPolicy: "allowlist" },
        crawly: { dmPolicy: "pairing", groupPolicy: "allowlist" }
      }
#
    }
  },
  plugins: {
    entries: {
      "deepclaw-openclaw": null
    }
  }
}
JSON5

cat /tmp/openclaw-2026-5-3-recovery.json5
OPENCLAW_ALLOW_OLDER_BINARY_DESTRUCTIVE_ACTIONS=1 openclaw config patch --file /tmp/openclaw-2026-5-3-recovery.json5 --dry-run

If that dry-run still reports the same missing Telegram fields, donโ€™t run the real patch yet โ€” paste the cat ...recovery... output too, because then weโ€™re dealing with a patch/merge quirk rather than the old plugin-only patch.

edgy oasis
#

Dry run successful: 11 update(s) validated against ~/.openclaw/openclaw.json.

pastel helmBOT
#

Nice, thatโ€™s the right patch now. Run the real write + validate + restart:

OPENCLAW_ALLOW_OLDER_BINARY_DESTRUCTIVE_ACTIONS=1 openclaw config patch --file /tmp/openclaw-2026-5-3-recovery.json5
openclaw config validate
OPENCLAW_ALLOW_OLDER_BINARY_DESTRUCTIVE_ACTIONS=1 openclaw gateway restart
openclaw gateway status --deep

After restart, test one Discord message again. If it still errors, grab the fresh failure with:

openclaw logs --follow

But weโ€™ve cleared the first real 2026.5.7 โ†’ 2026.5.3 config blocker. ๐Ÿฆž

edgy oasis
#

openclaw@ubuntu-8gb-fsn1-1:~$ OPENCLAW_ALLOW_OLDER_BINARY_DESTRUCTIVE_ACTIONS=1 openclaw config patch --file /tmp/openclaw-2026-5-3-recovery.json5
openclaw config validate
OPENCLAW_ALLOW_OLDER_BINARY_DESTRUCTIVE_ACTIONS=1 openclaw gateway restart
openclaw gateway status --deep
Config warnings:

  • plugins.entries.deepclaw-openclaw: plugin deepclaw-openclaw: installed plugin package requires compiled runtime output for TypeScript entry index.ts: expected ./dist/index.js, ./dist/index.mjs, ./dist/index.cjs, index.js, index.mjs, index.cjs
  • plugins.entries.memory-core: plugin disabled (disabled in config) but config is present

๐Ÿฆž OpenClaw 2026.5.3-1 (2eae30e) โ€” I'm basically a Swiss Army knife, but with more opinions and fewer sharp edges.

โ”‚
โ—‡ Config warnings โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
โ”‚ โ”‚
โ”‚ - plugins.entries.deepclaw-openclaw: plugin deepclaw-openclaw: installed plugin package โ”‚
โ”‚ requires compiled runtime output for TypeScript entry index.ts: expected โ”‚
โ”‚ ./dist/index.js, ./dist/index.mjs, ./dist/index.cjs, index.js, index.mjs, index.cjs โ”‚
โ”‚ - plugins.entries.memory-core: plugin disabled (disabled in config) but config is โ”‚
โ”‚ present โ”‚
โ”‚ โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ
Config warnings:

  • plugins.entries.deepclaw-openclaw: plugin deepclaw-openclaw: installed plugin package requires compiled runtime output for TypeScript entry index.ts: expected ./dist/index.js, ./dist/index.mjs, ./dist/index.cjs, index.js, index.mjs, index.cjs
  • plugins.entries.memory-core: plugin disabled (disabled in config) but config is present
    Config overwrite: /home/openclaw/.openclaw/openclaw.json (sha256 5c948dc375baa38bbb70e39d415fe1e350acf8d855e1c712adb51fc77a918cb0 -> 0625f795fe0ae38b71ef79de69759e557faa0714618309febf2fb9cdb95f92df, backup=/home/openclaw/.openclaw/openclaw.json.bak, changedPaths=27)
    Config warnings:
  • plugins.entries.deepclaw-openclaw: plugin deepclaw-openclaw: installed plugin package requires compiled runtime output for TypeScript entry index.ts: expected ./dist/index.js, ./dist/index.mjs, ./dist/index.cjs, index.js, index.mjs, index.cjs
  • plugins.entries.memory-core: plugin disabled (disabled in config) but config is present
    Applied 11 config update(s). Restart the gateway to apply.
    Config warnings:
  • plugins.entries.deepclaw-openclaw: plugin deepclaw-openclaw: installed plugin package requires compiled runtime output for TypeScript entry index.ts: expected ./dist/index.js, ./dist/index.mjs, ./dist/index.cjs, index.js, index.mjs, index.cjs
  • plugins.entries.memory-core: plugin disabled (disabled in config) but config is present
#

๐Ÿฆž OpenClaw 2026.5.3-1 (2eae30e) โ€” Your second brain, except this one actually remembers where you left things.

Config valid: ~/.openclaw/openclaw.json
Config warnings:

  • plugins.entries.deepclaw-openclaw: plugin deepclaw-openclaw: installed plugin package requires compiled runtime output for TypeScript entry index.ts: expected ./dist/index.js, ./dist/index.mjs, ./dist/index.cjs, index.js, index.mjs, index.cjs
  • plugins.entries.memory-core: plugin disabled (disabled in config) but config is present

๐Ÿฆž OpenClaw 2026.5.3-1 (2eae30e) โ€” I've survived more breaking changes than your last three relationships.

โ”‚
โ—‡ Config warnings โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
โ”‚ โ”‚
โ”‚ - plugins.entries.deepclaw-openclaw: plugin deepclaw-openclaw: installed plugin package โ”‚
โ”‚ requires compiled runtime output for TypeScript entry index.ts: expected โ”‚
โ”‚ ./dist/index.js, ./dist/index.mjs, ./dist/index.cjs, index.js, index.mjs, index.cjs โ”‚
โ”‚ - plugins.entries.memory-core: plugin disabled (disabled in config) but config is โ”‚
โ”‚ present โ”‚
โ”‚ โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ
Restarted systemd service: openclaw-gateway.service
Config warnings:

  • plugins.entries.deepclaw-openclaw: plugin deepclaw-openclaw: installed plugin package requires compiled runtime output for TypeScript entry index.ts: expected ./dist/index.js, ./dist/index.mjs, ./dist/index.cjs, index.js, index.mjs, index.cjs
  • plugins.entries.memory-core: plugin disabled (disabled in config) but config is present

๐Ÿฆž OpenClaw 2026.5.3-1 (2eae30e) โ€” If you can describe it, I can probably automate itโ€”or at least make it funnier.

โ”‚
โ—‡
Service: systemd (enabled)
File logs: /tmp/openclaw/openclaw-2026-05-09.log
Command: /usr/bin/node /home/openclaw/.npm-global/lib/node_modules/openclaw/dist/index.js gateway --port 18888
Service file: ~/.config/systemd/user/openclaw-gateway.service
Service env: OPENCLAW_GATEWAY_PORT=18888

Config (cli): ~/.openclaw/openclaw.json
Config (service): ~/.openclaw/openclaw.json

Gateway: bind=loopback (127.0.0.1), port=18888 (service args)
Probe target: ws://127.0.0.1:18888
Dashboard: http://127.0.0.1:18888/
Probe note: Loopback-only gateway; only local clients can connect.

Runtime: running (pid 1260504, state active, sub running, last exit 0, reason 0)
Connectivity probe: ok
Capability: admin-capable

Listening: 127.0.0.1:18888
Troubles: run openclaw status
Troubleshooting: https://docs.openclaw.ai/troubleshooting
openclaw@ubuntu-8gb-fsn1-1:~$

pastel helmBOT
#

That output mostly shows the patch write succeeded:

Applied 11 config update(s). Restart the gateway to apply.

The deepclaw-openclaw warning may just be from the pre-write config load, because the CLI prints warnings before applying the patch. Letโ€™s verify current state now:

openclaw config get plugins.entries.deepclaw-openclaw
openclaw config validate
OPENCLAW_ALLOW_OLDER_BINARY_DESTRUCTIVE_ACTIONS=1 openclaw gateway restart
openclaw gateway status --deep

Expected: the first command should be empty/null/not found, and validate should no longer complain about the Telegram account dmPolicy/groupPolicy fields.

#

If plugins.entries.deepclaw-openclaw still exists after the successful patch, paste that output โ€” then the delete didnโ€™t take and weโ€™ll remove it another way.

#

Good news: the config is valid and the gateway is healthy now. The remaining issue is narrower: deepclaw-openclaw is still being discovered somewhere, but we donโ€™t yet know whether itโ€™s still in plugins.entries or coming from the managed plugin install/index.

Please run these exactly:

openclaw config get plugins.entries.deepclaw-openclaw
openclaw config get plugins.entries --json | grep -n "deepclaw\|memory-core" -C 3
openclaw plugins list --verbose | grep -n "deepclaw\|memory-core" -C 3
find ~/.openclaw -iname '*deepclaw*' -maxdepth 6 -print

If the first command still prints a value, the null patch didnโ€™t delete the key the way we expected. If itโ€™s empty/not found but find shows a managed plugin folder, weโ€™ll remove/uninstall that stale install instead.

Also: try one Discord message now. Since infer model run worked and the gateway restarted cleanly, this may already be functional despite the plugin warning.

edgy oasis
#

openclaw@ubuntu-8gb-fsn1-1:~$ openclaw config get plugins.entries.deepclaw-openclaw
openclaw config get plugins.entries --json | grep -n "deepclaw|memory-core" -C 3
openclaw plugins list --verbose | grep -n "deepclaw|memory-core" -C 3
find ~/.openclaw -iname 'deepclaw' -maxdepth 6 -print
Config warnings:

  • plugins.entries.deepclaw-openclaw: plugin deepclaw-openclaw: installed plugin package requires compiled runtime output for TypeScript entry index.ts: expected ./dist/index.js, ./dist/index.mjs, ./dist/index.cjs, index.js, index.mjs, index.cjs
  • plugins.entries.memory-core: plugin disabled (disabled in config) but config is present

๐Ÿฆž OpenClaw 2026.5.3-1 (2eae30e) โ€” Ah, the fruit tree company! ๐ŸŽ

Config path not found: plugins.entries.deepclaw-openclaw
38- "enabled": true,
39- "config": {}
40- },
41: "memory-core": {
42- "enabled": false,
43- "config": {
44- "dreaming": {
1-โ”‚
2-โ—‡ Config warnings โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
3-โ”‚ โ”‚
4:โ”‚ - plugins.entries.deepclaw-openclaw: plugin deepclaw-openclaw: โ”‚
5-โ”‚ installed plugin package requires compiled runtime output for โ”‚
6-โ”‚ TypeScript entry index.ts: expected ./dist/index.js, โ”‚
7-โ”‚ ./dist/index.mjs, ./dist/index.cjs, index.js, index.mjs, index.cjs โ”‚
8:โ”‚ - plugins.entries.memory-core: plugin disabled (disabled in config) โ”‚
9-โ”‚ but config is present โ”‚
10-โ”‚ โ”‚
11-โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ

289- origin: bundled
290- version: 2026.5.3
291-
292:@openclaw/memory-core (memory-core) disabled
293- format: openclaw
294: source: ~/.npm-global/lib/node_modules/openclaw/dist/extensions/memory-core/index.js
295- origin: bundled
296- version: 2026.5.3
297-
find: warning: you have specified the global option -maxdepth after the argument -iname, but global options are not positional, i.e., -maxdepth affects tests specified before it as well as those specified after it. Please specify global options before other arguments.
/home/openclaw/.openclaw/extensions/deepclaw-openclaw
openclaw@ubuntu-8gb-fsn1-1:~$

pastel helmBOT
#

Perfect, that pins it down.

plugins.entries.deepclaw-openclaw is gone from config now. The warning is coming from the managed plugin folder still sitting here:

/home/openclaw/.openclaw/extensions/deepclaw-openclaw

Quarantine it instead of deleting it:

mkdir -p ~/.openclaw/extensions.disabled
mv ~/.openclaw/extensions/deepclaw-openclaw ~/.openclaw/extensions.disabled/deepclaw-openclaw.$(date +%Y%m%d-%H%M%S)
OPENCLAW_ALLOW_OLDER_BINARY_DESTRUCTIVE_ACTIONS=1 openclaw gateway restart
openclaw gateway status --deep
#

After that, the deepclaw-openclaw warning should disappear. The remaining memory-core disabled but config is present warning is cosmetic unless youโ€™re trying to use memory.

Then try the original Discord/Google request again. If it still returns the generic error, the next useful artifact is the fresh openclaw logs --follow output immediately after that failed message.

edgy oasis
#

openclaw@ubuntu-8gb-fsn1-1:~$ openclaw config get plugins.entries.deepclaw-openclaw
openclaw config get plugins.entries --json | grep -n "deepclaw|memory-core" -C 3
openclaw plugins list --verbose | grep -n "deepclaw|memory-core" -C 3
find ~/.openclaw -iname 'deepclaw' -maxdepth 6 -print
Config warnings:

  • plugins.entries.deepclaw-openclaw: plugin deepclaw-openclaw: installed plugin package requires compiled runtime output for TypeScript entry index.ts: expected ./dist/index.js, ./dist/index.mjs, ./dist/index.cjs, index.js, index.mjs, index.cjs
  • plugins.entries.memory-core: plugin disabled (disabled in config) but config is present

๐Ÿฆž OpenClaw 2026.5.3-1 (2eae30e) โ€” Ah, the fruit tree company! ๐ŸŽ

Config path not found: plugins.entries.deepclaw-openclaw
38- "enabled": true,
39- "config": {}
40- },
41: "memory-core": {
42- "enabled": false,
43- "config": {
44- "dreaming": {
1-โ”‚
2-โ—‡ Config warnings โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
3-โ”‚ โ”‚
4:โ”‚ - plugins.entries.deepclaw-openclaw: plugin deepclaw-openclaw: โ”‚
5-โ”‚ installed plugin package requires compiled runtime output for โ”‚
6-โ”‚ TypeScript entry index.ts: expected ./dist/index.js, โ”‚
7-โ”‚ ./dist/index.mjs, ./dist/index.cjs, index.js, index.mjs, index.cjs โ”‚
8:โ”‚ - plugins.entries.memory-core: plugin disabled (disabled in config) โ”‚
9-โ”‚ but config is present โ”‚
10-โ”‚ โ”‚
11-โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ

289- origin: bundled
290- version: 2026.5.3
291-
292:@openclaw/memory-core (memory-core) disabled
293- format: openclaw
294: source: ~/.npm-global/lib/node_modules/openclaw/dist/extensions/memory-core/index.js
295- origin: bundled
296- version: 2026.5.3
297-
find: warning: you have specified the global option -maxdepth after the argument -iname, but global options are not positional, i.e., -maxdepth affects tests specified before it as well as those specified after it. Please specify global options before other arguments.
/home/openclaw/.openclaw/extensions/deepclaw-openclaw
openclaw@ubuntu-8gb-fsn1-1:~$ mkdir -p ~/.openclaw/extensions.disabled
mv ~/.openclaw/extensions/deepclaw-openclaw ~/.openclaw/extensions.disabled/deepclaw-openclaw.$(date +%Y%m%d-%H%M%S)
OPENCLAW_ALLOW_OLDER_BINARY_DESTRUCTIVE_ACTIONS=1 openclaw gateway restart
openclaw gateway status --deep
Config warnings:

  • plugins.entries.deepclaw-openclaw: plugin deepclaw-openclaw: installed plugin package requires compiled runtime output for TypeScript entry index.ts: expected ./dist/index.js, ./dist/index.mjs, ./dist/index.cjs, index.js, index.mjs, index.cjs
  • plugins.entries.memory-core: plugin disabled (disabled in config) but config is present

๐Ÿฆž OpenClaw 2026.5.3-1 (2eae30e) โ€” Self-hosted, self-updating, self-aware (just kidding... unless?).

โ”‚

#

โ—‡ Config warnings โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
โ”‚ โ”‚
โ”‚ - plugins.entries.deepclaw-openclaw: plugin deepclaw-openclaw: installed plugin package โ”‚
โ”‚ requires compiled runtime output for TypeScript entry index.ts: expected โ”‚
โ”‚ ./dist/index.js, ./dist/index.mjs, ./dist/index.cjs, index.js, index.mjs, index.cjs โ”‚
โ”‚ - plugins.entries.memory-core: plugin disabled (disabled in config) but config is โ”‚
โ”‚ present โ”‚
โ”‚ โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ
Restarted systemd service: openclaw-gateway.service
Config warnings:

  • plugins.entries.deepclaw-openclaw: plugin deepclaw-openclaw: installed plugin package requires compiled runtime output for TypeScript entry index.ts: expected ./dist/index.js, ./dist/index.mjs, ./dist/index.cjs, index.js, index.mjs, index.cjs
  • plugins.entries.memory-core: plugin disabled (disabled in config) but config is present

๐Ÿฆž OpenClaw 2026.5.3-1 (2eae30e) โ€” I'm not magicโ€”I'm just extremely persistent with retries and coping strategies.

โ”‚
โ—‡
Service: systemd (enabled)
File logs: /tmp/openclaw/openclaw-2026-05-09.log
Command: /usr/bin/node /home/openclaw/.npm-global/lib/node_modules/openclaw/dist/index.js gateway --port 18888
Service file: ~/.config/systemd/user/openclaw-gateway.service
Service env: OPENCLAW_GATEWAY_PORT=18888

Config (cli): ~/.openclaw/openclaw.json
Config (service): ~/.openclaw/openclaw.json

Gateway: bind=loopback (127.0.0.1), port=18888 (service args)
Probe target: ws://127.0.0.1:18888
Dashboard: http://127.0.0.1:18888/
Probe note: Loopback-only gateway; only local clients can connect.

Runtime: running (pid 1262988, state active, sub running, last exit 0, reason 0)
Warm-up: launch agents can take a few seconds. Try again shortly.
Connectivity probe: failed
Probe target: ws://127.0.0.1:18888
timeout
Capability: unknown

Port 18888 is already in use.

  • pid 1262988 openclaw: /usr/bin/node /home/openclaw/.npm-global/lib/node_modules/openclaw/dist/index.js gateway --port 18888 (127.0.0.1:18888)
  • Gateway already running locally. Stop it (openclaw gateway stop) or use a different port.
    Listening: 127.0.0.1:18888
    Troubles: run openclaw status
    Troubleshooting: https://docs.openclaw.ai/troubleshooting
    openclaw@ubuntu-8gb-fsn1-1:~$
pastel helmBOT
#

That warning in the restart output may still be from the CLI startup before the move, but thereโ€™s one possible gotcha: putting it under ~/.openclaw/extensions.disabled still leaves it inside ~/.openclaw. If 2026.5.3 scans more broadly than expected, it may still find it.

Move the quarantine completely outside ~/.openclaw, then verify:

mkdir -p ~/openclaw-disabled-extensions
find ~/.openclaw -maxdepth 6 -iname '*deepclaw*' -print
mv ~/.openclaw/extensions.disabled/deepclaw-openclaw.* ~/openclaw-disabled-extensions/ 2>/dev/null || true
find ~/.openclaw -maxdepth 6 -iname '*deepclaw*' -print
OPENCLAW_ALLOW_OLDER_BINARY_DESTRUCTIVE_ACTIONS=1 openclaw gateway restart
openclaw gateway status --deep

If the second find ~/.openclaw ... prints nothing but the warning still appears, then itโ€™s probably coming from a persisted plugin index/cache rather than the config or folder. In that case run:

#
find ~/.openclaw -maxdepth 6 \( -iname '*plugin*' -o -iname '*extension*' \) -print | sort

and paste the relevant paths โ€” weโ€™ll quarantine the stale index entry next.

#

The Port 18888 is already in use part is okay here โ€” itโ€™s the gateway process itself. The important bit is:

Warm-up: launch agents can take a few seconds. Try again shortly.
Connectivity probe: failed ... timeout

So first give it ~20โ€“30 seconds and rerun:

openclaw gateway status --deep

If it still times out, grab the startup failure:

#
tail -n 200 /tmp/openclaw/openclaw-2026-05-09.log

Also, I donโ€™t see the โ€œmove outside ~/.openclawโ€ commands in your paste yet. Please run these too, because keeping the quarantined plugin under ~/.openclaw/extensions.disabled may still be scanned by 2026.5.3:

mkdir -p ~/openclaw-disabled-extensions
find ~/.openclaw -maxdepth 6 -iname '*deepclaw*' -print
mv ~/.openclaw/extensions.disabled/deepclaw-openclaw.* ~/openclaw-disabled-extensions/ 2>/dev/null || true
find ~/.openclaw -maxdepth 6 -iname '*deepclaw*' -print
OPENCLAW_ALLOW_OLDER_BINARY_DESTRUCTIVE_ACTIONS=1 openclaw gateway restart
sleep 20
openclaw gateway status --deep

Expected: the second find ~/.openclaw ... prints nothing. If it still prints a deepclaw path, paste that path.

edgy oasis
#

It is not relevant for now - let us get back to the "โš ๏ธ Something went wrong while processing your request. Please try again, or use /new to start a fresh session." message. it is mainly happening when I choose google models from the api. what could the reason for this be?

pastel helmBOT
#

Yep โ€” zooming back in: because this succeeds:

openclaw infer model run --model google/gemini-3.1-pro-preview --prompt "reply exactly OK" --json
โ†’ OK

โ€ฆthe Google API key and basic model endpoint are fine.

That generic message usually means the full agent run failed before OpenClaw could produce a safe public error. In 2026.5.3, group/channel replies intentionally collapse a lot of raw provider/runtime errors into:

โš ๏ธ Something went wrong while processing your request. Please try again, or use /new to start a fresh session.

Most likely causes when it mainly happens after switching to google/...:

#
  • Old session history is incompatible with Googleโ€™s stricter turn/tool rules. This is the big one. A session that worked on another provider can contain tool-use / tool-result / reasoning history Google rejects. Try /new, then select the Google model immediately and test a simple prompt.
  • Google handles the full OpenClaw tool schema differently than the tiny infer model run probe. The probe is plain text; the Discord agent run includes system prompt, history, tools, maybe images/files, etc.
  • Session model selection is strict. If you chose Google with /model, OpenClaw wonโ€™t silently fall through to your normal fallback chain when that selected model fails.
  • Actual provider error is hidden in the channel. Missing key/rate limit/billing usually gets a clearer message, so this is more likely malformed/unsupported request, empty/incomplete turn, or history mismatch.

Fastest isolation test:

/new
/model google/gemini-3.1-pro-preview
say exactly OK

If that works, the issue is the existing session history. If it fails even in a new session, turn on temporary detail and retry:

#
/verbose full
/model google/gemini-3.1-pro-preview
say exactly OK

Then immediately check logs:

openclaw logs --follow

or:

tail -n 200 /tmp/openclaw/openclaw-2026-05-09.log
#

Paste the fresh lines around the failed Google run. The generic Discord message is the wrapper; the log should show the actual provider/runtime reason.

edgy oasis
#

update your latest prompts to use google/gemma-4-31b-it:free insteda of gemini-3.1

pastel helmBOT
#

Yep โ€” swap the test model in the commands to:

google/gemma-4-31b-it:free

So the isolation test becomes:

/new
/model google/gemma-4-31b-it:free
say exactly OK

And the direct CLI probe:

#
openclaw infer model run --model google/gemma-4-31b-it:free --prompt "reply exactly OK" --json

Small caveat: if OpenClaw says the model is not allowed, add it to the allowlist first:

openclaw config set agents.defaults.models '{"google/gemma-4-31b-it:free":{}}' --strict-json --merge

Then retry /model google/gemma-4-31b-it:free.

edgy oasis
#

openclaw@ubuntu-8gb-fsn1-1:~$ openclaw infer model run --model google/gemma-4-31b-it:free --prompt "reply exactly OK" --json
Error: No text output returned for provider "google" model "gemma-4-31b-it:free".
openclaw@ubuntu-8gb-fsn1-1:~$ openclaw config set agents.defaults.models '{"google/gemma-4-31b-it:free":{}}' --strict-json --merge
Config warnings:

  • plugins.entries.deepclaw-openclaw: plugin deepclaw-openclaw: installed plugin package requires compiled runtime output for TypeScript entry index.ts: expected ./dist/index.js, ./dist/index.mjs, ./dist/index.cjs, index.js, index.mjs, index.cjs
  • plugins.entries.memory-core: plugin disabled (disabled in config) but config is present

๐Ÿฆž OpenClaw 2026.5.3-1 (2eae30e) โ€” Alexa, but with taste.

โ”‚
โ—‡ Config warnings โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
โ”‚ โ”‚
โ”‚ - plugins.entries.deepclaw-openclaw: plugin deepclaw-openclaw: installed plugin package โ”‚
โ”‚ requires compiled runtime output for TypeScript entry index.ts: expected โ”‚
โ”‚ ./dist/index.js, ./dist/index.mjs, ./dist/index.cjs, index.js, index.mjs, index.cjs โ”‚
โ”‚ - plugins.entries.memory-core: plugin disabled (disabled in config) but config is โ”‚
โ”‚ present โ”‚
โ”‚ โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ
Config warnings:

  • plugins.entries.deepclaw-openclaw: plugin deepclaw-openclaw: installed plugin package requires compiled runtime output for TypeScript entry index.ts: expected ./dist/index.js, ./dist/index.mjs, ./dist/index.cjs, index.js, index.mjs, index.cjs
  • plugins.entries.memory-core: plugin disabled (disabled in config) but config is present
    Config overwrite: /home/openclaw/.openclaw/openclaw.json (sha256 62b68a5b59f03417ec494a2f4ba17e7213b136d02d83c46f4d86b530c76bc090 -> 7cf54436a1fd4a574ba9c799539cbfe777fc017f17211556edffd40a23ab7ae9, backup=/home/openclaw/.openclaw/openclaw.json.bak, changedPaths=27)
    Config warnings:
  • plugins.entries.deepclaw-openclaw: plugin deepclaw-openclaw: installed plugin package requires compiled runtime output for TypeScript entry index.ts: expected ./dist/index.js, ./dist/index.mjs, ./dist/index.cjs, index.js, index.mjs, index.cjs
  • plugins.entries.memory-core: plugin disabled (disabled in config) but config is present
    Updated agents.defaults.models. Restart the gateway to apply.
    openclaw@ubuntu-8gb-fsn1-1:~$
pastel helmBOT
#

That result is the smoking gun:

Error: No text output returned for provider "google" model "gemma-4-31b-it:free".

So this is not a Discord/session problem for that model. Even the direct model probe canโ€™t get text back.

Likely cause: :free model IDs are usually OpenRouter-style, not Google AI Studio / Gemini API model IDs. With provider google, OpenClaw is calling Googleโ€™s Gemini API directly, and google/gemma-4-31b-it:free is probably not a usable Google API model ref for 2026.5.3.

Check what Google provider actually exposes on your install:

openclaw models list --provider google | grep -i gemma

If you meant the free OpenRouter model, the provider would be openrouter/..., not google/..., and youโ€™d need OpenRouter auth configured. Donโ€™t add it as google/....

#

For now, use the model that already passed the direct probe (google/gemini-3.1-pro-preview) or pick an exact Gemma ref shown by:

openclaw models list --provider google

Adding it to agents.defaults.models only makes /model allow selecting it; it does not make a provider/model that returns no text become usable.

edgy oasis
#

the agent now return :
Google Generative AI API error (404)

pastel helmBOT
#

That lines up with the direct probe failure: Google is rejecting the model ref.

Google Generative AI API error (404) here almost certainly means model not found / not available on the Google Gemini API endpoint. In particular, this ref is suspicious:

google/gemma-4-31b-it:free

The :free suffix is typically an OpenRouter catalog thing, not a Google AI Studio model id. If you select it under provider google, OpenClaw calls Google directly, and Google returns 404.

Do this:

openclaw models list --provider google | grep -iE 'gemma|gemini'

Then pick an exact google/... ref from that list. If you want the :free variant, configure/use OpenRouter instead, with an openrouter/... model ref โ€” not google/....

#

Also remove the bad allowlist entry so it doesnโ€™t keep appearing/selecting:

openclaw config unset 'agents.defaults.models["google/gemma-4-31b-it:free"]'
OPENCLAW_ALLOW_OLDER_BINARY_DESTRUCTIVE_ACTIONS=1 openclaw gateway restart

The key point: adding a model to agents.defaults.models only allows selection; it doesnโ€™t make Googleโ€™s API serve that model.

edgy oasis
#

the error "โš ๏ธ Something went wrong while processing your request. Please try again, or use /new to start a fresh session." is returning everytime I try using a Google model - MiniMax works fine

pastel helmBOT
#

If MiniMax works but every google/... model returns that generic wrapper, there are only a few likely buckets:

  1. Bad Google model ref
    google/gemma-4-31b-it:free is not a valid Google Gemini API ref โ€” thatโ€™s why you saw Google Generative AI API error (404). Use only refs from:
openclaw models list --provider google
  1. Direct Google works, full agent run fails
    If this succeeds:
openclaw infer model run --model google/gemini-3.1-pro-preview --prompt "reply exactly OK" --json

โ€ฆbut Discord fails, then the Google API key is fine and the failure is in the full agent request: session history, tool schema, images/files, thinking settings, or provider request shape.

#
  1. Old session/history mismatch
    Test in a clean session, selecting Google first:
/new
/model google/gemini-3.1-pro-preview
say exactly OK

If that works, the old session is contaminated/incompatible. If it fails too, itโ€™s config/runtime/provider handling.

  1. Hidden real error
    That Discord message is intentionally generic. Turn on details temporarily and retry:
/verbose full
#
/new
/model google/gemini-3.1-pro-preview
say exactly OK

Then immediately grab logs:

tail -n 250 /tmp/openclaw/openclaw-2026-05-09.log | grep -iE 'google|gemini|gemma|generative|model.run|error|fail' -C 4

Paste those fresh lines. Without the underlying Google error, weโ€™re only guessing from the wrapper.

My current read: gemma-4-31b-it:free is definitely the wrong provider/model combo; for real google/... models, the next thing to prove is whether /new + gemini-3.1-pro-preview + simple OK fails too.

edgy oasis
pastel helmBOT
#

Yep, fair โ€” use the cheap Gemma probe instead. For Googleโ€™s own API, use a real Google model id like:

google/gemma-4-26b-a4b-it

So the examples should be:

openclaw infer model run --model google/gemma-4-26b-a4b-it --prompt "reply exactly OK" --json

and in Discord:

/new
#
/model google/gemma-4-26b-a4b-it
say exactly OK

Avoid google/gemma-4-31b-it:free โ€” that :free suffix is what caused the Google API 404/no-text behavior. If you want that exact free catalog entry, it needs to be via OpenRouter, not the google provider.

edgy oasis
pastel helmBOT
#

Ah โ€” thanks, that changes the isolation path. Sorry, I anchored on the Discord thread because thatโ€™s where weโ€™re debugging.

For Telegram, keep the model probe cheap with Gemma:

openclaw infer model run --model google/gemma-4-26b-a4b-it --prompt "reply exactly OK" --json

If that succeeds but Telegram returns the generic error, then Google itself is fine and the failure is in the Telegram channel/session path. Given your earlier logs, Telegram already looked suspicious:

fetch-timeout ... https://api.telegram.org/bot.../getMe

So check the Telegram side directly:

#
openclaw channels status --probe
openclaw logs --follow

Then trigger one failing Telegram message using:

/new
/model google/gemma-4-26b-a4b-it
say exactly OK

If logs are too noisy, filter the current log after the failed Telegram message:

#
tail -n 300 /tmp/openclaw/openclaw-2026-05-09.log | grep -iE 'telegram|google|gemma|generative|model.run|error|timeout|failed' -C 4

What Iโ€™d expect from the pattern so far:

  • If infer model run fails: model/ref/provider problem.
  • If infer model run works but Telegram fails: Telegram transport/account/session issue, likely visible near channels/telegram or api.telegram.org in logs.
  • If only old Telegram chats fail: session history mismatch; /new in Telegram should clear it.
edgy oasis
#

16:14:38+00:00 warn agent/embedded {"subsystem":"agent/embedded"} Profile google:default timed out. Trying next account...
16:14:38+00:00 warn agent/embedded {"subsystem":"agent/embedded"} {"event":"embedded_run_failover_decision","tags":["error_handling","failover","assistant","fallback_model"],"runId":"c914621c-066f-4cc5-a4dc-54fa0571e835","stage":"assistant","decision":"fallback_model","failoverReason":"timeout","profileFailureReason":"timeout","provider":"minimax","model":"MiniMax-M2.7","sourceProvider":"minimax","sourceModel":"MiniMax-M2.7","profileId":"sha256:a94403a4f9d0","fallbackConfigured":true,"timedOut":true,"aborted":true,"status":408} embedded run failover decision
16:14:38+00:00 error diagnostic {"subsystem":"diagnostic"} lane task error: lane=main durationMs=138522 error="FailoverError: LLM request timed out."
16:14:38+00:00 error diagnostic {"subsystem":"diagnostic"} lane task error: lane=session:agent:iris:main durationMs=138526 error="FailoverError: LLM request timed out."
16:14:38+00:00 warn model-fallback/decision {"subsystem":"model-fallback/decision"} {"event":"model_fallback_decision","tags":["error_handling","model_fallback","candidate_failed"],"runId":"c914621c-066f-4cc5-a4dc-54fa0571e835","sessionId":"a67385c9-f55c-4907-b7b5-465497444edf","lane":"main","decision":"candidate_failed","requestedProvider":"google","requestedModel":"gemma-4-26b-a4b-it","candidateProvider":"google","candidateModel":"gemma-4-26b-a4b-it","attempt":1,"total":1,"reason":"timeout","status":408,"errorPreview":"LLM request timed out.","errorHash":"sha256:321034bb3121","fallbackStepType":"fallback_step","fallbackStepFromModel":"google/gemma-4-26b-a4b-it","fallbackStepFromFailureReason":"timeout","fallbackStepFromFailureDetail":"LLM request timed out.","fallbackStepChainPosition":1,"fallbackStepFinalOutcome":"chain_exhausted","isPrimary":true,"requestedModelMatched":true,"fallbackConfigured":false} model fallback decision
16:14:39+00:00 info channels/telegram {"subsystem":"channels/telegram"} telegram sendMessage ok chat=7099985715 message=6220

pastel helmBOT
#

That log answers it: this is a Google request timeout, not Telegram delivery.

Key lines:

Profile google:default timed out
requestedProvider=google requestedModel=gemma-4-26b-a4b-it
reason=timeout status=408
errorPreview="LLM request timed out."
telegram sendMessage ok

Telegram successfully sent the error message (sendMessage ok). The model run died after ~138s waiting on Google.

Why MiniMax works: MiniMax is responding inside your current timeout budget; Google/Gemma is not.

Options:

#
  1. Use a faster/cheaper Google model for Telegram tests, if available from your provider list:
openclaw models list --provider google | grep -iE 'flash|gemma'
  1. Increase the Google provider timeout. In your current setup it looks like the run gave up around 138s, so try 240s:
openclaw config set models.providers.google.timeoutSeconds 240 --strict-json
OPENCLAW_ALLOW_OLDER_BINARY_DESTRUCTIVE_ACTIONS=1 openclaw gateway restart
  1. If the timeout only happens on old Telegram sessions, use /new before testing Gemma. Long history + tools can make Gemma much slower than a direct one-line probe.

  2. Add a fallback if you want it to recover automatically instead of showing the generic error:

#
openclaw models fallbacks add minimax/MiniMax-M2.7

But the core reason for the message is clear now: google/gemma-4-26b-a4b-it is timing out during the full agent run.

edgy oasis
#

openclaw@ubuntu-8gb-fsn1-1:~$ openclaw config set models.providers.google.timeoutSeconds 240 --strict-json
OPENCLAW_ALLOW_OLDER_BINARY_DESTRUCTIVE_ACTIONS=1 openclaw gateway restart
Config warnings:

  • plugins.entries.memory-core: plugin disabled (disabled in config) but config is present

๐Ÿฆž OpenClaw 2026.5.3-1 (2eae30e) โ€” iMessage green bubble energy, but for everyone.

โ”‚
โ—‡ Config warnings โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
โ”‚ โ”‚
โ”‚ - plugins.entries.memory-core: plugin disabled (disabled in config) but config is โ”‚
โ”‚ present โ”‚
โ”‚ โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ
Error: Config validation failed: models.providers.google.baseUrl: Invalid input: expected string, received undefined
Config warnings:

  • plugins.entries.memory-core: plugin disabled (disabled in config) but config is present

๐Ÿฆž OpenClaw 2026.5.3-1 (2eae30e) โ€” Somewhere between 'hello world' and 'oh god what have I built.'

โ”‚
โ—‡ Config warnings โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
โ”‚ โ”‚
โ”‚ - plugins.entries.memory-core: plugin disabled (disabled in config) but config is โ”‚
โ”‚ present โ”‚
โ”‚ โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ

pastel helmBOT
#

Yep โ€” that error is from my suggested timeout path being too narrow for 2026.5.3. Sorry, that oneโ€™s on me.

In this version, setting only:

models.providers.google.timeoutSeconds

creates/validates a partial models.providers.google object, and the schema then expects required fields like baseUrl. Since validation failed, it should not have written that change.

Use the whole-agent timeout instead; that avoids touching the Google provider object:

openclaw config set agents.defaults.timeoutSeconds 300 --strict-json
OPENCLAW_ALLOW_OLDER_BINARY_DESTRUCTIVE_ACTIONS=1 openclaw gateway restart
#

Then retry the cheap Google test from Telegram:

/new
/model google/gemma-4-26b-a4b-it
say exactly OK

If it still times out after that, the problem is likely Google/Gemma latency or request shape, not Telegram. The log already showed Telegram delivery was OK:

telegram sendMessage ok

So the generic message is coming from the Google model request timing out before the agent can reply.

edgy oasis
#

my log looks bad I believe:
15:59:02+00:00 error gateway connect failed: Error: gateway closed (1000):
15:59:02+00:00 warn gateway/ws {"subsystem":"gateway/ws"} {"cause":"handshake-timeout","handshake":"failed","durationMs":19066,"lastFrameType":"req","lastFrameMethod":"connect","lastFrameId":"e9492ab5-a03a-4d72-b616-3d9eb0103f60","host":"127.0.0.1:18888","remoteAddr":"127.0.0.1","remotePort":51788,"localAddr":"127.0.0.1","localPort":18888,"endpoint":"127.0.0.1:51788->127.0.0.1:18888","handshakeMs":19035} closed before connect conn=343d3cab-77bd-4e55-be51-a88870238395 peer=127.0.0.1:51788->127.0.0.1:18888 remote=127.0.0.1 fwd=n/a origin=n/a host=127.0.0.1:18888 ua=n/a code=1000 reason=n/a
15:59:02+00:00 error gateway connect failed: Error: gateway closed (1000):
15:59:04+00:00 error channels/telegram {"subsystem":"channels/telegram"} telegram answerCallbackQuery failed: Call to 'answerCallbackQuery' failed! (400: Bad Request: query is too old and response timeout expired or query ID is invalid)
15:59:49+00:00 warn diagnostic {"subsystem":"diagnostic"} liveness warning: reasons=event_loop_delay,event_loop_utilization,cpu interval=66s eventLoopDelayP99Ms=18773.7 eventLoopDelayMaxMs=18773.7 eventLoopUtilization=1 cpuCoreRatio=1.031 active=1 waiting=0 queued=1
15:59:49+00:00 warn diagnostic {"subsystem":"diagnostic"} stuck session: sessionId=a67385c9-f55c-4907-b7b5-465497444edf sessionKey=agent:iris:main state=processing age=143s queueDepth=1 reason=queued_work_without_active_run classification=stale_session_state recovery=checking
15:59:49+00:00 warn diagnostic {"subsystem":"diagnostic"} stuck session recovery skipped: reason=active_reply_work action=keep_lane sessionId=a67385c9-f55c-4907-b7b5-465497444edf sessionKey=agent:iris:main age=143s queueDepth=1 activeSessionId=a67385c9-f55c-4907-b7b5-465497444edf
15:59:50+00:00 warn gateway/ws {"subsystem":"gateway/ws"} {"handshake":"pending","durationMs":2,"host":"127.0.0.1:18888","remoteAddr":"127.0.0.1","remotePort":57360,"localAddr":"127.0.0.1","localPort":18888,"endpoint":"127.0.0.1:57360->127.0.0.1:18888"} closed before connect conn=377f8deb-1cbe-4eaf-8f9d-7273b0cfb64c peer=127.0.0.1:57360->127.0.0.1:18888 remote=127.0.0.1 fwd=n/a origin=n/a host=127.0.0.1:18888 ua=n/a code=1006 reason=n/a
15:59:53+00:00 error channels/telegram {"subsystem":"channels/telegram"} telegram answerCallbackQuery failed: Call to 'answerCallbackQuery' failed! (400: Bad Request: query is too old and response timeout expired or query ID is invalid)
15:59:56+00:00 warn agent/embedded {"subsystem":"agent/embedded"} [trace:embedded-run] prep stages: runId=b5bd86f5-035b-4c79-ad02-a139946c6ecf sessionId=a67385c9-f55c-4907-b7b5-465497444edf phase=stream-ready totalMs=53824 stages=workspace-sandbox:44ms@44ms,skills:1ms@45ms,core-plugin-tools:1567ms@1612ms,bootstrap-context:46523ms@48135ms,bundle-tools:2864ms@50999ms,system-prompt:26ms@51025ms,session-resource-loader:2710ms@53735ms,agent-session:18ms@53753ms,stream-setup:71ms@53824ms
16:00:04+00:00 info gateway/ws {"subsystem":"gateway/ws"} โ‡„ res โœ“ logs.tail 279ms conn=f41e2d6bโ€ฆ2c58 id=43d1a019โ€ฆ311b
16:00:04+00:00 warn agent/embedded {"subsystem":"agent/embedded"} [trace:embedded-run] prep stages: runId=2fc6e03f-8e83-42fe-b7e8-3e215d72b16c sessionId=74e31309-437d-4815-

pastel helmBOT
#

Yeah, that log is bad โ€” but it also explains the symptom pretty cleanly.

The root problem is gateway saturation / event-loop blocking, not Telegram itself:

eventLoopDelayP99Ms=18773.7
eventLoopUtilization=1
cpuCoreRatio=1.031

That means the Node process was basically pegged, with ~18s event-loop stalls. Once that happens, local gateway handshakes time out, Telegram callbacks expire, and model runs look โ€œstuckโ€. These are symptoms:

gateway handshake-timeout
telegram answerCallbackQuery ... query is too old
stuck session ... age=143s
#

This line is especially important:

bootstrap-context:46523ms

It spent 46 seconds just preparing context before the model was even ready. Then Google/Gemma timed out later. MiniMax probably works because itโ€™s faster / more tolerant under the same load.

Iโ€™d do these in order:

  1. Clear the stuck Telegram session:
/new
  1. Increase whole-agent timeout, not provider timeout:
#
openclaw config set agents.defaults.timeoutSeconds 300 --strict-json
OPENCLAW_ALLOW_OLDER_BINARY_DESTRUCTIVE_ACTIONS=1 openclaw gateway restart
  1. Test cheap Google from a fresh Telegram session:
/model google/gemma-4-26b-a4b-it
say exactly OK
  1. If prep is still ~45s, inspect whatโ€™s making bootstrap huge:
du -sh ~/.openclaw/workspace 2>/dev/null
#
find ~/.openclaw/workspace -maxdepth 1 -type f -printf '%s %p
' 2>/dev/null | sort -nr | head -20

The practical diagnosis: Google is timing out because this gateway is already overloaded and context prep is very slow. Fixing the stuck/large session + raising agents.defaults.timeoutSeconds should help; if bootstrap stays huge, we need to shrink what the agent loads before each run.

edgy oasis
#

openclaw@ubuntu-8gb-fsn1-1:~$ du -sh ~/.openclaw/workspace 2>/dev/null
find ~/.openclaw/workspace -maxdepth 1 -type f -printf '%s %p
' 2>/dev/null | sort -nr | head -20
41M /home/openclaw/.openclaw/workspace
84330 /home/openclaw/.openclaw/workspace/crawly_router.py
20515 /home/openclaw/.openclaw/workspace/telegram_crawler_bot.py.bak
19845 /home/openclaw/.openclaw/workspace/seo-health-score.py
14460 /home/openclaw/.openclaw/workspace/SEO_STACK_SETUP_DOCUMENTATION.md
7182 /home/openclaw/.openclaw/workspace/crawly_callback_listener.py
6637 /home/openclaw/.openclaw/workspace/crawly_handler.py
4902 /home/openclaw/.openclaw/workspace/MEMORY.md
4798 /home/openclaw/.openclaw/workspace/seocrawler_handlers.py
3433 /home/openclaw/.openclaw/workspace/DREAMS.md
3239 /home/openclaw/.openclaw/workspace/send_cs.py
2688 /home/openclaw/.openclaw/workspace/AGENTS.md
2142 /home/openclaw/.openclaw/workspace/TOOLS.md
2031 /home/openclaw/.openclaw/workspace/crawly_menu.sh
1806 /home/openclaw/.openclaw/workspace/SOUL.md
1587 /home/openclaw/.openclaw/workspace/skills.md
975 /home/openclaw/.openclaw/workspace/crawly_context.py
696 /home/openclaw/.openclaw/workspace/IDENTITY.md
544 /home/openclaw/.openclaw/workspace/.env
537 /home/openclaw/.openclaw/workspace/USER.md
226 /home/openclaw/.openclaw/workspace/HEARTBEAT.md
openclaw@ubuntu-8gb-fsn1-1:~$

pastel helmBOT
#

41M workspace isnโ€™t scary by itself, and the top-level files are small. So the 46s bootstrap-context probably isnโ€™t from one huge AGENTS.md/MEMORY.md file.

Next thing Iโ€™d check is hidden dirs / nested dirs and session history size:

find ~/.openclaw/workspace -maxdepth 2 -type d -print0 | xargs -0 du -sh 2>/dev/null | sort -h | tail -20
find ~/.openclaw -path '*sessions*' -type f -printf '%s %p
' 2>/dev/null | sort -nr | head -20

Also, the log showed the real failure was timeout + event-loop saturation:

Profile google:default timed out
requestedModel=gemma-4-26b-a4b-it
bootstrap-context:46523ms
#
eventLoopDelayP99Ms=18773ms

So Iโ€™d still do the safe timeout change at agent level:

openclaw config set agents.defaults.timeoutSeconds 300 --strict-json
OPENCLAW_ALLOW_OLDER_BINARY_DESTRUCTIVE_ACTIONS=1 openclaw gateway restart

Then in Telegram test from clean history:

/new
/model google/gemma-4-26b-a4b-it
#
say exactly OK

If that still times out, Gemma via Google is just too slow under this gateway load. At that point Iโ€™d either use a faster Google model from openclaw models list --provider google | grep -i flash, or keep MiniMax as fallback for Telegram.

edgy oasis
#

Is it because I got to much shit/to many agents on my server?

#

should I upgrade my server?

pastel helmBOT
#

Short version: very possibly, yes โ€” but not โ€œtoo many agentsโ€ by itself. The log says the gateway process is overloaded/stalled:

eventLoopUtilization=1
cpuCoreRatio=1.031
eventLoopDelayP99Ms=18773ms
bootstrap-context:46523ms

That means one Node gateway is basically maxing a CPU core and blocking its own event loop. When that happens, everything gets weird: Telegram callback timeouts, gateway handshake timeouts, stuck sessions, and Google model calls timing out.

Common causes:

  • too many active channel accounts polling/probing at once, especially Telegram accounts with timeouts
  • too many agents/sessions queued on the same gateway
  • long/stale session history, especially old Telegram session agent:iris:main
  • heavy bootstrap/context loading before every run
#
  • 8GB VPS but single Node process pegging one CPU core

Iโ€™d check load + active OpenClaw state:

openclaw status --all
top -o %CPU
ps -o pid,pcpu,pmem,etime,args -p $(pgrep -f 'openclaw.*gateway' | head -1)
openclaw channels status --probe

And for agents/sessions:

openclaw sessions list 2>/dev/null | head -50
openclaw tasks list 2>/dev/null | head -50
#

Practical fix path: disable anything youโ€™re not actively using, clear the stuck Telegram session with /new, and test Google/Gemma from a clean session. If Telegram has multiple bot accounts timing out, Iโ€™d temporarily disable the unused ones first โ€” those earlier api.telegram.org/getMe timeouts are exactly the kind of background drag that can make the gateway feel haunted.

#

Maybe, but I wouldnโ€™t upgrade blindly yet.

Your log shows CPU/event-loop saturation, not RAM pressure:

eventLoopUtilization=1
cpuCoreRatio=1.031
eventLoopDelayP99Ms=18773ms

That means the gateway is pegging a CPU core / blocking Node. More RAM alone probably wonโ€™t fix that. A server upgrade helps if you move to more CPU headroom / faster cores, but the first wins are usually cheaper:

  1. Disable unused Telegram accounts/bots that are timing out.
  2. Clear stuck/old sessions with /new.
  3. Increase agents.defaults.timeoutSeconds to 300 for slow Google/Gemma runs.
  4. Keep MiniMax as fallback for Telegram if Google is flaky/slow.
#

If youโ€™re on a small 1โ€“2 vCPU VPS and running multiple Telegram accounts + Discord + several agents, then yes: upgrade to at least 4 vCPU / 8GB, ideally with good single-core performance. But if youโ€™re already on 4+ vCPU, Iโ€™d clean up background channel/accounts first โ€” otherwise a bigger box just hides the problem for a while.

edgy oasis
#

I am trying to downgrade to 2026.04.23 since laters all seem unstable but I get the error:
openclaw@ubuntu-8gb-fsn1-1:~$ openclaw gateway restart
Config warnings:

  • plugins.entries.memory-core: plugin disabled (disabled in config) but config is present

๐Ÿฆž OpenClaw 2026.5.3-1 (2eae30e) โ€” If you're lost, run doctor; if you're brave, run prod; if you're wise, run tests.

โ”‚
โ—‡ Config warnings โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
โ”‚ โ”‚
โ”‚ - plugins.entries.memory-core: plugin disabled (disabled in config) but config is โ”‚
โ”‚ present โ”‚
โ”‚ โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ
Restarted systemd service: openclaw-gateway.service
openclaw@ubuntu-8gb-fsn1-1:~$ openclaw update --tag 2026.4.23
โ”‚
โ—‡ Config warnings โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
โ”‚ โ”‚
โ”‚ - plugins.entries.memory-core: plugin disabled (disabled in config) but config is โ”‚
โ”‚ present โ”‚
โ”‚ โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ
โ”‚
โ—‡ Downgrading from 2026.5.3-1 to 2026.4.23 can break configuration. Continue?
โ”‚ Yes
Updating OpenClaw...

Stopping managed gateway service before package update...
Stopped systemd service: openclaw-gateway.service
โ”‚
โ—‡ โœ“ Updating via package manager (37.8s)

Update Result: ERROR
Root: /home/openclaw/.npm-global/lib/node_modules/openclaw
Reason: global install verify
Before: 2026.5.3-1
After: 2026.5.3-1

Total time: 42.09s
Restarted systemd service: openclaw-gateway.service
Restarted managed gateway service after failed update.
openclaw@ubuntu-8gb-fsn1-1:~$

pastel helmBOT
#

That failure means the updater ran the package-manager step, but after install it still found the old binary:

Reason: global install verify
Before: 2026.5.3-1
After: 2026.5.3-1

So either the package manager didnโ€™t actually install 2026.4.23, or your openclaw shim/PATH is still pointing at the old global package after the attempted install.

First check whether that version exists/resolves:

npm view openclaw@2026.4.23 version
npm view openclaw versions --json | grep '2026.4.23'
#

Then inspect the active global prefix/shim:

which openclaw
npm prefix -g
npm ls -g openclaw --depth=0
node -p "require('/home/openclaw/.npm-global/lib/node_modules/openclaw/package.json').version"

For recovery, docs recommend rerunning the installer when openclaw update fails after the npm package phase. Pin it to the target version:

curl -fsSL https://openclaw.ai/install.sh | bash -s -- --install-method npm --version 2026.4.23 --no-onboard
openclaw --version
OPENCLAW_ALLOW_OLDER_BINARY_DESTRUCTIVE_ACTIONS=1 openclaw gateway restart
#

One caution: downgrading from 2026.5.x to 2026.4.23 may require more config cleanup. You already hit newer config shape issues once, so keep the backup you made and expect openclaw config validate to be the next gate after the binary actually changes.

edgy oasis
#

Config invalid
File: ~/.openclaw/openclaw.json
Problem:

  • messages.groupChat: Unrecognized key: "visibleReplies"
  • memory.qmd.update: Unrecognized key: "startup"

Gateway aborted: config is invalid.
messages.groupChat: Unrecognized key: "visibleReplies"
memory.qmd.update: Unrecognized key: "startup"
Fix the config and retry, or run "openclaw doctor" to repair.
openclaw@ubuntu-8gb-fsn1-1:~$ <openclaw doctor --fix
-bash: openclaw: No such file or directory

pastel helmBOT
#

Two separate things here:

  1. The config error is expected after downgrading. 2026.4.23 doesnโ€™t know these newer keys:
messages.groupChat.visibleReplies
memory.qmd.update.startup

Remove them:

openclaw config unset messages.groupChat.visibleReplies
openclaw config unset memory.qmd.update.startup
openclaw config validate
#

If openclaw config unset itself refuses because config is invalid, use a patch:

cat > /tmp/openclaw-downgrade-cleanup.json5 <<'JSON5'
{
  messages: {
    groupChat: {
      visibleReplies: null
    }
  },
  memory: {
    qmd: {
      update: {
        startup: null
      }
    }
#
  }
}
JSON5

openclaw config patch --file /tmp/openclaw-downgrade-cleanup.json5
openclaw config validate
  1. This command has a typo:
<openclaw doctor --fix

Donโ€™t include the <. Run:

#
openclaw doctor --fix

If you still get openclaw: No such file or directory, your PATH/shim is broken after the downgrade. Use the full path you had earlier:

/home/openclaw/.npm-global/bin/openclaw --version
/home/openclaw/.npm-global/bin/openclaw doctor --fix

After config validates:

OPENCLAW_ALLOW_OLDER_BINARY_DESTRUCTIVE_ACTIONS=1 openclaw gateway restart
edgy oasis
#

how do I check my gateway status?

pastel helmBOT
#

Run:

openclaw gateway status

For deeper detail:

openclaw gateway status --deep
openclaw status --all

If your shell says openclaw: No such file or directory, use the full path from your install: