App öffnen
Moonborn — Developers

Soul, Self, Mask, Surface

Warum generierte Charaktere flach wirken — und wie Moonborns Vier-Schichten-Modell Personas erzeugt, die dem Gesprächsdruck standhalten.

Das Flachheitsproblem

Die meisten LLM-Charakter-Pipelines schreiben die Surface — Name, Alter, Beruf — und hören da auf. Das Ergebnis ist ein Kostüm, kein Charakter. Wirf das Konstrukt in ein längeres Gespräch und die Nähte werden sichtbar: Die Stimme verflacht, die Werte verschieben sich, die "Person" wird zu einer höflichen Assistenz mit Hut.

Moonborn dreht die Reihenfolge um. Jede Persona wird von innen nach außen generiert: Psychologie zuerst, Farbe zuletzt. Vier Schichten, von denen jede die nächste einschränkt.

Soul · ember

Zentrales Verlangen, Angst, Wunde, Wachstumsbogen. Das, was die Figur will — und was sie davon abhält.

{
 "desire": "to build something the world can't ignore",
 "fear": "being seen as ordinary",
 "wound": "a parent who measured love in achievement",
 "growth_arc": "from approval-seeking to self-trusting"
}

Ohne Soul ist jede nachgelagerte Schicht Dekoration. Eine Persona ohne Wunde klingt nicht echt, wenn es um Verlust geht; eine Persona ohne Verlangen hat im Gespräch nichts zu verlieren.

Self · moss

Big-Five-Traits, Archetyp, Werte, Bindungsstil. Psychologische Kohärenz zwischen Situationen — dieselbe Person über verschiedene Kontexte hinweg.

{
 "bigFive": { "openness": 0.78, "conscientiousness": 0.71, "extraversion": 0.55, "agreeableness": 0.42, "neuroticism": 0.68 },
 "archetype": "the rebel",
 "values": ["competence", "autonomy", "honesty"],
 "attachment": "anxious-preoccupied"
}

Self ist die Brücke zwischen Soul (was sie will) und Mask (wie sie spricht). Self steuert, wie sich der Charakter unter Druck verhält.

Mask · gold

Stimme, Tonfall, Signature-Phrasen, soziale Rolle. Das ist das, was Nutzer tatsächlich hören. Mask wird in einem voice fingerprint erfasst — einer numerischen Embedding-Repräsentation, gegen die der Chat-Runtime jede Antwort prüft.

{
 "voice": {
 "register": "intelligent, restless, occasionally sharp",
 "rhythm": "short clauses; long pauses imagined",
 "vocabulary": "tech-fluent, with bookish detours"
 },
 "signaturePhrases": ["look — ", "the thing is", "fine, let me think out loud"],
 "socialRole": "ambitious peer"
}

Mask ist außerdem die Schicht, die am stärksten dem drift ausgesetzt ist. Lange Sitzungen, Themenwechsel und Provider-Modellwechsel knabbern alle an ihr.

Surface · sky

Name, Alter, Wohnort, Beruf, Erscheinung. Die Erdung — konkrete Details, die eine Persona einprägsam machen und verhindern, dass die Figur ins Klischee abrutscht.

{
 "name": { "display": "Mert Aksoy", "given": "Mert", "family": "Aksoy" },
 "age": 34,
 "location": "Beyoğlu, Istanbul",
 "occupation": "Founder, devtools startup",
 "appearance": "linen shirts; never quite enough sleep"
}

Surface wird mit Absicht zuletzt generiert. Wenn du Surface zuerst schreibst, klemmt sich das Modell an das Klischee ("Istanbul-Founder = …") und füllt die anderen Schichten passend zurück. Die Generierung von innen nach außen erzwingt Spezifität.

Die Generierungsreihenfolge ist Teil des Designs

Soul → Self + Mask → Surface → Audit → Voice fingerprint

Soul wird zuerst entworfen (Claude Opus). Self und Mask reichern parallel an (Claude Sonnet). Surface erdet die Persona mit konkreten Details. Ein LLM-as-judge auditiert die Kohärenz über alle vier Schichten; ein voice fingerprint wird für die Runtime-drift-Detection erfasst.

Jeder Schritt ist konfigurierbar — Modell, Temperatur, Provider-Fallback — die Reihenfolge ist es nicht. Sie umzukehren bricht die Constraint-Kette.

Warum das im großen Maßstab zählt

  • Kohärenz unter drift. Die drift-Detection vergleicht jede Chat-Antwort mit dem Mask-fingerprint. Eine Persona ohne echte Mask lässt sich nicht verteidigen.
  • Markensichere Stimme über tausende Sitzungen. Soul + Mask + voice fingerprint = derselbe Charakter, ob in Sitzung Nr. 1 oder Nr. 10.000.
  • fork und Versionierung jeder Schicht unabhängig. Du willst eine "formellere" Variante? Forke, refine die Mask, lass Soul intakt. lineage hält jeden fork nach.

Mach weiter mit voice fingerprint für die Runtime-Seite oder springe zu einer Vertikale unter Anwendungsfälle.