Why your OpenClaw agent goes dark, gets dumber, or breaks on update
The five real problems people hit with OpenClaw — and the exact configuration + discipline fixes for each. If you're tinkering more than you're shipping, the answer is almost always one of these.
The agent goes dark / unresponsive mid-conversation
"It just stops responding. I type and nothing happens. Have to restart the whole conversation."
The main thread is blocked on a long inline tool chain — usually a multi-step research, debug, or batch operation that should've been delegated. Often compounded by context running long enough to silently truncate during a tool call.
In AGENTS.md, make this an explicit standing rule, not a suggestion. Coding tasks → tmux coding-agent loop. Research / multi-step diagnosis / batch ops → spawn a subagent with an explicit timeout. Inline only for quick lookups and single-file changes. The main thread is the chat — it has to stay responsive.
OpenClaw caps Claude Opus 4.7 at 200k by default. Override it to 1M in your model config so the agent doesn't silently truncate mid-tool-call on a long session. (Same model, same price tier — just removes the cap.)
If your heartbeat checklist is 40 items long and runs every 20 minutes, every heartbeat is itself a long inline chain. Tier it — ~12 quick inline checks max, heavy work delegated to crons or subagents.
Gets dumber over a long single-topic conversation
"It was sharp at the start, but after an hour on the same thread it starts repeating itself or losing the plot."
Pure LLM behavior — the longer the context, the more the model has to attend to, and the less weight it gives to recent specifics. Compounded if all your projects share one thread.
Don't run all of your work through one mega-thread. Spin up a dedicated chat per project / topic — Chief of Staff, Project A, Project B, etc. Each thread stays scoped, context never bloats, and the agent stays sharp because it's only ever attending to one subject at a time.
OpenClaw's default is to clear context aggressively. In a per-project group, you want the opposite — keep context across the year so it accumulates project knowledge. Set the auto-clear cadence to something rare (or off).
Persistent memory plugins (lossless-claw for lossless DAG-based recall, hindsight for entity-graph extraction) mean the agent can answer 'what did we decide three weeks ago about X' without having that turn still in context. Combine with the memory/ folder structure (daily journal, curated MEMORY.md, per-person files) and the LLM 'getting dumber' stops being a system-level problem.
Updates break the agent — and you have to tinker every time
"Every time OpenClaw updates, something breaks and I have to figure out what."
OpenClaw is moving fast (multiple releases per month). The fast pace is the point — but it means every update lands on a slightly different config surface area. Without a discipline layer, configs drift and small changes silently break the agent.
Don't blindly upgrade. Read the release notes, run on the previous stable for a day, then upgrade in your own time. Major releases have flagged a handful of breaking changes — knowing about them upfront is the whole game.
Schedule a daily check that diffs the installed OpenClaw version against the latest, summarizes the changelog, and pings you only when there's something to actually decide. Cuts the cognitive overhead of staying current.
Write tiny diagnostic scripts that check the bits you care about (allowlists, env vars, plugin states, model overrides). Wire them into the heartbeat. When something silently breaks, the doctor catches it in the next 30 minutes instead of next week.
The main agent does all the work — no 'let's reset' button
"It's one big monolithic thread doing everything. I want to start a new conversation without losing everything."
If the main thread is also the work thread, every long task pollutes the chat context. There's no clean separation between 'talking to the assistant' and 'running a job.'
Same answer as the dumber-over-time problem — the natural reset is starting a new thread for a new topic. Each group is its own scoped conversation. The agent picks up project knowledge from MEMORY.md and project CONTEXT.md, not from re-reading three months of chat history.
When the agent delegates to a subagent (coding loop, research task, batch op), that work happens out-of-band. The main chat sees a summary at the end, not the 200-tool-call trail. The 'reset conversation' you want is structurally built in — the work threads come and go, the chat threads persist.
OpenClaw's /steer command (2026.5.3+) interrupts an in-flight run and redirects it without starting a new turn. Use this when you don't want a new conversation, you just want the current one to change course.
Picks the wrong model and you don't know it
"It feels slower / dumber than it should. Not sure if it's the model or my setup."
OpenClaw's default model selection is a moving target — provider availability, context window, and pricing change constantly. Without explicit overrides, you might be running an older or smaller model than you think.
In your OpenClaw config, explicitly set both primary and fallback models. Today's sane defaults are Claude Opus 4.7 primary with Sonnet 4.6 fallback — but check the current state when you read this; model lineups change quarterly.
Memory plugins (hindsight, lossless-claw) need an embedding model to compute similarity. OpenAI is the easiest source today. Without an embedding key, the memory layer is just text storage — no real recall.
Every time you suspect model weirdness, run /status. It tells you the active model, reasoning level, context budget. Most 'why is it dumb' moments resolve with one quick status check.
60-second triage
When your agent feels broken, walk this list before tearing anything down. Most “OpenClaw is broken” moments resolve at step 1, 4, or 7.
# 60-second OpenClaw triage when something feels off
1. /status # is the right model loaded?
2. check heartbeat tier count # are you running 12 things every 20min?
3. check active subagents # is one stuck holding the main thread?
4. check context window in config # 200k? bump to 1M for opus-4-7
5. last OpenClaw upgrade? # did breaking changes land?
6. memory plugins enabled? # hindsight + lossless-claw + embed key?
7. one mega-thread or per-project? # split itbashThe meta-fix
Most of these problems aren't OpenClaw bugs. They're the absence of a discipline layer on top of OpenClaw.
One mega-thread doing everything will always go dark, get dumber, and break on update. Per-project Telegram groups + sub-agent-by-default + the three-layer memory pattern + project-context auto-inject + standing rules — that's the structure that keeps the agent fast, sharp, and resilient as the platform underneath it changes.
That's what the rest of this template is. Each piece exists because removing it brought one of these failure modes back.
Hit a failure mode that isn't on this list? File it here. Real failures earn their way onto this page.