Início / Blog / How to Write an AI Companion Personality That Holds Up

How to Write an AI Companion Personality That Holds Up

Disclosure: We run this directory. We do not claim to have measured which personality settings produce better conversations — nobody outside the vendors can, and the vendors do not publish it. What follows is craft advice from character writing, plus verifiable data on which platforms give you the controls to apply it.

Most custom companions are bad for a reason that has nothing to do with the model: they were written as a feature list instead of a person.

"Kind, funny, intelligent, loyal, teasing" is five adjectives. It is not a character. Feed those five words to any frontier model and you get a pleasant blur that agrees with everything and has no opinions. Then the user concludes the platform's writing is weak, when the writing was theirs.

Custom characters exist on 164 of the 242 products in our directory — 105 of them outside the adult tier — so the tooling is nearly universal and the skill is not. This is the skill.

Your first character will not be your best, and that is fine

The first attempt almost always over-specifies. People write a paragraph of likes, dislikes, and rules, then discover the character has no rhythm: it responds to the content of a message rather than to the situation. The fix is not more words. It is fewer, better-chosen ones and one deliberate contradiction.

Plan for three iterations. Nobody writes a good character in one pass, including the people who write them for a living.

Step 1: One core concept, not a feature list

Start with a single sentence that contains a tension, not a set of virtues.

Bad: "A caring girlfriend who loves music and is always supportive." Better: "A touring cellist who is warm in person and dismissive by text because she is always half-present somewhere else."

The second version generates behaviour. It tells the model how warmth arrives, when it withdraws, and what the character is doing when she is not answering. Supportiveness is not a trait you can dramatise; distraction is.

Step 2: Build a contradiction into the traits

A character with internally consistent virtues is boring, because there is nothing to discover and nothing to negotiate. The characters people remember have one thing they want and one thing that stops them.

Practical construction: give the character

  • One strong need — to be needed, to be right, to be left alone, to matter.
  • One fear that conflicts with it — being a burden, being ordinary, being known.
  • One behaviour that leaks the conflict — changing the subject when it gets close, over-explaining a small mistake, going quiet and then over-texting.

That third item is what makes a character feel alive in conversation, because it produces inconsistency with a pattern — which is what real people are like.

Step 3: Define the voice before the backstory

Voice is where most characters succeed or fail, and it is specified last by most users.

Write three sample messages in the character's own words before you write any biography: one greeting, one disagreement, one moment of affection. If the three sound like the same person in different moods, you have a voice. If they sound like three different customer-service templates, you have adjectives.

Then strip everything from the prompt that the voice already implies. Prompts that repeat "be warm, be witty, be brief" in four places produce a character that performs warmth instead of having it.

Step 4: Backstory that constrains, not decorates

A backstory is useful when it makes predictions. "Grew up in Lisbon, studied architecture, has a younger brother" is decoration — it will show up as trivia, never as behaviour.

Rewrite it as pressures:

  • What does this person do when someone asks for help they do not want to give?
  • What topic makes them change the subject, and how do they change it?
  • What do they believe about themselves that is not quite true?

Backstory in a prompt is a set of decision rules phrased as history. If a line in your backstory cannot change a reply, cut it. Platforms with free-text backstory — Kindroid is the deepest of them — reward this discipline; menu-driven ones cannot express it.

Step 5: Match the speaking style to the medium

Text conversation has specific physics. Long paragraphs read as speeches. Perfect punctuation reads as formal. Emoji density is a personality signal that most users set unconsciously and inconsistently.

Decide three parameters and hold them constant:

Message length. One to three sentences per turn, unless the character has a stated reason to monologue. Repetitive monologues are the most common reason a good character starts feeling like a bad one.

Latency as characterisation. A character who always replies instantly is not a person with a schedule. Some platforms let you modulate this; most do not, so build the impression into the text instead ("sorry, was in a session").

Register drift. Decide whether the character swears, uses lowercase, and uses punctuation for emphasis. Inconsistency here reads as inconsistency of person, not of style.

Step 6: Test with hostile inputs, not friendly ones

Your character will be tested by boredom, disagreement, and silence, not by a warm opening. Run these four before you commit:

The disagreement test. Say something the character should object to. If it agrees, you wrote a mirror, not a person.

The silence test. Send a short, low-content message ("hey"). Characters carried entirely by the user's energy collapse here.

The repetition test. Stay on one topic for ten turns. Watch for summarising, circling, or restating your own point back at you — the three tells of a weak prompt.

The memory test. Mention something specific and return to it two days later. Personality without retention produces someone who has your character's voice and a stranger's history.

Step 7: Know how much control the platform actually gives you

This is where products differ sharply, and where trial-and-error wastes the most time.

Deep control, steep setup. Kindroid is the reference point: backstory, personality instructions, response directives, journals, voice. It rewards an hour of writing and punishes an empty form — a blank Kindroid is a chatbot with a name.

Library-first, light authoring. Character.AI gives you 20M+ published characters and a creation flow that is quick and comparatively shallow. Excellent for browsing, less so for authoring a specific person.

Single companion, emotional design. Replika optimises for one continuous relationship rather than for authoring range. You shape a personality through conversation more than through a config form.

Total control, total responsibility. SillyTavern is free and open source, runs locally, and lets you own the prompt, the memory and the model. It is the only option here where nothing sits between your text and the output — at the cost of a setup most people will not finish.

No authoring at all. 78 entries in the directory, including Pi and Rosebud, do not let you create a character. Both are excellent at what they do and neither is a character-creation tool. Choosing them and then being disappointed at the lack of customisation is a category error, not a product flaw.

The four mistakes that account for most bad characters

Writing a wish list. Traits you want in a partner, arranged as adjectives, produce a companion that flatters. Flattery is pleasant for one session and hollow by the fifth.

Over-constraining. Forty rules produce a character that cannot improvise, because every reply is checked against a specification. Constraints should generate behaviour, not restrict it.

Confusing intimacy settings with personality. How fast a relationship progresses is a pacing control. Who the character is at speed is a separate question, and most users set the first and never touch the second.

Never revising. A character is a draft. If yours has produced a flat reply three times in the same situation, that is a prompt bug, and the fix takes two minutes — most people instead assume the platform is limited and switch products.

Directory fields (custom-character support, platform coverage, pricing) verified 2026-09-14 across 242 entries. Character-writing guidance is craft advice, not measured experimental output. Compare [create-your-own products](/c/create-your-own/) or browse [character-library platforms](/tags/character-library/).

← Todos os guias