Mann
मन
Get the app
← All posts

How AI journaling actually works (and where it fails)

15 April 2026 · 7 min read

If you have a healthy suspicion of "AI" being slapped onto every product, this post is for you. We're going to walk through, in concrete terms, what happens between the moment you write an entry in Mann and the moment a reflection appears on your screen — and where the seams are.

What you actually send us

When you finish writing an entry in Mann, your phone does three things, in this order:

  1. Computes a 100-character preview of your entry, in plain text. (This is the only plaintext snippet that ever leaves your device.)
  2. Encrypts the full entry with AES-256-GCM, using a key derived from your password and a device-only secret. The encryption happens in your phone's secure enclave — iOS Keychain or Android Keystore.
  3. Uploads two things to our servers: the encrypted blob (gibberish to us) and the 100-character preview (readable, but only the first sentence or two).

That's it. Your full journal entry, plain-text, is never on the wire and never on our servers.

What happens server-side

Our backend stores the encrypted blob and routes the preview to Google Gemini. Gemini is a large language model — the same family of model behind ChatGPT and Claude. We pay Google for API access, which means our preview snippets are processed under a paid contract that prohibits Google from using them to train models. (You can read the specifics in their Generative AI Terms.)

We send Gemini three things: the preview, a system prompt that gives Mann its personality and Indian context, and your most recent entries' previews so Mann can remember.

Gemini sends back a few short paragraphs. We forward them to your device, where your phone encrypts them again before storing. Now even the AI's response sits as ciphertext in our database.

Where it gets specific

The system prompt is what makes Mann Mann. Here's a real fragment:

You are Mann (मन), a warm AI journaling companion for Indian users. You understand joint family dynamics, career pressure, arranged marriage anxiety, the concept of izzat, and urban Indian burnout. Speak naturally — mix English and Hindi when it feels right (Hinglish). Never diagnose. Never give medical advice.

We also tell the model the names of two specific helplines — iCall and Vandrevala — to surface if your entry contains crisis language. We update this prompt monthly based on what users tell us is or isn't landing. (The whole prompt is in our Cloud Functions source — we're not hiding it.)

Where it fails

Three places, honestly:

1. Generic responses

The most common AI failure is generic-sounding empathy. "It sounds like you're going through a tough time" is not a journal reflection — it's a chatbot trying to fill space. We've explicitly told Mann to quote a phrase from your entry back to you, every time. When it doesn't, we treat it as a bug and tune the prompt.

2. Pattern-matching that's wrong

Mann remembers, but memory is not understanding. It might notice you wrote about your manager twice in a week and conclude there's a "pattern of work stress." Maybe. Or maybe two unrelated days felt the same way for completely different reasons. Treat the pattern callouts as starting points, not verdicts. You are the author. The AI is a careful reader, not the editor.

3. The hard stuff

If you write about self-harm, abuse, or thoughts of suicide, Mann is not equipped to help you. It will surface crisis numbers, but it cannot replace a human who knows you. We are explicit about this in the app, and we have an in-app screen with iCall, Vandrevala, and NIMHANS contacts that's one tap from anywhere. Please use them. Mann is a journal, not a therapist.

Why we use Gemini specifically

We tested four models before settling on Gemini 2.0 Flash:

  • It's fast (sub-second responses for short prompts).
  • It supports the Indian languages we need natively, including Hindi, Tamil, Telugu, and Bengali.
  • Its safety filters caught self-harm language with the lowest false-positive rate.
  • It runs in asia-south1 (Mumbai), keeping latency under 500ms for most users.

Could we self-host an open-source model? Probably. We've benchmarked Llama 3 and Mistral on our prompts, and the results aren't yet at the bar we want. We'll revisit every six months.

What we'd like to do next

Two things, honestly:

  • On-device reflection. The dream is to run a small reflection model directly on your phone, so even the 100-character preview never leaves it. Apple's on-device foundation models are getting close. We'll switch the moment quality is comparable.
  • Multi-entry insights. Right now, Mann reflects on one entry at a time. The weekly report stitches a week together. We want monthly and quarterly views — a way to see how a story arc actually moved across your life.

If you have a question about how the AI works that we haven't answered, send it to hello@mannjournal.app. We'll publish the answer.

Want to start journaling tonight?

Mann is free to download. Three entries a day, no credit card.

Download Mann