Real-time voice · Memory · Live web search

Anna

NimbleBuddy is a voice-first AI companion. Talk to Anna out loud — she answers in under a second, picks up where your last call left off, and looks things up on the live web with Nimbleway.

Features

A companion, not a chatbot.

Everything happens by voice, in real time, with a personality that stays warm and wholesome.

Real-time voice

Speak naturally and interrupt any time. Speech-to-text, LLM and a lifelike voice stream over a low-latency real-time network.

Cross-session memory

Tell Anna your name and she remembers what you talked about last time — stored per user and re-injected on your next call.

Live web search

Ask about news, weather or anything recent. Anna calls Nimbleway's nimble_search tool over MCP and answers in a sentence or two.

Chrome extension

Talk to Anna from the toolbar without opening a tab — a Manifest V3 popup on the same backend, memory and search.

Demo

See it in action.

The web app on the left, the toolbar popup on the right.

How it works

From your voice to the live web and back.

You speakMic audio streams over a real-time channel.
TranscribedDeepgram nova-3 turns speech into text.
Anna thinksOpenAI with your memory in context.
SearchesNimbleway MCP when she needs fresh facts.
RepliesMiniMax TTS speaks back in real time.
Nimbleway MCP web search Deepgram · OpenAI · MiniMax voice pipeline Next.js 16 · React 19 FastAPI · Python SQLite memory Chrome Manifest V3
Built with

The tools behind NimbleBuddy.

Nimbleway

Live web search inside the product. Anna calls Nimbleway's MCP server whenever she needs fresh facts.

Claude

Used to design, build, debug and ship the app, the Chrome extension and this page.

Gemini

Used during development of NimbleBuddy.

Antigravity

Used as a development environment while building NimbleBuddy.

Run it

Try Anna on your machine.

You'll need real-time voice credentials (App ID + Certificate), and a Nimbleway API key for web search.

1 · Web app

Clone, add your keys to server/.env.local, start both servers, open localhost:3000.

git clone https://github.com/vim719/NimbleBuddy
cd NimbleBuddy
bun run setup
# add your voice App ID, App Certificate
# and Nimbleway API key to server/.env.local
bun run dev

2 · Chrome extension

With the backend running, build the popup (or unzip the download) and load it unpacked.

cd extension
bun install && bun run build
# chrome://extensions → Developer mode
# → Load unpacked → extension/dist

Why no live demo link? Anna's backend holds the voice App Certificate and API keys, so it runs server-side rather than on GitHub Pages. Clone and run locally in about two minutes.