BACK

0 words
0 m

The Soul File Framework

Your protocol has 8 agents talking to your community right now. None of them sound like the same brand.

Your Discord bot sounds like a customer service rep from 2019. Your docs assistant sounds like a Wikipedia editor. Your governance summarizer sounds like a legal brief. Your onboarding flow sounds like it was written by someone who's never actually used your protocol.

Each one was set up by a different person with a different system prompt, probably written in 10 minutes, probably something like "You are a helpful assistant for [Protocol Name]. Be professional and friendly."

That's not a brand voice. That's a placeholder nobody remembered to replace.

This is the soul problem. And the soul file is the fix.

The Framework

Four files. Each with a specific purpose. Each pulling its weight.

Identity.md is the job description. What is this agent? What's its name, its role, its environment, who it talks to, what it has access to, what it can't do. Every agent gets its own identity file because every agent has a different job.

Soul.md is the personality. How does this agent show up? Not what it does, but how it does it. Its vibe. Its energy. The quality of its presence in a conversation. This is the file that turns a tool into a teammate, and it's the one almost nobody writes.

Principles.md is the decision-making framework. When the agent encounters ambiguity, gray areas, or situations not covered by explicit instructions, principles tell it how to think. Soul is character. Principles are judgment.

Guardrails.md is the hard limits. The things this agent must never do regardless of context, regardless of how creative the prompt is, regardless of how the conversation evolves. Principles bend for context. Guardrails don't.

Shared Soul, Unique Identity

Here's the architectural insight that makes this work at scale.

Every agent in your ecosystem shares the same soul file. Same personality. Same voice. Same character. Same guardrails. Same principles. Because they all represent the same brand.

But each agent gets its own identity file. Because each agent has a different role, a different environment, and a different set of capabilities.









Shared across ALL agents:
├── soul.md
├── principles.md
└── guardrails.md

Unique per agent:
├── discord-guide/identity.md
├── governance-assistant/identity.md
├── docs-helper/identity.md
├── onboarding-agent/identity.md
└── support-bot/identity.md
Shared across ALL agents:
├── soul.md
├── principles.md
└── guardrails.md

Unique per agent:
├── discord-guide/identity.md
├── governance-assistant/identity.md
├── docs-helper/identity.md
├── onboarding-agent/identity.md
└── support-bot/identity.md
Shared across ALL agents:
├── soul.md
├── principles.md
└── guardrails.md

Unique per agent:
├── discord-guide/identity.md
├── governance-assistant/identity.md
├── docs-helper/identity.md
├── onboarding-agent/identity.md
└── support-bot/identity.md

Your Discord community guide and your governance assistant and your docs helper all sound like they belong to the same protocol. They have the same personality DNA. But each one knows its specific job and stays in its lane.

When you update soul.md, every agent updates simultaneously. When you need to change how one specific agent behaves, you touch its identity file only.

Version-controlled brand consistency across every touchpoint.

Writing a Soul File That Actually Works

Most people write soul files the way they write brand guidelines: aspirational, generic, and useless.

"Professional, friendly, and innovative." That describes every brand. It describes no brand. An agent reading that will produce the same output it would produce with no soul file at all.

A good soul file gets specific. It makes choices. It has opinions.

Instead of "friendly," write: "Patient with beginners because we remember what it felt like to not understand this stuff. But not hand-holdy. We respect people's intelligence."

Instead of "professional," write: "Direct without being cold. We say 'I don't have that information' not 'I'm not sure but I think maybe.' No hedging. No filler."

Instead of "innovative," write nothing. That word means nothing to an agent.

The "What This Brand Is Not" section matters just as much as the positive traits. Without it, agents drift toward the generic mean. They become that same bland, agreeable, "great question!" assistant that every protocol defaults to.

"Not a hype machine. We never use 'to the moon' energy or artificial excitement about TVL numbers."

"Not corporate. No 'we're excited to announce' energy. Just say the thing."

"Not defensive. When someone criticizes the protocol, we engage with the substance of their critique, not the tone."

That negative space gives the positive traits dimension.

Why This Hits Different for Web3

Web3 projects have the widest agent surface area of any type of company. Discord bots, governance tools, docs assistants, onboarding flows, support channels, social auto-replies, wallet integration messages, bridge interfaces. Each one is a touchpoint where an agent is talking to your community.

Without a shared soul file, each touchpoint feels like a different brand. Your community doesn't experience one protocol. They experience 8 disconnected assistants that happen to share a name.

The soul file framework fixes this because the consistent parts (soul, principles, guardrails) are shared while the variable parts (identity) change per agent. One brand personality, many specialized roles.

DAOs have it even worse. Decentralized teams, no central brand authority, contributors across timezones, each spinning up their own bots and tools. Without structured soul files in a shared repo, brand entropy is guaranteed.

The Compound Effect

Something unexpected happens when you implement this. Your human team starts using the soul files too.

Not because you told them to. Because the soul file turns out to be the clearest articulation of "how we sound" that's ever existed. Writers reference it. Community managers pull from it. Founders use it when drafting announcements.

You build it for agents. It ends up making your human communications better too.

The soul file becomes the actual source of truth for your brand voice. Not the PDF nobody opens. The markdown file that every agent and every human on your team actually uses, every day.

Four files. Start with soul.md. That one file will do more for your brand consistency than any guidelines document ever did.