Mia

Mia is Udit Raj's personal AI assistant: a local-first agent with memory, tools and a native macOS client, built and used daily by one engineer.

Overview

A personal AI assistant, built for one

Mia is the personal AI assistant I built for myself. She runs locally on my own machine, remembers context across conversations, and uses a set of tools to do real work for me, not just chat. She talks to me through a native macOS app I wrote in Flutter.

Why I built her

Every assistant I tried belonged to someone else: their memory, their limits, their idea of what "helpful" means. I wanted one that is mine end to end, so I could learn how agents actually behave when they run every day on real tasks. Mia is where I test ideas on agent routing, memory and evaluation before they reach anything else I build.

What she does Holds a long-running memory of preferences and ongoing work Routes each request to the right model or tool through an agent orchestrator Runs a local model first, so private context stays on my machine Is measured against an evaluation probe suite I wrote, rather than judged by feel

Mia is a personal system. She isn't available to use and there's no signup. This page documents the work.

Tags: Python, FastAPI, Ollama, Flutter, WebSockets