\n\n\n\n Simulating People Is Easy Until They Change Their Minds - AI7Bot \n

Simulating People Is Easy Until They Change Their Minds

📖 4 min read•766 words•Updated Oct 6, 2026

It’s 11pm and you’re testing a support bot you built last week. You’ve wired up five synthetic personas to stress-test it: a frustrated power user, a confused newcomer, a price-sensitive shopper, a bargain hunter, a churn risk. The model plays all five convincingly. The transcripts read great. You ship it.

Three weeks later the real conversations come in and none of them look like your test set. Your personas were photographs. Your users are weather.

I’ve hit this wall enough times that a startup called Mirror Particle caught my attention this week. The company is building a foundation model — a world model built from scratch, in its founder’s framing — to simulate why humans do what they do and how human behavior shifts over time. It has raised angel investment, says it’s close to closing its first venture round, and will compete in the Startup Battlefield 200 at TechCrunch Disrupt 2026 in San Francisco on October 13-15.

That’s the whole verified picture. No benchmarks, no architecture diagram, no paper. But the problem it names is one that anyone building persona-driven bots runs into fast, and that’s worth talking about on its own terms.

The static portrait problem

Mirror Particle’s stated pitch is that it wants to track not just a static portrait of a person or audience, but what changes, what prompts the change, and how much that change affects behavior. Three variables: the delta, the trigger, the magnitude.

If you’ve built anything that models users, you know why those three are hard. When I prompt a language model to “act as a 34-year-old freelance designer evaluating project management tools,” I get a plausible average of everything written by and about people like that. It’s a composite. Composites don’t have Tuesdays. They don’t get burned by a bad invoice and suddenly care about payment features they ignored a month ago.

The company argues that language models fall short for market research and brand strategy, and from a builder’s seat, the mechanism of that failure is pretty legible. Text corpora encode outcomes, not transitions. Someone writes a review after they’ve switched tools. The switching itself — the slow accumulation of annoyance, the one event that tipped it — mostly goes unrecorded.

What this changes about how I’d architect a persona system

Whether or not Mirror Particle delivers, the framing is a useful design constraint. If you’re building synthetic user simulation today, the practical lesson is to stop treating a persona as a prompt and start treating it as a state machine.

  • Separate the person from the moment. Keep stable traits in one store and current state in another. Traits rarely move. State should move constantly.
  • Make events first-class. Your simulation loop needs an event bus, not just a conversation history. A price change, a competitor launch, a failed checkout — each one should be an object that can modify state.
  • Log the transition, not the snapshot. Store the before-state, the event, and the after-state as a triple. That’s your training data later, and it’s the thing your logs almost certainly don’t capture right now.
  • Weight the effect. Not every trigger lands the same. A bad experience in week one of a subscription hits differently than one in year three. If your model treats every event as equally decisive, your simulated churn will look nothing like real churn.

You can build a crude version of this on top of existing models in an afternoon. A trait dictionary, a state dictionary, an event queue, and a step function that takes an event plus current state and returns updated state with a short rationale. It’s not a world model. It’s a scaffold that asks the right question, and it will already outperform five static prompts.

The part I’m skeptical about

Building a foundation model from scratch is expensive, and “from scratch” is a claim that usually means someone decided existing pretraining data was the wrong shape for the problem. For behavioral transitions, that reasoning holds up logically. Where it gets hard is data. Transitions are precisely what’s scarce. You can’t scrape the moment someone changed their mind, because nobody narrates it in real time.

So the interesting question for Disrupt isn’t whether the model architecture is clever. It’s where the training signal comes from. Longitudinal panels? Behavioral telemetry? Something synthetic? That answer determines whether this is a real modeling advance or a well-framed research product.

Either way, the vocabulary is worth stealing. I’ve spent too long building bots that treat users as fixed inputs, then acting surprised when the fixed inputs move. Change, trigger, magnitude. Three fields I should have added to my schema years ago.

🕒 Published:

💬
Written by Jake Chen

Bot developer who has built 50+ chatbots across Discord, Telegram, Slack, and WhatsApp. Specializes in conversational AI and NLP.

Learn more →
Browse Topics: Best Practices | Bot Building | Bot Development | Business | Operations
Scroll to Top