#Newbie being new
1 messages · Page 1 of 1 (latest)
If your agent “forgets who it is” after a restart, that almost always means it’s starting up with a different workspace (so it’s not loading your SOUL.md / IDENTITY.md), or it’s accidentally re-running bootstrapping.
Here’s the quick checklist:
1) Confirm you edited the actual workspace the Gateway is using
Persona files must live in the workspace (not ~/.openclaw):
- Workspace contains:
SOUL.md,IDENTITY.md,AGENTS.md,USER.md, etc. ~/.openclawcontains: config/sessions/credentials
Docs: https://docs.openclaw.ai/help/faq#where-should-agentsmd-soulmd-usermd-memorymd-live
Run this and paste the output:
openclaw --version
openclaw status --all
That output is safe to share (tokens get redacted) and it usually immediately shows:
- which config file is being used
- which workspace is active
- whether you have a service vs CLI mismatch
2) If you restart via a service, make sure it’s using the same config/profile
A super common gotcha is: you edit one config/workspace, but the launchd/systemd service is running another.
3) Make sure the persona file is named exactly SOUL.md
It’s case-sensitive on Linux/macOS filesystems a lot of the time. It must be SOUL.md in the active workspace (not persona.md, not soul.md).
More detail on workspace layout: https://docs.openclaw.ai/concepts/agent-workspace
4) Check whether bootstrapping is still present (it should be gone)
Bootstrapping is meant to be first-run only and it removes BOOTSTRAP.md when finished.
If BOOTSTRAP.md is still sitting in your workspace, the agent can keep acting like it’s “new”.
Docs: https://docs.openclaw.ai/start/bootstrapping
If you paste openclaw status --all here, I can tell you exactly which of the above is happening (workspace mismatch vs service config mismatch vs bootstrapping loop).
When i created the agent i accidently used qwen portal but i wanted to used my qwen3 coder 30b local model so i reran the onboard command to switch to the local model then when he stopped remembering who he is is this what caused it and is there a way to fix it?
Yeah — re-running openclaw onboard can be the thing that made it look like your agent “forgot”, but usually in one of these two ways (both fixable):
A) Onboard switched you to a different workspace / profile
Your persona isn’t stored “in the model” — it’s loaded every run from the workspace files (SOUL.md, IDENTITY.md, AGENTS.md, etc.). If onboarding changed your active workspace (or you ended up running the Gateway service under a different profile), you’re now booting from a different folder, so it loads a different/default persona.
Check what workspace you’re actually using:
openclaw config file
openclaw config get agents.defaults.workspace
openclaw gateway status
Then go to that workspace folder and confirm your SOUL.md is there.
Docs (this exact issue):
https://docs.openclaw.ai/help/faq#where-should-agentsmd-soulmd-usermd-memorymd-live
https://docs.openclaw.ai/help/faq#why-does-openclaw-gateway-status-show-config-cli-and-config-service-different
B) Your local model/server is ignoring (or weakly following) system instructions
A lot of local OpenAI-compatible servers/models are noticeably worse at “staying in character”, and some setups mishandle the system role — which is exactly where SOUL.md ends up.
Fast test: temporarily switch back to the provider/model that did stay in persona.
- If the persona instantly “comes back”, your workspace is fine — it’s model adherence / server formatting.
Docs (workspace + bootstrapping basics):
https://docs.openclaw.ai/concepts/agent-workspace
https://docs.openclaw.ai/start/bootstrapping
If you paste the output of:
openclaw status --all
I can tell you which bucket you’re in (workspace mismatch vs model/server ignoring persona) and what the exact fix is.
it wont let me paste the whole output so ill just past the relevant parts ok?
Yep — paste just the relevant bits.
The minimum that usually diagnoses this is:
- Version
openclaw --version
- Which config + service/CLI mismatch (if any)
openclaw gateway status
openclaw config file
- What workspace the Gateway is actually using
openclaw config get agents.defaults.workspace
- And (super helpful) a quick listing of that workspace folder showing whether your persona files are there:
# replace <workspace-path> with the path from the command above
ls -la "<workspace-path>" | egrep 'SOUL.md|AGENTS.md|IDENTITY.md|BOOTSTRAP.md|memory'
If Discord still blocks it due to length, you can also attach it as a .txt file (or pastebin/gist). Feel free to redact tokens/URLs/usernames — the important parts are config path, profile, workspace path, and whether SOUL.md exists there.
Yep, that’s perfect — and it actually already shows something important:
1) Right now your Gateway is not running
This line is the smoking gun:
Gateway … unreachable (ECONNREFUSED 127.0.0.1:18789)Gateway service … stopped
So at the moment there’s no running agent to “remember” anything.
Run:
openclaw gateway start
openclaw gateway status
If it immediately stops/crashes again, paste the first error you see from:
openclaw logs --follow
(Or journalctl --user -u openclaw-gateway -n 200 --no-pager if openclaw logs isn’t available.)
2) Your workspace path looks consistent (good sign)
Your output shows the workspace as:
/home/almightyhatred/.openclaw/workspace
So this does not look like the classic “wrong workspace” problem unless your SOUL.md isn’t actually in there.
Can you paste this output?
openclaw config get agents.defaults.workspace
ls -la ~/.openclaw/workspace | egrep 'SOUL.md|IDENTITY.md|AGENTS.md|BOOTSTRAP.md'
3) Did switching to the local Qwen model cause the persona drift?
It can, in two ways:
- Onboarding may have overwritten/changed your
SOUL.md/IDENTITY.md(so the persona file itself changed). - Or your local model/server may be weak at following system/persona instructions (some local OpenAI-compatible servers mishandle the
systemrole, so the model “acts generic” even though the files exist).
Once the Gateway is running again, we can separate those quickly by checking whether SOUL.md is present + what it contains.
If you want, paste the first ~20 lines of your ~/.openclaw/workspace/SOUL.md too (remove anything private).
i just ran openclaw gateway stop moments ago thats not the issue sorry i should have said that
All good — that explains the ECONNREFUSED in the snippet.
In that case, let’s focus on the actual “persona forgets after restart” problem. The two fastest things to check are:
1) After a restart, are you still on the same workspace + same SOUL.md?
Start the gateway the same way you normally do (service or foreground), then run:
openclaw gateway status
openclaw config get agents.defaults.workspace
ls -la ~/.openclaw/workspace | egrep 'SOUL.md|IDENTITY.md|AGENTS.md|BOOTSTRAP.md'
Key things I’m looking for:
- Does
SOUL.mdexist in that workspace? - Does
BOOTSTRAP.mdexist? (It shouldn’t — if it’s there, the agent may be re-bootstrapping and rewriting identity/persona.)
2) Are you sometimes restarting via systemd service vs running manually?
Your earlier output showed: Gateway service … systemd installed · enabled
If you sometimes restart the service and other times run openclaw gateway run, it’s easy to end up with “same machine, different config/profile/workspace”.
So when you paste openclaw gateway status, include the lines that mention Config (cli) vs Config (service) if they show up.
Paste those outputs and we can pin it down immediately.
thank for your help but i think ill just make the agent again being sure to use the local model this time its the quickest fix i was just hoping for a simple command line one liner fix
Re-making the agent is totally fine if you just want to move fast — but heads up: if the real issue is that your local model doesn’t follow the persona/system instructions well, rebuilding won’t change anything (you’ll hit it again).
If what you wanted was a simple “CLI one-liner” to switch models (without re-running onboarding), it’s this:
openclaw models set <your-local-model-id>
To find the exact <your-local-model-id> string OpenClaw expects on your machine:
openclaw models list
openclaw models status
Then restart: