A text-based wellness companion bot called Milo, that meets users in the moment they need it most.
Milo is a conversational companion for emotional regulation, built on Amazon Lex, that meets users in the moment with science-backed techniques for stress, focus, energy, and calm.

Milo is the conversational bot of Mindgrid, a wellness companion that helps users manage everyday stress, regain focus, and stay grounded through brief, evidence-backed techniques.
Product
Conversational wellness & mindfullness companion.
Problem
Mindfulness is too big to reach for in the moments we need it most.
Audience
Users seeking quick, in-the-moment nervous system regulation.
My Role
End-to-end conversation design + Lex/Lambda build.
Tools
Amazon Lex, AWS Lambda, Figma, FigJam.
Duration
1 month (Spring 2026).
Team
3 members.
Vision
Text-first, with potential voice + ambient extensions.
How a session works
A user comes in with a feeling, stressed, distracted, low energy, or calm and Milo routes them to the right category of research-backed technique. Each Check-In offers two options, so the user always has a choice without ever facing a full menu.
Stressed
→ Box Breathing or the Physiological Sigh
Distracted
→ 5-4-3-2-1 Grounding or Single Point Focus
Low Energy
→ Movement reset: dance, shake it out, or walk
Calm
→ Body Scan or Gratitude reflection
Most of the time we push through, because the tools we have for these moments ask too much of us in return.
Milo is built for those moments. A conversational companion you can reach for when you need a reset, a breath, a grounding exercise, or a pause. Not a practice to commit to but just a quick check-in and a science-backed technique to help your nervous system find its way back to baseline.
Mindfulness, made small enough to actually reach for.
Core idea
“Milo isn’t an app you browse. It’s a conversation you have. A check-in that takes thirty seconds, points you toward something useful, and lets you go.”
On one side, meditation libraries are built around browsing and on the other, clinical chatbots are built around CBT scripts. Both solve real problems. Neither solves the in-between one, a user who needs something quickly, conversationally, and warmly without navigating a library or working through a worksheet.

| App | Strength | Gap |
|---|---|---|
| Headspace, Calm | Produced, polished, library-rich | Requires choice, feels like commitment |
| Insight Timer | Massive free library, community-driven | Overwhelming, no curation in the moment |
| Wysa, Woebot | Conversational, always available | Clinical tone, scripted, feels transactional |
| Milo | Conversational + warm + brief | — |
Milo’s positioning sits intentionally in that gap, the warmth of a meditation app, delivered through the conversational immediacy of a chatbot.
Every design decision serves that hierarchy. The warmth, the brevity, the language, all of it exists to lower the cost of reaching for help when a user's nervous system is already taxed.
Mental health language often sounds like a worksheet. Milo speaks the way a thoughtful friend texts back: present, unhurried, never performative.
Every interaction is built for the moment a user actually has, not the moment they wish they had. Most sessions take under two minutes from check-in to close.
When Milo offers a technique, it offers two , never a list. Choice supports agency; abundance creates friction.
Every technique is evidence-based, but the user never sees the citation. The science holds the structure up; the voice carries it across.
These principles shaped everything downstream , which techniques to include, how intents were named, how the Lambda function decides what comes next, even how the closing message lands. The regulation goal came first. The voice and the architecture both serve it.
Using Google's Conversation Design Guidelines, I worked through the Conversation Fit checklist, a diagnostic tool for identifying whether dialog is a better solution than a screen-based UI for a given feature. Five of seven criteria checked clearly.

Users already have human-to-human conversations about this topic.
People talk to friends, therapists, and journals about how they're feeling. Conversation is the native format for emotional check-ins.
The interaction is brief.
Milo is designed for thirty-second to two-minute exchanges, not extended sessions.
A screen-based UI would require multiple taps.
A traditional wellness app forces the user to open, browse, filter, and select. Milo replaces that with a single sentence.
A screen-based UI would require navigating multiple apps or widgets.
Mood tracker → meditation library → breathing tool. Milo collapses three tools into one conversation.
Users feel comfortable typing about this topic.
Text-based check-ins are already a familiar form for journaling and mental health support.
Users have hands or eyes busy with another task.
Milo isn't designed for multitasking, the techniques benefit from focused attention. Deliberate choice, not a gap.
Divided attention improves the interaction.
Milo is meant to be a brief pause, not a background tool.
Conversation wasn’t the assumption, it was the conclusion.
Each technique had to meet three criteria, brief, doable anywhere, and supported by evidence in nervous system regulation, attention research, or positive psychology.
When you feel
Down-regulate the nervous system.
Breathwork patterns drawn from clinical and performance research, used to regulate the nervous system in the moment.
Equal counts of inhale, hold, exhale, hold. Used by Navy SEALs and first responders for acute stress regulation, short enough to fit between meetings, structured enough to give the mind something to hold onto.
Two short inhales followed by a long exhale. Studied at Stanford as one of the fastest known interventions for in-the-moment stress reduction, works within a single breath cycle.
Milo is built on Amazon Lex for natural language understanding and AWS Lambda for conversation logic. Lex handles intent recognition. Lambda handles the thinking, deciding which technique to deliver, how to follow up, and how to keep the conversation alive rather than scripted.
CheckInUser initiates a wellness check-in with Milo to get support for how they are feeling.
StressedIntentDelivers a breathing technique for users feeling stressed or anxious.
DistractedIntentDelivers a focus exercise for users feeling temporarily distracted.
LowEnergyIntentDelivers a movement technique for users feeling tired or low on energy.
CalmIntentDelivers a maintenance mindfulness technique for users feeling calm or balanced.
TryAgainIntentHandles whether the user wants to try a different technique after a session that didn't fully help.
SessionCloseIntentCaptures how the user feels after completing a technique and delivers a closing message.
FallbackIntentDefault intent when no other intent matches.
Four custom slot types capture the structured pieces of the user’s input that Lambda needs to route the conversation.
UserStateCaptures the user's current feeling state , stressed, distracted, low energy, or calm , and routes the conversation accordingly.
TechniqueChoiceCaptures which of the two offered techniques the user wants to try, so Lambda can deliver the right one.
FeelingAfterCaptures how the user feels after completing a technique. Used by SessionCloseIntent to shape the closing message.
YesNoResponseCaptures simple yes/no answers used across confirmation prompts and the try-again flow.
Slots capture the structured signals, what the user is feeling, which technique they picked, how it landed, and pass them to Lambda, which routes to the right response and tracks session context. Lambda is what allows Milo to feel responsive rather than rigid, remembering what was already tried, adapting the closing message, shaping the conversation in real time rather than reading from a script.
Most users complete a full Milo session in three to five exchanges. Depth lives in the warmth of each message, not the number of steps.

The branching logic prioritizes the user’s agency at every turn. After a technique, Milo asks how it landed and offers to try something different rather than assuming success. The conversation always closes on the user’s terms.
Milo’s ScriptThe prototype is functional in the Amazon Lex test console and demonstrates the full conversational arc across all four feeling states, the welcome, the technique delivery, and the closing exchange for each.
Each flow is presented in context, what the user types, how Milo responds, and how the conversation lands.
Lex and Lambda are well-documented. Getting Milo to sound warm without sounding saccharine, brief without sounding curt, took more iteration than any other part of the build.
The first draft of Milo's script was too long, too clinical, or too cute. The bot got better every time I cut something.
Milo is designed for moments when someone needs quick support. That shaped the tone, calm, warm, and human, and the interaction style, simple and easy to follow. Every response opens by acknowledging how the user feels, then immediately offers a clear, actionable next step.
The most useful thing a wellness companion can do is lower the cost of asking for help. Milo's whole design is in service of that single goal, meeting users in the moment they're already taxed, and offering a way out that fits inside the moment they have.
I want to deepen the conversational experience with AI, expand the library of science-backed techniques, and bring visual, creatively-coded interfaces into the mix, evolving Mindgrid from a chatbot into a full emotional wellness experience.