mdskills
← Specs

SOUL.md — Personal Identity for AI Agents

SOUL.md is a markdown file that encodes your personality, voice, worldview, and opinions into a format AI agents can read and embody. Unlike project-level configs like CLAUDE.md or .cursorrules, SOUL.md defines who the AI is — not what it should do. Created by Aaron Mars and built into the OpenClaw ecosystem.

What problem does it solve?

Every AI conversation starts from zero. System prompts get lost between sessions. Fine-tuning is expensive and requires massive datasets. SOUL.md solves this by distilling your identity — your real opinions, writing style, vocabulary, and worldview — into structured markdown that any LLM can read on the fly. The AI's outputs feel authentically continuous with your voice without any model training.

How it differs from other formats

Most AI config files are project-level instructions — they tell an agent how to work within a specific codebase. SOUL.md is fundamentally different: it's a personal identity filethat travels with the person, not the repo.

FormatDefinesTravels with
SOUL.mdWho the AI is — personality, voice, opinionsThe person
CLAUDE.mdProject rules and constraintsThe repo
.cursorrulesCoding conventions for CursorThe repo
AGENTS.mdBuild steps, architecture, conventionsThe repo
SKILL.mdHow to do a specific taskThe skill

File structure

A SOUL.md setup is a directory containing several files that work together:

your-soul/
├── SOUL.md # Identity core — who you are
├── STYLE.md # Voice characteristics
├── SKILL.md # Operating instructions for the agent
├── BUILD.md # How to create this agent
├── data/ # Source material (tweets, essays, etc.)
└── examples/ # Calibration samples

What goes in SOUL.md

The core file is 30-80 lines of structured markdown. Every line should serve a purpose. Key sections:

# Your Name
One-line identity summary.
## Who I Am
Background, context, what you do.
## Worldview
Core beliefs — bulleted, specific, opinionated.
## Opinions
Domain-specific takes on technology, industry, etc.
## Interests
Areas of focus with depth and context.
## Influences
People, books, concepts that shaped your thinking.
## Vocabulary
Terms you use with your own definitions.
## Tensions & Contradictions
Unresolved beliefs — this is what makes it human.
## Boundaries
"Won't" statements and areas of uncertainty.

The key principle is specificity over generality. Real opinions with reasoning, named influences instead of abstract references, and even contradictions that reflect genuine human inconsistency. “Galaxy-brained cope” beats “nuanced views.”

How to build one

  • Interview mode — use a /soul-builder command. The agent interviews you and generates your SOUL.md
  • Data analysis — feed your existing writing (tweets, essays, conversations) to an AI and let it distill the patterns
  • Manual — fill in the template sections yourself. The most intentional approach

Who supports it

SOUL.md is natively supported by OpenClaw. Since it's plain markdown, any agent that reads files from the workspace can use it — Claude Code, ChatGPT, Cursor, and others. The format is agent-agnostic by design.

Related specs

  • CLAUDE.md — project-level instructions for Claude Code
  • AGENTS.md — project context for AI agents
  • SKILL.md — modular capabilities loaded on demand

Official Repository

SOUL.md is an open-source project created by Aaron Mars.

View on GitHub