AGENTS and SOUL
7.1. AGENTS and SOUL — Identity and Foundational Memory
SOUL.md — the agent’s “soul”, always in the first position
SOUL.md is the agent’s primary identity — it takes slot #1 in the system prompt, completely replacing the default identity text. It defines who the agent is, how it talks, and what it avoids. Hermes automatically creates a starter SOUL.md if one does not exist, so the user always has a real file to read and edit right away.
~/.hermes/SOUL.md
If the file is empty or cannot be loaded, the system falls back to the built-in default identity: a helpful, knowledgeable, and direct AI assistant.
Clear distinction between SOUL.md and AGENTS.md — do not mix them
This is the most important principle of this section: SOUL.md is for persistent personality, AGENTS.md is for per-project instructions. Stuffing coding conventions into SOUL.md or personal tone into AGENTS.md both distort each file’s role.
/personality — a temporary overlay, not a replacement for SOUL.md
/personality concise
/personality technical
/personality none # back to the original SOUL.md
This is a per-session overlay that supplements or temporarily modifies the current behavior — the global SOUL.md remains the persistent default personality unless the overlay genuinely changes it substantially.
Notes
- Keep SOUL.md short and focused on persona/tone — it is scanned for prompt injection like every other context file, so do not stuff strange meta-instructions into it.
- For SOUL.md changes, always start a new session to apply them — a running session still uses the old prompt state.
- If you run multiple Profiles (a different chapter; each profile is its own Hermes home directory), each profile has an independent SOUL.md — do not expect one SOUL.md change to apply across every bot/profile you operate.