DryRun is where you have the conversation badly first — with someone who pushes back, goes quiet, and doesn't let you off the hook.
LIVE ON THE APP STORE · IPHONE · ANDROID IN TESTING
A run, as it happens
3 hedges · mostly "just"
Just. Maybe. Sorry to bother you. I might be wrong but. Marked the moment you write them, with a running count of the one you lean on most. Not blocked — marked. The point is to see the shape of your own flinching before you send it, not to be corrected afterwards.
The detector runs entirely on your phone, so it never waits on a network and never sends anything to find a hedge.
Three full seconds of dead air. Most people fill it — and undo the thing they just did well. Sitting in the silence is the actual skill, so the app measures whether you did, on the device, as a fact rather than a model's opinion.
Four things, each quoted back to you word for word from your own transcript. No score out of a hundred, no grade, no encouragement you didn't earn.
Run it again and DryRun shows you the line that changed — your hedged version and your straight one, side by side. That comparison is the whole app.
The conversation you're rehearsing is about a real colleague. So there's no account, no name, no email — and no share button anywhere in the app, on purpose. Transcripts and scores never leave the device, and messages are sent only to generate a reply and are never stored. The privacy policy says exactly what that means, in the same plain words.
Delivering feedback, setting a boundary, saying no. Or write the one you're actually dreading.
Each conversation keeps its own runs and its own progress.
One softened sentence a day, rewritten straight. Sixty seconds, offline.
The evening before your conversation. No streaks, no daily pestering.
Kotlin Multiplatform — nearly all of the code is written once and runs on both Android and iOS, including every screen. The API is a Cloudflare Worker and subscriptions run through RevenueCat.
The hedge detector is deterministic and offline, which means it can be tested properly — including against the daily drill's own content, where two invariants (every soft line contains a hedge, every straight answer contains none) caught an entire missing category: pre-emptive self-deprecation. I hope this isn't a stupid question. I'm probably being dense. The thing the app is about, and it was going undetected.