2) Make the “voice anchor” in SOUL.md brutally short and at the very top
First ~10–20 lines should be the essence (“talk like X, avoid Y, do Z”). If your SOUL starts with a long backstory and the style rules are later, many models will drift.
3) Verify the right workspace + no truncation
Run /context list in Telegram and check:
SOUL.md: OK (not MISSING / TRUNCATED)
- same for
AGENTS.md
If you paste just those two lines (not the contents), we can confirm whether you’re editing the right files / whether truncation is happening. (Docs: https://docs.openclaw.ai/concepts/context)
4) If drift persists: it may be the model
Some models just don’t hold persona consistently over long, casual chats. You’re on moonshot/kimi-k2.5 per your earlier /status, and “style drift” is a known tradeoff with some model families.
I won’t guess “the best model” here (it changes constantly), but if you ask in #models with your /status, people can recommend the most persona-sticky option right now. Docs: https://docs.openclaw.ai/concepts/models
About cron/heartbeat “re-anchoring”
A daily 5am cron that posts a short system-event reminder like “Reminder: stay in SOUL voice today” can work as a band-aid because it makes the style reminder recent. But I’d do the AGENTS.md “self-correct” rule first—cheaper and more reliable.