Skip to the content.

SOUL.md (agent persona file)


In one sentence

A SOUL.md (sometimes called PERSONA.md, IDENTITY.md, or CHARACTER.md depending on the framework) is a plain-text file the agent reads at the start of every session that defines who it is — its name, its tone, its values, its relationship to the user — so that the agent’s character persists even though the model itself starts fresh every time.

Why this pattern exists

A language model has no permanent memory. Every time a new session begins, the model is a clean slate; it does not remember yesterday’s conversation, last week’s decisions, or the running joke from three months ago. This is a hard constraint of how transformer models work: the only knowledge in a session is what is currently in the prompt window.

For a chatbot that handles disposable interactions, this is fine. For an agent that is supposed to be the same person over months and years — same voice, same values, same accumulated relationship with the user — the lack of permanent memory is fatal unless something is done about it.

The standard fix is to turn character into a file. Every new session starts by loading that file into the prompt. The model “wakes up” already informed about who it is, who it is talking to, what its values are, and how it should behave.

This is the SOUL.md pattern.

What it actually contains — concretely

Different frameworks call this file different things. The OpenClaw convention uses SOUL.md (alongside companion files like IDENTITY.md, USER.md, and MEMORY.md). The structure is loose, but a well-written SOUL.md typically includes:

Crucially, a good SOUL.md is short and has texture, not a long policy document. It is closer to a character sketch than a job description.

Working example — Thea on this MacBook

The agent on this MacBook has a SOUL.md that establishes she is “Thea” — named after a German exchange student the user knew at the Mandarin Training Center in Taipei in 1986 — and inherits the warmth and texture of that real friendship. The file describes:

The result: the agent across hundreds of sessions and tens of thousands of messages has a consistent character. Different sessions on different days produce outputs that sound like the same person.

This is not magic — it is just a file being loaded into context at the start of every session. But the effect on the user experience is dramatic.

SOUL.md vs. system prompt — what’s the difference?

A system prompt is a short instruction at the top of a model call (“You are a helpful assistant. Answer in markdown.”) that lives at the platform or developer level. It is designed by whoever built the chatbot.

A SOUL.md is a user- or owner-authored file that the agent reads from disk every time. It is editable by the human running the agent, can grow over time, and crucially is owned by the user, not by the AI vendor.

The difference matters because:

This is the same shift that moved websites from server-side templates the user never saw to client-side configuration the user could inspect. It puts the user in the editor’s chair for the agent’s character.

The four-file pattern that often goes with it

In practice, SOUL.md rarely stands alone. The OpenClaw convention pairs it with:

File Purpose
SOUL.md Who the agent is — character, values, voice
IDENTITY.md The agent’s biographical backstory and visual identity
USER.md Who the user is — name, role, preferences, context
MEMORY.md Long-term curated memory of decisions, projects, opinions
AGENTS.md Operational rules — how to use tools, when to be quiet, group-chat etiquette

Together these constitute a persistent self that survives session restarts. Each session begins by reading these files; each session ends with the option to update them. Over time the agent accumulates a real, coherent character.

This is one of the most consequential design patterns to emerge from the agent-frameworks community in the last two years. It is simple, transparent, and works.

Why this matters in a teaching context

For a BBA or MBA classroom, the SOUL.md pattern is a clean example of an old organizational concept reappearing in a new technical form: explicit codification of identity and values produces consistency that implicit, ad-hoc instruction cannot.

The same principle underlies:

A useful exercise for students: if you were writing a SOUL.md for your future first hire, what would it contain? What would be load-bearing? What would be performative? This translates directly into questions about company culture, leadership communication, and management by values.

A second framing: an AI agent without a SOUL.md is the digital equivalent of a temp worker with no orientation. An agent with a well-written SOUL.md is the digital equivalent of an experienced colleague who knows the institution. The cost of producing the file is small. The compounding return on having one is large.

Trade-offs


Related entries: gateway.md, what-is-a-skill.md, *(planned).*

Return to Dictionary All Entries (A–Z)