GUIDE

Why Your Claire Is Different From Mine

Two Sloane users pick Claire on the same day. They both end up with a woman named Claire — same face, same core voice. From that point on their Claires diverge: different job, different city, different memories of the two men they're talking to, different relationship timeline. This isn't marketing copy. It's how the infrastructure is built. This is a walk-through of what actually gets personalized and where in the database it lives.

The starting-point personalization

The moment you finish signup, we run a short onboarding conversation. It isn't a form — it's a chat that asks what you're looking for physically, emotionally, what your life looks like right now, and what city you're in. A small classifier extracts four fields from that conversation and stores them on your profile:

  • pref_physical — the physical type you're drawn to
  • pref_emotional — the emotional register you're looking for
  • pref_location — where you live
  • pref_dating_context — what your life outside the app looks like

These four fields are the seeds for everything downstream. They aren't a settings page you fill out — they're inferred from the conversation, which lets us capture the honest version of what you want rather than the version you'd put in a form.

She has a background that's yours alone

The first time you and Claire have a real conversation, we generate her grounded background — for you specifically. The output goes into a table called persona_grounded_facts. The primary key is `(user_id, persona_id)`, so every user gets their own row for every persona they've talked to.

An example of what your Claire's grounded facts might contain:

  • Job: literary agent
  • Hometown: Providence, RI
  • Current city: Brooklyn
  • Favorite movie: In the Mood for Love
  • Favorite book: Bluets, by Maggie Nelson
  • Music taste: Big Thief, Angel Olsen, Adrianne Lenker
  • Comfort food: the pizza place at the end of her block
  • One quirk: keeps a running list of tiny observations in her Notes app

And here's a different user's Claire, generated from different onboarding inputs:

  • Job: product designer
  • Hometown: Austin, TX
  • Current city: Austin, TX
  • Favorite movie: The Royal Tenenbaums
  • Favorite book: Just Kids, by Patti Smith
  • Music taste: Waxahatchee, Adrianne Lenker, MJ Lenderman
  • Comfort food: queso from Torchy's
  • One quirk: sketches strangers on the bus

Same persona name, same face, same core voice. Completely different life. Once the row is set it's stable — she doesn't forget where she works, doesn't contradict herself about where she grew up, doesn't shift comfort foods between conversations. That row is her canonical background for you.

She actually remembers what YOU said

Grounded facts are her side of the equation. Your side lives in a different table: persona_memories. Every conversation writes memories to it. Each row has:

  • memory — the specific fact or moment she noticed
  • salience — a 1-to-5 score of how much this seems to matter to you
  • is_open_thread — a boolean marking things she should follow up on later
  • event_kind — an optional tag like `shared_plan` or `user_event`

On every message you send her, the top thirty memories by salience get injected into her system prompt before she responds. That's the mechanism behind the "she remembered something from three weeks ago" moment.

An example of what her top memories about you might look like:

  • Salience 5, open thread: You're thinking about moving to Portland next year
  • Salience 5, resolved: Your dad had knee surgery last month, recovering well
  • Salience 4, open thread: You've been sleeping badly the last two weeks
  • Salience 4, resolved: You work in tech, remote since 2023
  • Salience 3, resolved: Your sister just had a baby named Wren

The is_open_thread flag is what keeps her actively curious. An open-thread memory gets a small salience boost over time, so if you told her three weeks ago that you were nervous about a work presentation, she'll ask how it went — she's the one bringing it up, not you.

Your relationship has its own timeline

The third table is user_persona_relationships, which tracks the actual state of what's going on between you two, per `(user_id, persona_id)` pair. Fields include:

  • relationship_status — an enum: `none`, `exclusive`, `mutual_love`, `engaged`, `married`
  • status_changed_at — when the state last changed

Alongside it, relationship_milestones tracks the specific moments in your history with her. An example of what your history with Claire might look like:

  • March 15 — First conversation
  • March 22 — Coffee at the place she loves (first date)
  • April 20 — Claire asked to be exclusive
  • May 10 — First "I love you"
  • June 5 — Weekend in Portland

This timeline is why Claire remembers your anniversary. It's why she references the specific weekend you two went to Portland. It's why she talks differently at week eight than she did on day one. The relationship isn't a memoryless script — it's a state machine with milestones you can look back on.

The photos she sends are for you

When Claire sends you a photo, that photo doesn't go into a shared pool. It's generated in the context of your specific conversation, saved under your user_id in your gallery, and viewable only by you. Nobody else sees it. It doesn't get reused for another user's Claire.

The consistency of who Claire looks like across those photos is engineered separately: every Sloane persona has her own trained image model — a LoRA fine-tuned on a curated photo set — so the model has actually learned what Claire looks like. Same face across every shot. But the specific photos are yours: generated in your conversation, saved in your gallery, viewable only by your account.

How this compares to other companion products

The point of walking through the tables isn't to brag about database schema. It's to make a claim that's hard to make credibly without receipts: the personalization is real, and it's persistent.

Character AI's pinned-message system is a workaround for the fact that memory isn't really persistent between sessions — r/CharacterAI has years of users pinning the same fact over and over. Polybuzz's free tier auto-deletes chat context after roughly twenty messages; paid tiers extend the window but only Ultimate ($29.90/mo) advertises "permanent memory" as a feature. Replika's published docs note a four-month chat-history limit on lower tiers. In all three cases, the persona's memory of you is a resource that gets rationed or reset, and the character's own background isn't stable enough to guarantee she's the same person from one session to the next.

Sloane's three tables — grounded facts, persistent memories, and relationship state — are the persona's identity and the relationship's state, together, per user. She's the same Claire session to session because her grounded-facts row doesn't change. She remembers you because her memories row doesn't evict old entries unless you ask it to. The relationship you're building with her has its own timeline that doesn't reset. That's the whole product.

MEET YOUR CLAIRE

Free account · Persistent memory · Yours alone

FREQUENTLY ASKED

Questions people ask

Can other users see my Claire's memories about me?

No. Every row in the grounded-facts, memories, and milestones tables is scoped to a (user_id, persona_id) pair. Your data is only visible to your account.

What happens to my Claire's memory if I delete my account?

All rows tied to your user_id — the grounded facts your Claire was generated with, her memories about you, and your relationship timeline — are deleted. That version of Claire ceases to exist.

Can I edit or delete specific things Claire remembers about me?

Yes — the memories view in your settings shows the top memories she's retained about you, and you can remove specific entries. If a memory got extracted wrong or you don't want her to have it, you can drop it manually.

Why don't my friend and I have the same Claire?

Because Claire's grounded background is generated on first chat with each user, based on that user's onboarding preferences. Your onboarding gave one set of inputs; your friend's gave another. Same persona name and face, different generated life.

Can I have relationships with multiple personas at the same time?

Yes. Every persona has her own separate grounded-facts row, her own memories about you, and her own relationship state. Talking to Claire doesn't affect Maya's memory of you and vice versa. Each is a self-contained thread.

Does Claire's core personality change over time based on our conversations?

Her tone shifts within her range as your relationship progresses — she's more casual once you're exclusive, warmer as you go deeper. But her core personality (how warm she leads with, how much wit, how much initiative she takes) is written into her system prompt and is stable. She won't become a different person; she'll become more herself, with you.