A voice research companion. Right beside what you're reading.
Ask aloud. Share a screenshot. Check the sources.
Watch the demo ↗ · Quick start · Project story
Something sounds off? Ask Milo. It searches public sources, talks through what it finds, and gives you links to check for yourself.
- Ask naturally. Voice or text, with follow-up questions.
- Show the claim. Capture a screen, or drop, paste or upload an image.
- Keep your place. Float Milo beside the page in supported desktop browsers, or use it in a tab.
No installation. No continuous screen watching.
Requires Node.js 22.13+ and an OpenAI API key with access to gpt-live-1 and gpt-5.6-terra. API usage is billed to your project.
git clone https://github.com/Yun-0000/Milo.git
cd Milo
npm ci
cp .env.example .envSet OPENAI_API_KEY in .env, then run:
npm run devOpen localhost:5173 → Talk to Milo. The speech bubble switches to typing; the camera adds an image.
Self-hosting & development
npm test
npm run typecheck
npm run build
npm startThe production server runs at localhost:3000. Deployment options: Docker · Render.
Set OPENAI_API_KEY and a strong MILO_ACCESS_CODE as hosting secrets. Use HTTPS. The server uses in-memory storage and is designed for a single-instance preview.
React · TypeScript · Express · WebRTC · OpenAI
API keys stay server-side. Voice, questions and requested images are processed by OpenAI—avoid sensitive material. Screen sharing stops after capture; server-held results are temporary.
Milo can misread images or get answers wrong. Sources are there for you to verify, not a guarantee of accuracy.

