# Raw Source: SOUL.md — Approach B (Community / Template-Based) Source: https://www.stanza.dev/courses/hermes-personality/soul-md/hermes-personality-soul-identity-layer Source: https://blog.devgenius.io/how-to-play-with-soul-md-in-hermes-agent-135d1a36c9f9 Type: community tutorials / educational guides Confidence: medium-high (secondary sources referencing official docs) Date collected: 2026-09-25 ## Summary Community tutorials emphasize that SOUL.md is an "identity layer" — separate from preferences (USER.md), operating procedures (AGENTS.md), tool notes (TOOLS.md), and memory (MEMORY.md). The recommended structure: Identity → Style → Technical Preferences → Ethical Boundaries. Keep it under ~1KB / 2,000 tokens; it competes for context window space. ## Key differences from official guidance - More structured section headings encouraged (Identity, Communication Style, Technical Preferences, Ethical Boundaries). - Explicit size guideline: under 1KB preferred; 2,000 token cap enforced by framework. - More emphasis on per-project workspace-level SOUL.md overrides (workspace SOUL.md wins over global). - Stronger focus on "hard limits as prompt-injection defense" — using negative rules ("Never do X") as security layer.