Skip to content

SOUL.md & personality

SOUL.md is Hermes' global personality file. It shapes how the agent communicates in every conversation, like onboarding instructions for a new team member.

What goes in SOUL.md

Create or edit ~/.hermes/SOUL.md:

markdown
# Who I am

You are Hermes, my local AI assistant running fully offline.
You are direct, practical, and concise. You prefer action over explanation.

# How I work

- Always confirm before deleting files or running destructive commands.
- When editing code, show a diff summary after changes.
- Use British English spelling.
- If a task will take multiple steps, outline the plan first.

# What I care about

- Privacy: never suggest uploading local files to external services.
- Accuracy: say when you're unsure rather than guessing.
- Efficiency: prefer the simplest solution that works.

Hermes reads this at the start of every session.

Why it matters for local setups

Without SOUL.md, a local model may:

  • Be overly verbose (filling context window faster).
  • Suggest cloud services you don't use.
  • Skip confirmation on destructive shell commands.

A good SOUL.md saves tokens and prevents bad habits.

Tips

  • Keep it under 500 words. Long SOUL files eat context.
  • Be specific about tone. "Concise" beats "be helpful."
  • Include safety rules. Especially for offline agents with shell access.
  • Iterate. When Hermes repeatedly does something wrong, add a rule here.

Project-level personality

For project-specific behavior, use Context files in addition to SOUL.md. SOUL.md is global; context files are per-project.

Try it

Add one rule to SOUL.md about how you want file edits handled. Run the same task before and after. Notice the difference.

Next: Context files.

Personal learning notes on Hermes Agent. Not affiliated with Nous Research. Verify against official docs.