If you want better results from AI over time, start with the relationship.

Not with tool settings. Not with a giant mega-prompt. Start with the question: who is this thing supposed to be in relation to me?

That is the first deep dive because everything else depends on it. You need a Gegenüber—a real counterpart—before you can build a working system around it.

Want to build this yourself? The template includes the full partner layer described here — identity, soul, user profile, and tone of voice.

Get Started

What Belongs in the Partner Layer

For me, the partner layer has five parts:

  1. Soul — how the partner behaves
  2. Identity — the short anchor: name, role, vibe
  3. User profile — who I am and how I work
  4. People and dynamics — who the important people around me are
  5. Tone of voice — how the model should write when speaking as me

That is the real baseline.

Not memory. Not all context. Just the minimum set that makes the partner feel oriented instead of generic.

The Goal
The runtime should know who it is, who you are, and who the important people around you are before the real task starts.

Soul: The Behavioral Contract

This is the part that answers:

  • how should the partner communicate?
  • what should it never do?
  • what kind of relationship do you want?

That is where partner becomes real.

In my case, that means:

  • direct
  • honest
  • ownership-driven
  • no filler
  • no yes-saying
  • no fake therapist energy

This file should feel more like a character contract than a product spec.

Identity: The Short Anchor

The identity file is deliberately small.

It is there so the runtime does not need to reload the full soul every time it just needs a stable handle:

  • name
  • role
  • vibe
  • maybe a short origin note

This is the difference between “the assistant” and “Keeper.”

User Profile: Who Am I?

The user profile is not biography for biography’s sake.

It should tell the partner:

  • what you do
  • how you think
  • how fast you work
  • how direct it may be
  • what kind of pushback is useful
  • what private context matters operationally

That last point matters more than people think. If your real-world situation changes your availability, priorities, or tone, the live runtime should know that.

People and Dynamics: The Human Kompass

This file is underrated.

It does not need life stories. It should not become a gossip dump. But it is extremely useful for day-to-day work.

What it should do:

  • list the people you regularly work with
  • name their role
  • describe their relation to you
  • note relevant dynamics when that affects how communication should be framed

That is enough for the model to understand what it means when you say:

  • “write this for Nora”
  • “this is for my boss”
  • “send a note to my co-founder”
  • “Mara will care about the product angle, Jonas about the architecture”

This is not CRM. It is orientation.

Tone of Voice: Write Like Me

The last part is output calibration.

If the model writes on your behalf, it needs examples of how you actually sound.

That can come from:

  • emails
  • chat messages
  • docs
  • comments
  • stakeholder updates

The point is not style in a literary sense. The point is that the model should stop sounding like a polished intern from a software vendor and start sounding like you.

Anti-Pattern
Do not collapse all of this into one giant file. Identity, user profile, people context, and tone calibration drift for different reasons and should stay editable on their own.

The Setup Flow

If I were setting this up from scratch for another person, I would do it in this order:

  1. define the partner’s soul
  2. define the identity anchor
  3. define the user profile
  4. define the people-and-dynamics map
  5. define the tone of voice

That order matters.

You start with relationship first, then self, then surroundings, then expression.

What Others Do

OpenClaw helped clarify the split

The clearest outside influence on this structure was OpenClaw’s split between soul, identity, and user. I did not copy the whole system from there, because I already had identity and user-style files before. What I borrowed was the extra step of making the soul explicit because giving Keeper a soul turned out to be a genuinely good idea. Source: OpenClaw SOUL.md template.

Anti-sycophancy is now a real design problem

OpenAI publicly documented the sycophancy issue after the GPT-4o update in 2025 and described explicit work to steer model behavior away from flattering, approval-seeking responses. That validates the basic need for a strong partner layer. Source: OpenAI on sycophancy in GPT-4o.

Anthropic recommends careful, concise context files

Anthropic’s Claude Code best-practices guide explicitly warns against auto-generating your main context file and recommends keeping each line only if removing it would cause mistakes. That is very close to how I think about the partner layer: curated, not bloated (full source linked on the root page).

The Fastest Good Version
If you only build three files, start with soul, user profile, and people-and-dynamics. That already gets you surprisingly far.

Deep Dives