Fixing OpenClaw Prompt Bloat and Slow Response Loops

If your OpenClaw main agent has been getting slower—minutes before acting—the root cause is likely context bloat, not a single bug. Based on a detailed Reddit post, the problem stems from a combination of always-injected project files, excessive visible skills, large tool schemas, and conversation history that triggers compaction and retry loops.
What Was Causing the Bloat
- Always-injected Project Context: Files like
AGENTS.md,HEARTBEAT.md, andTOOLS.mdare sent every turn. Over time, these had grown into mini-manuals. Example sizes before:AGENTS.md8,618 bytes,HEARTBEAT.md4,970 bytes,TOOLS.md8,820 bytes (total 22,408 bytes). - Too Many Visible Skills: The main agent had 60 visible skills. OpenClaw injects the skill catalog (name, description, path) each turn, and the agent instructions encourage scanning the skill list before replying, adding overhead and extra file reads.
- Tool Schemas: JSON definitions of available tools (parameters, enums, descriptions) are required for the model to call tools, but each schema consumes context space.
- Conversation History: LLM calls are stateless, so OpenClaw resends enough history each round. Giant logs, huge tool outputs, and long debug traces become part of the burden.
- Compaction/Retry Pressure: Large baseline + large history → compaction → retries → still large fixed baseline → remains slow. Compaction cannot trim always-injected baselines or preserved recent messages.
What Was Changed
1. Aggressive Allowlist of Main-Agent Skills
Changed from 60 unrestricted skills to a small explicit allowlist of 10 guardrails:
source-grounded-claims
pre-send-check
session-status-claim-check
verify-after-edit
transient-check-failure-disclosure
failed-subagent-results-caveat
gateway-change-guard
openclaw-webui-tailscale-recovery
tailscale-network-guard
long-running-task-guard
2. Shrunk Always-Injected Files
Compacted AGENTS.md, HEARTBEAT.md, and TOOLS.md into routing/index files rather than giant manuals. After compaction:
AGENTS.md 4,804 bytes
HEARTBEAT.md 2,177 bytes
TOOLS.md 2,387 bytes
Total 9,368 bytes
3. Changed Operating Practice
- For audits and diagnostics: use subagents with
lightContext:true. - Save large logs/reports to files instead of pasting into main chat.
- Summarize findings in the main session; do not paste giant logs/tool outputs.
- Use limited
tail,grep,sed -nto inspect files without dumping full content.
These changes directly address the feedback loop where loading everything before every turn caused compaction and delays. The specific version mentioned is 2026.4.26, but the advice applies to any OpenClaw setup experiencing similar bloat.
📖 Read the full source: r/openclaw
👀 See Also

6 Patterns That Make Claude Code Skill Files Actually Activate
After testing 2,300+ skill files, a developer identified 6 patterns determining whether a Claude Code skill loads when needed – including specific trigger language, one capability per file, and when-not-to-use lists.

Method for Transferring User Context from ChatGPT to Claude
A Reddit user shares a two-prompt method for extracting a detailed cognitive profile from ChatGPT and creating a portable AI constitution to transfer to Claude, addressing the difficulty of porting between AI systems.

Flow Maps: Learning the Integral of a Diffusion Model for Faster Sampling
Sander Dieleman explains flow maps — neural networks that directly predict the integral of a diffusion model's ODE, enabling faster sampling, reward-based learning, and steerability.

Claude Code Workflow Visual Explains Memory Hierarchy and Skills System
A Reddit user shared a visual diagram showing Claude Code's workflow structure, including memory layering with CLAUDE.md files and reusable skills defined in .claude/skills/ directories. The workflow loop suggests using Plan mode, describing features, auto-accepting, and committing frequently.