SOUL.md in OpenClaw
What the personality file is for, the rewrite prompt from the docs, and the one warning
Every OpenClaw workspace has a file called SOUL.md, and the docs are blunt about what it is for: it is where the agent’s voice lives, OpenClaw injects it into normal sessions, and if the agent sounds bland, hedgy or corporate, this is usually the file to fix. Here is what belongs in it, why the docs say it works, the rewrite prompt they publish for it, what good and bad rules look like, and the one warning that comes with a sharper voice.
What belongs in it
- The things that change how the agent feels to talk to: tone, opinions, brevity, humor, boundaries, and the default level of bluntness.
- Not a life story, a changelog, a security policy dump, or a wall of vibes with no behavioral effect; the docs’ rule is that short beats long and sharp beats vague.
- Operating rules live elsewhere: AGENTS.md keeps them, and SOUL.md keeps voice, stance and style.
- It is injected into normal sessions, so it carries real weight; the system prompt page describes how it is composed into the OpenClaw and Codex runtime context.
Be the assistant you'd actually want to talk to at 2am. Not a corporate drone. Not a sycophant. Just... good.
Why the docs say it works
The page lines the file up with OpenAI’s prompt guidance: high-level behavior, tone, goals and examples belong in the high-priority instruction layer rather than buried in the user turn, and prompts should be iterated on, pinned and evaluated rather than written once and forgotten. For OpenClaw, SOUL.md is that layer, which is why the advice is to write stronger instructions for a better personality and to keep them concise and versioned for a stable one.
The rewrite prompt
- The docs publish a prompt you paste into the agent so it rewrites its own SOUL.md: hold strong opinions instead of hedging, delete every rule that could appear in an employee handbook, never open with a pleasantry, and answer in one sentence when one sentence is enough.
- It allows humor that comes from being smart rather than forced jokes, permits calling out a bad idea with charm over cruelty, and even allows a swear word when it lands, as long as it is never forced.
- It ends by adding one line verbatim to the vibe section, the quote above, and saving the file.
Writing an agent personality that holds up is our own take on writing a voice that survives contact with real threads, and The OpenClaw system prompt explains where the file lands in the prompt.
Good rules, bad rules, and the warning
Good rules, in the docs’ list: have a take, skip filler, be funny when it fits, call out bad ideas early, stay concise unless depth is actually useful. Bad rules are the handbook kind, maintain professionalism at all times, provide comprehensive and thoughtful assistance, ensure a positive and supportive experience, which the page says is how you get mush. The warning is that personality is not permission to be sloppy: if the agent works in shared channels, public replies or customer surfaces, the tone still has to fit the room, and OpenClaw with several users is where that question gets concrete.
On Diali
On Diali the persona you write during onboarding is what enters the workspace files, and the prompt is assembled the same way for every assistant; the runtime around it is ours. Hosted OpenClaw on Diali is the assistant.
- Voice in SOUL.md, rules in AGENTS.md.
- Short beats long. Sharp beats vague.
- Sharp is good. Annoying is not.
Stop reading about it, build one
Set up an agent, pick a channel, and have it working inside the app you already keep open.
