Mien
your mood, reflected
long session · 00:00 / 00:00
camera off
Say a sentence — how's it going?
a little louder — barely hearing you
speak now · esc to stop
The mirror is dark
Turn on your camera and mic to begin. Nothing leaves this machine except the frames you choose to read.
mic
Nothing read yet
When you're ready, press Read my mood and the mirror will tell you what it sees.
Session
Your readings will gather here as the session goes on.
Settings
Mien runs on your own Anthropic key. It's stored only in this browser.
Get one at console.anthropic.com. Used directly from your browser to read your frames — nothing is sent anywhere else.
Any vision-capable Claude model your key can access. If a read fails with a model error, set a valid model here.
How often auto-read captures a frame. Voice check never runs on auto-reads — only on manual ones.
How strongly Mien reacts to your voice — both the mirror's glow and how easily voice check picks up speech. The room's background noise is also tracked automatically, so a quiet room already gets more sensitive detection on its own; raise this further if it's still missing you, or lower it if background noise is being picked up as speech.
How long a manual voice-check listens in one shot. Kept under 30s on purpose — browser speech recognition drops out and stops producing a transcript well before it reaches a minute of continuous listening, so a single very long recording would quietly capture nothing useful. For anything longer, use a long session below, which takes fresh short voice samples repeatedly instead of one giant one.
When the "Voice check" switch is on, a manual read also records you speaking a sentence, for the length set above. Pitch, volume, and pace are measured on-device from that audio, which never leaves your machine as audio. If your browser has built-in speech-to-text, it's used for a transcript — in most browsers (e.g. Chrome) that briefly sends the audio to your browser vendor's own speech service, not Anthropic's, to produce the text. Only the resulting numbers and transcript are then sent to Claude with your key, alongside your face, and it's asked to weigh both. This is tone-of-voice analysis, not voice identification — Mien never tries to recognize or verify who is speaking.
Long session
A long session is not one continuous 30-minute analysis call — that isn't something Claude's API (or browser speech recognition) can actually do. Instead it repeats short read cycles automatically for up to 30 minutes, then summarizes the whole session for you. Max 30 minutes.
How often each read cycle fires during a long session. Each cycle is a normal frame-burst read, with a short voice sample too if voice check is on. Shorter intervals over a long duration mean more API calls — mind your usage.
When on, Mien compares consecutive frames in each capture burst on-device (a simple pixel-difference measure — not real facial-landmark or blink tracking, which this app doesn't do) and sends a single "motion energy" number alongside the images, as one more corroborating cue for energy/tension. No image data is created or sent beyond the frames already being captured.
Not calibrated — every face is read against a generic neutral, not yours
Look relaxed, not smiling, camera on, then capture. Resting faces vary a lot between people — this lets Mien compare you to you, not to a generic template. This is calibration only, not identity recognition — Mien does not verify who is in frame.
Frames — and your baseline photo, if you set one — are sent only to Anthropic's API using your key, and only when a read runs. Voice cross-check, when enabled, adds a short on-device audio analysis to manual and long-session reads as described above; the raw audio itself is never sent to Anthropic. Long sessions repeat this the same way, on the interval you set, for up to 30 minutes — camera and mic stay visibly active the whole time (see the badge in the header) and Emergency Stop ends it instantly. Your reading history, baseline, and settings live in this browser's local storage and never leave your device otherwise. Clear them any time. Mien does not perform facial or voice identity recognition at any point.
Tip: press R anytime to take a reading without reaching for the mouse, or Esc anytime for an emergency stop — it cancels whatever's running (including a long session) and turns off the camera & mic instantly.
Tip: press R anytime to take a reading without reaching for the mouse, or Esc anytime for an emergency stop — it cancels whatever's running (including a long session) and turns off the camera & mic instantly.
Review accuracy
For each reading, enter what was actually true. Nothing is sent anywhere — this stays in your browser and only feeds the accuracy numbers below and your exported JSON.