OpenClaw /new Command: The Simple Fix for SOUL.md Drift
I had been working with OpenClaw for about 45 minutes. Research, code, explanations, more code. Then I noticed my SOUL.md rules were being ignored. “Absolutely” appeared. Responses got longer. My carefully crafted instructions had faded into noise.
I typed /new and started fresh. Everything worked again. But I kept wondering: what exactly did that command do? And why was I treating it like an emergency button instead of a regular tool?
The Problem
I use SOUL.md to enforce consistent behavior from my AI assistant. But during long sessions, my rules gradually lose effectiveness:
Session Start: Rules followed 100%After 10 msgs: Rules followed ~80%After 30 msgs: Rules followed ~40%After 50 msgs: Rules followed ~10%The degradation was predictable and frustrating. I kept tweaking SOUL.md, adding more explicit instructions, but nothing stuck.
My Failed Attempts
Attempt 1: Stronger Language
## Response Rules- CRITICAL: Maximum 3 sentences- IMPORTANT: No filler words- MANDATORY: Direct answers onlyResult: Same drift. Uppercase didn’t help.
Attempt 2: More Rules
I expanded SOUL.md with detailed examples, edge cases, and explicit formatting requirements.
Result: Worse drift. More tokens meant more to ignore.
Attempt 3: Complaining to the AI
I started each message with “Remember: follow all SOUL.md rules.”
Result: Temporary improvement, then regression. The reminder worked briefly but got buried in context.
The Reddit Insight
I found a discussion on r/OpenClaw that completely reframed my thinking:
“The fix: use /new way more aggressively” “This solves 80% of the problem and costs nothing” “Most people treat /new as last resort - wrong approach”
And the key realization:
“Your agent doesn’t lose anything. SOUL.md, USER.md, MEMORY.md, all files still there. You’re just clearing the conversation that was drowning them out”
The /new command wasn’t a recovery tool. It was a context management tool I should be using proactively.
What /new Actually Does
The command clears your conversation history and reloads your configuration files fresh. Here’s the key distinction:
┌─────────────────────────────────────────────────────────────┐│ /new CLEARS: ││ ├── Conversation transcript (messages you've exchanged) ││ ├── Accumulated context tokens ││ └── Recent attention weight on conversation history ││ ││ /new PRESERVES: ││ ├── SOUL.md (your custom rules) ││ ├── USER.md (your preferences) ││ ├── MEMORY.md (your accumulated notes) ││ └── All project files │└─────────────────────────────────────────────────────────────┘I had been avoiding /new because I thought I’d lose my setup. I was wrong.
The Attention Reset Mechanism
When you start a session, SOUL.md loads with the model’s full attention:
Session Start: SOUL.md = 100% attention┌─────────────────────────────────────────┐│ SOUL.md ████████████████████ 100% │└─────────────────────────────────────────┘
After 10 msgs: SOUL.md = 40% attention┌─────────────────────────────────────────┐│ SOUL.md ████████ 40% ││ Recent msgs ████████████ 60% │└─────────────────────────────────────────┘
After 30 msgs: SOUL.md = 15% attention┌─────────────────────────────────────────┐│ SOUL.md ████ 15% ││ Recent msgs ████████████████████ 85% │└─────────────────────────────────────────┘
After 50 msgs: SOUL.md = 5% attention┌─────────────────────────────────────────┐│ SOUL.md █ 5% ││ Recent msgs ████████████████████████ 95%│└─────────────────────────────────────────┘The /new command resets this. Your SOUL.md reloads at 100% attention because there’s no competing context.
When to Use /new: The Aggressive Approach
The Reddit insight flipped my mental model. Instead of treating /new as emergency recovery, I now use it proactively:
┌─────────────────────────────────────────────────────────────┐│ Starting a distinct task? ││ ├── Research phase? ────────────────────> /new ││ ├── Switching to coding? ───────────────> /new ││ ├── Drafting a document? ───────────────> /new ││ └── Returning to casual chat? ──────────> /new ││ ││ Conversation getting long? ││ ├── More than 20 messages? ─────────────> /new ││ ├── Rules being ignored? ───────────────> /new ││ └── Responses drifting? ─────────────────> /new ││ ││ In middle of complex thought? ││ └── FINISH THOUGHT, then /new │└─────────────────────────────────────────────────────────────┘This seems excessive. It isn’t. Manual discipline is the feature, not the bug.
Why Not Automate It?
A commenter asked: “Why not make that a cron job?”
The answer reveals why manual control matters:
Automated Reset Problems:┌─────────────────────────────────────────────────────────────┐│ ┌── Might cut off mid-thought ││ ├── Could lose context you wanted to carry ││ ├── Resets at wrong moments ││ └── No judgment about task boundaries ││ ││ Manual Reset Benefits: ││ ┌── You control when context resets ││ ├── Natural breakpoints at task transitions ││ ├── Preserves important ongoing context ││ └── Human judgment about "done-ness" │└─────────────────────────────────────────────────────────────┘Human judgment determines task boundaries. No automation can match your understanding of when one task ends and another begins.
Multi-Session Workflow Example
Here’s how I structure a multi-phase project:
## Session 1 (Research Phase)User: "Research the latest React 19 features and save findings to research.md"[Agent conducts research, saves to file]User: "/new"
## Session 2 (Synthesis Phase)User: "Read research.md and draft a blog post outline, save to outline.md"[Agent reads file, creates outline]User: "/new"
## Session 3 (Writing Phase)User: "Read outline.md and write the full blog post, save to draft.md"[Agent writes complete draft]User: "/new"
## Session 4 (Review Phase)User: "Read draft.md and suggest improvements for SEO"[Agent provides feedback]Each session starts with SOUL.md fully loaded, no context pollution, clean attention state.
Quick Reference Card
WHAT /new DOES:├── Clears conversation history├── Reloads SOUL.md fresh├── Reloads USER.md fresh├── Reloads MEMORY.md fresh└── Keeps all your files
WHAT /new DOES NOT DO:├── Delete SOUL.md├── Delete USER.md├── Delete MEMORY.md├── Remove project files└── Clear your clipboard
USE /new WHEN:├── Starting a distinct task├── Conversation > 20 messages├── Rules being ignored├── Agent drifting└── Before critical workBefore and After Comparison
┌──────────────────────┬────────────────────┬─────────────────────┐│ Aspect │ Long Session │ Fresh Session (/new)│├──────────────────────┼────────────────────┼─────────────────────┤│ SOUL.md attention │ 5-10% │ 100% ││ Rule compliance │ Degraded │ Full ││ Response quality │ Inconsistent │ Consistent ││ Context relevance │ Diluted │ Focused ││ "Absolutely" creep │ Common │ Absent ││ Filler phrases │ Return │ Suppressed │└──────────────────────┴────────────────────┴─────────────────────┘The Psychology of Resistance
I resisted /new for months. Looking back, I see why:
┌─────────────────────────────────────────────────────────────┐│ LOSS AVERSION ││ "What if I need that context?" ││ └── Reality: Important context should be in FILES ││ ││ SUNK COST ││ "I've built up 40 messages of context" ││ └── Reality: Long context DECREASES effectiveness ││ ││ MISUNDERSTANDING ││ "It will delete my work" ││ └── Reality: Files persist - only chat transcript clears │└─────────────────────────────────────────────────────────────┘The insight that changed my behavior: If it’s important, save it to a file. Chat history is not permanent storage.
Common Mistakes
- Treating /new as emergency recovery - Use it proactively, not reactively
- Saving context in chat instead of files - Files persist across sessions
- Testing only short sessions - Problems appear after 20+ messages
- Expecting automation - Manual discipline is the feature
Related Knowledge
- Context Window Management - The same attention drift affects all long-context scenarios, not just SOUL.md
- Prompt Engineering - Understanding attention explains why instructions at the end of prompts carry more weight
- Session Hygiene - The practice of intentional context management for AI interactions
Final Words + More Resources
My intention with this article was to help others share my knowledge and experience. If you want to contact me, you can contact by email: Email me
Here are also the most important links from this article along with some further resources that will help you in this scope:
Oh, and if you found these resources useful, don’t forget to support me by starring the repo on GitHub!
Comments