A reframe is supposed to feel like the calmer, wiser version of your own voice handing you the thought back in a shape you can actually hold. For a long time, ours did not. They were correct — clinically sound, gently worded, technically a reframe — and they still landed like a greeting card. The most common note we got, by a wide margin, was some version of: "it feels generic."
That feedback is easy to nod along to and surprisingly hard to fix. "Generic" is not a bug with a line number. It is the absence of something. This issue is about what that something turned out to be.
Why "make it warmer" did not work
Our first instinct was the obvious one: turn up the warmth. Soften the language, add reassurance, lean into kindness. It made things worse. A reframe that is all warmth reads as a stranger being nice to you, and a stranger being nice to you about your specific 2 a.m. spiral is its own small insult. The problem was never that the reframes were too cold. It was that they did not know anything about the person reading them.
A good reframe from a friend works because the friend has context. They know you tend to catastrophize before a deadline, that you are hard on yourself about money, that "I'm fine" from you means the opposite. Our model knew none of that. It was reframing the sentence, not the situation.
What we actually changed
We built a lightweight profile that stays on your device: the patterns you reframe most, the goals you have set, the tone you keep choosing when you tap for another take. None of it is a questionnaire. It is assembled quietly from what you already do in the app. The model now writes with that context in front of it, the way a friend would.
Then we did the unglamorous part. We rewrote the instructions the model follows so that specificity is the requirement, not a nice-to-have. A reframe now has to name the actual thought, not gesture at the category of thought. "That meeting" instead of "your challenges." The word you used, not a tidier synonym. If it could be pasted under any other person's worry without changing a syllable, it fails.
Finally, the "give me another" button got smarter. It used to reroll the whole thing. Now it remembers what you just rejected and moves away from it, so the second take is a genuine alternative instead of the same sentiment in a new coat.
The honest limitation
Making AI sound like a specific person is hard in a way that does not fully resolve. The more personal a reframe gets, the worse it feels when it misreads you — a generic miss is forgettable, a personal miss stings. So we tuned toward earning specificity rather than assuming it. Early on, the app is a little more reserved. The longer you use it, the more it sounds like someone who has been paying attention. That felt more honest than pretending to know you on day one.
If you have been away for a while, this is the update worth coming back for. Open the app, reframe one real thought, and tap for a second take. It should sound a little more like you. If it does not yet, keep going — that is the part that gets better the more you use it.