Skip to content

Personal AI desk companion

Say “Hey Milo” and stop typing.

Milo runs all day on the spare phone next to your monitor. It keeps your tasks, speaks your reminders out loud, reads and replies to your WhatsApp, knows where the family is, and roasts you when you dodge a lecture. The heavy work goes to Hermes, and code goes to Kiro.

  • Full-duplex voice
  • Hindi + English
  • WhatsApp
  • Hermes + Kiro
  • Runs 24/7
12 Day StreakKiosk Active
--:--AM:--

 

Next reminderSubmit the report — 2:30 PM

Voice first

It's a conversation, not a command line.

Milo streams your microphone straight to a speech-to-speech model and streams the reply back as audio. You can interrupt mid-sentence and it stops talking — the way a person would.

  • Milo thinking, with a lightbulb overhead.

    Barge-in that works

    Full-duplex audio in both directions. Start talking over Milo and it yields the floor instead of finishing its paragraph.

  • Milo pointing at something offscreen.

    Tools, not guesses

    Milo doesn't pretend to save your task. It calls a real tool, writes to a real table, and your list updates while you're still talking.

  • Milo sitting cross-legged, meditating.

    Quiet when idle

    Between conversations it's just a clock. Say the wake word, or tap Milo, and it comes back.

Tasks & reminders

“Remind me in two hours to submit the report.”

That’s the whole interaction. Milo stores the task with a future timestamp and schedules the alert. When the timer fires, the app wakes to the foreground, Milo appears, and it says the thing out loud.

  • Milo holding a reminder bell.

    Spoken alerts

    Not a buzz you swipe away without reading. Milo pops to the foreground and tells you what's due.

  • Milo jumping with confetti.

    Streaks worth keeping

    Finish your Face Gym routine and the streak ticks up on the idle screen, where you'll actually see it.

  • Milo asleep on a pillow.

    Night mode

    After hours the screen dims to deep plum, Milo curls up, and the room stops glowing. Try the toggle up top.

Bilingual by default

Your mom shouldn't have to speak English to it.

Milo understands Hindi and English and replies in whichever one you used. Tell it you’re stepping out and it switches into message-taking mode: anyone can talk to it while you’re gone, and it stores what they said with a timestamp.

When you get back, ask “any messages?” and Milo summarises them — in the language each person actually spoke.

Milo in a determined, flexing pose.

“याद दिला देना कि उसे ये करना है।”

Milo: “Got it — मैं याद दिला दूँगा।”

Your phone, your people

Your WhatsApp and your family, one question away.

A companion app on your main phone feeds Milo your new WhatsApp messages. It reads them out, and when you tell it what to say, it replies for you. Ask “where’s everyone?” and you hear places, not coordinates.

Reads and replies

WhatsApp
  • WhatsApp · Rohanbhai DBMS notes bhej de
  • MiloRohan wants the DBMS notes. Want me to reply?
  • YouTell him I'll send them tonight.
  • MiloSent: “Tonight pakka, bhej dunga.”

Where’s everyone?

Shared location
Bhaiya
College4 min ago
Maa
Homejust now
You
At your desklive

Milo“Bhaiya’s at college and Maa’s at home. Everyone’s where they should be.”

Sarcasm, on the house

It notices when you're dodging the lecture.

Milo checks today’s screen time against the important things you keep pushing back. Postpone a lecture once and it lets it go. Postpone it while Instagram is at three hours and it stops being polite.

Today’s screen time

Instagram
3h 04m
YouTube
1h 12m
WhatsApp
48m

PostponedDBMS lecture, 3 times

Milo winking.
“Sir, you've spent 3 hours on Instagram today, and you're still single. The lecture you postponed three times is still waiting.”
  • Milo pointing at something offscreen.

    Knows your screen time

    The companion app sends Android's usage stats to Milo, so “how long was I on Insta?” gets a real answer, not a guess.

  • Milo thinking, with a lightbulb overhead.

    Tracks what you're dodging

    Postpone a lecture or an important task again and Milo remembers. Overdue work doesn't quietly disappear from the list.

  • Milo winking.

    Roasts you, lovingly

    It puts the two together. Celebrates your wins, calls out your excuses, and hypes you back into the lecture.

Heavy work, in the background

Hand it off. Hear the result.

Milo doesn’t make you wait on slow work. Email and research go to Hermes, code goes to Kiro, and you keep talking. When a job finishes, Milo tells you out loud.

  • Hermes

    Done

    Gmail · research · job tracking

    Reply to the Google email

  • Kiro

    Ready for review

    Coding agent on your dev machine

    Fix the landing page build

  • Delegating doesn't block you: Milo returns right away and you keep talking.
  • Ask “any update from Hermes?” or “what's Kiro doing?” whenever you like.
  • Hermes reads your Gmail and sends the replies you ask for.
  • Milo never says Kiro “shipped” something. Changes wait for your review.

Talk to Milo

Milo is speaking
  • YouAsk Hermes to reply to that email from Google.
  • MiloSent to Hermes.
  • YouAnd fix the landing page build.
  • MiloSent to Kiro.
  • MiloHermes replied to Google.
  • MiloLanding build fixed. Ready for your review.
Milo giving a thumbs up.Always listening for “Hey Milo”

Face Gym

A coach that notices you skipped a day.

Guided face and posture routines with Milo counting you through them. It’s the reason the streak exists — small daily things are the only ones that stick.

How it's built

Four pieces, one memory.

The desk phone is a thin client. All the intelligence (model streaming, tool dispatch, storage) sits in a relay you control, and the slow work runs on agents Milo can call.

  1. The devices

    A spare Android phone in kiosk mode runs the clock, tasks, Face Gym and a mic that streams over a WebSocket. A companion app on your main phone sends it WhatsApp, screen time and location.

  2. The relay

    A Node service that bridges audio to a speech-to-speech model, runs Milo's tools inline, and writes to your own tables. Self-hosted behind auto-TLS.

  3. Hermes

    A second agent on its own box for the slow work: Gmail, research, job tracking. It reads the same memory Milo does, so nothing gets re-explained.

  4. Kiro

    A coding agent on your dev machine. Milo sends it a brief, Kiro makes the change, and leaves it uncommitted so you review it before anything ships.

Coming next

Milo without the phone.

Because the relay holds the intelligence, the client can be almost anything. Next up is a dedicated ESP32-S3 device — a microphone, a speaker, a small screen, and no operating system to fight for always-on.

Same relay, same tools, same memory. Just a purpose-built body instead of a repurposed one.

Target build

Board
ESP32-S3, octal PSRAM
Audio in
I²S mic, 16 kHz mono
Audio out
I²S amp + speaker
Transport
Opus over secure WebSocket
Display
320×240 clock face
Milo standing and giving a thumbs up.

Built for one desk. Mine.

Milo is a personal project, not a product launch — no signup, no waitlist. It’s here because a spare phone and a good model turned out to be a genuinely useful assistant.