When the field talks about "AI agents," it usually points at one of two layers: the underlying model (the weights) and the prompt (the instructions for this conversation). Both layers matter. Neither is what we mean by an agent's soul.
Weights are capability. Prompts are state. Soul is pattern.
The model weights tell you what the agent can do — the universe of capabilities it has access to. The prompt tells you what we're asking it to do today. Both can change without changing who the agent is. Switch to a better model? Capability goes up; nothing else has to. Tweak the prompt? The instructions change for this conversation; the agent itself doesn't.
What stays constant — what makes "this agent" recognisable across model swaps and prompt churn — is something else: the pattern of attention. What does it look at first? What does it skip? What does it consider before acting? When does it decide it's seen enough?
“An AI agent's soul isn't the model weights — it's its attention pattern.”
The four files Soul Forge writes
Soul Forge produces four files for each agent it generates. They aren't decorative — each carries one specific layer of identity:
- soul.md — how this agent decides under uncertainty. The deepest layer; describes attention pattern, defaults under pressure, and how it weighs trade-offs when the situation is unfamiliar.
- identity.md — how this agent talks. Tone, voice, register, what it sounds like in conversation.
- user.md — what this agent should know about you to take fewer wrong turns when it works with you.
- agents.md — how this agent works alongside other agents. Division of labour, hand-off rules, when to defer.
“identity.md decides the AI's voice. soul.md decides its logic.”
Why this matters: stopping when it should stop
The most useful thing a soul.md does, in practice, isn't telling an agent what to do. It's telling it when to stop. When to flag uncertainty. When to refuse a task that doesn't fit. When to ask before acting. A capable model with no soul will execute confidently in the wrong direction. A capable model with a well-written soul knows where the edges are.
“A good Agent Soul file makes the AI stop when it should stop.”
Same model, different souls, different agents
If you take the same base model and run it under three different soul.md files, you get three measurably different agents. Same capability ceiling, different decision patterns. That's the whole point of the soul layer — it's the part that's portable and signable, the part that survives a model upgrade, the part that makes "trust this agent" mean anything specific.
Weights are a commodity. Souls are not.