Inspiration

New managers get promoted for being good at the work, then handed the hardest part of the job with no practice: telling someone their work is late, pushing back on a peer, saying no to their own boss. Every AI roleplay tool we tried ends the same way: a conversation, a score, a paragraph of advice. Advice after the fact does not change what comes out of your mouth under pressure. Repetition of the hard moment does.

What it does

You describe the real conversation you have coming: who it is with (a role, never a name), what is happening, what you need. Rewind builds that person, with their own logic, their own objections and their own way of pushing back. Then you have the conversation out loud, or typed.

Afterwards Rewind does not grade you. It finds the exact turn where the conversation slipped and quotes your own words back to you, such as "I was just wondering if maybe". Tap Rewind and you are back at that single turn. The other person is frozen exactly as they were.

  • Say the same thing, get the same reaction. It is a rehearsal, not a slot machine.
  • Fix the move and they respond differently. The app shows the first try and the new one together and names what changed. Then you can carry on from that turn and finish the conversation on the better path.

Every rehearsal ends on the win. The sentence that finally moved them becomes your line. Tell Rewind when the real conversation is and the line waits on the home screen the day before. Afterwards it asks how it went and whether you opened with your line. A hard outcome leads straight into rehearsing the follow-up.

Three built-in scenes, one for each conversation new managers dread

  1. Giving critical feedback. "The reports keep landing late": a senior analyst, four years in, proud of the work.
  2. Setting a boundary with a peer. "Work keeps reaching your team through the side door": a peer with more tenure and leadership's ear.
  3. Saying no upward. "Your director wants one more project this quarter": a supportive boss under pressure from above.

How we built it

The rewind only means something if the other person reacts for a reason, not by chance. So the AI never decides whether they soften.

  1. An evaluator extracts literal facts from what you said. Did you name the specific instance, state the expectation, make it time-bound? Did you undermine it with softeners, or drop it when they pushed back?
  2. Plain code turns those facts, plus the frozen hidden state of the conversation, into a stance: hold, shift or concede.
  3. The AI only performs that stance, in character.

Same words give the same facts, the same stance and the same reaction. That is what makes a rewind a controlled experiment.

We tested the evaluator like production code. Before writing any app code, we set a gate: 48 adversarial retries of one sentence, including 10 written blind by a second model, must score 90% or the idea dies.

  • The fast model scored 42 to 44 of 48. It kept reading "I know you have a lot on your plate" as softening the ask.
  • The stronger model scored 48 of 48 on three separate passes, about 0.4 seconds slower per turn.

We shipped the slower one. A wrong "you softened it" note, at the one moment the product exists for, destroys trust faster than any lag.

Stack:

  • Expo and React Native (TypeScript) with Apple's on-device speech recognition.
  • A Cloudflare Worker that holds the model key, enforces limits and checks entitlements server side.
  • Anthropic's Claude for the evaluator, the counterpart and the scene builder.
  • RevenueCat for purchases and the paywall.

Saved rehearsals, your lines and your debriefs stay on the phone. There is no account.

Challenges we ran into

  • Apple enrollment from Vietnam took three attempts across the app, the website and a VPN that was silently blocking the developer site.
  • The name "Rewind" was taken. The store name is "Rewind: Hard Conversations", while the home screen still says Rewind.
  • Build 2 was rejected at upload because a dependency references the photo library. We added the purpose string, explaining that Rewind never uses it, and build 3 passed.
  • It worked at our desk and failed in Asia. Cloudflare ran the server at the nearest data centre, Hong Kong, where the model API refuses calls. Pinning the Worker to a US region fixed it for everyone.
  • App Review asked for a recording on a physical iPhone, and we did not own one. A borrowed phone and a public TestFlight link got it done in an afternoon.
  • A non-renewing purchase has no expiry date at Apple. We compute Prep Week's seven days from the purchase date and re-check it on our server, so a buyer is never locked out and never over-served.

Accomplishments that we're proud of

  • The core loop works exactly as designed: say it badly, see it, rewind it, say it better, watch it land.
  • A regression suite gates every prompt change, so "the other person got nicer by luck" cannot happen.
  • No streaks, no guilt notifications, no account. Rewind gives you a reason to come back only when there is a real conversation to prepare for.

What we learned

Correctness beats speed in the moment of truth. People forgive a half second. They do not forgive being told they said something they did not.

What's next

  • Scenes written by a company's own HR lead for their managers.
  • More languages.
  • The other chair: practising how to receive hard feedback well.

Built With

Share this project:

Updates

Submission history