offline · laptop + android · voice assistant

N.O.V.A v2

A voice assistant that never leaves your devices.

A local LLM, wake-word commands, and clean call transcripts and minutes — on your laptop and your Android phone, no cloud.

N.O.V.A orbit and star emblem
01 / modules
MOD-01

Offline-first

Local LLM routing with zero network calls by default.

MOD-02

Wake-word activation

Say a phrase to arm the assistant, completely hands-free.

MOD-03

Minutes & transcripts

Labeled transcripts and action items for calls through apps like Meet, Zoom, or WhatsApp — not raw cellular calls, which Android blocks for any third-party app.

MOD-04

Laptop + Android

The same assistant in the background on your desktop and your phone, each running its own local model.

02 / signal paths
Lane A · voice command
Mic→
Wake word→
Speech-to-text→
Local LLM router→
Tool execution→
Voice reply
Lane B · recorder
Capture (mic + system audio)→
2-channel WAV→
Transcribe→
Speaker labels→
Minutes→
Store & view
03 / stack
Desktop
RuntimePython
LLMOllama (Qwen2.5 / Llama 3.2)
ASRfaster-whisper
Audiosounddevice + loopback
Voice replyPiper · XTTS-v2 clone (trial)
Android
RuntimeKotlin, native
LLMllama.cpp (on-device, 1–4B)
ASRwhisper.cpp
Wake wordForeground service
04 / why n.o.v.a
N.O.V.ACloud assistants
Works offlineYesRarely
Data leaves your deviceNoUsually
Open sourceYesNo
Customizable toolsYesLimited
05 / status
Now
  • Desktop prototype

    in progress

    Python assistant built on the original N.O.V.A codebase, with Ollama for offline routing.

  • Cloned voice

    testing

    XTTS-v2 for a voice cloned from a recording, with Piper as the lighter fallback when GPU memory is tight.

Next
  • Faster-Whisper + speaker labels

    planned

    Swap the current speech recognition for faster-whisper and add pyannote speaker identity.

  • Free-form requests

    planned

    Let the local LLM handle plain-language requests instead of a fixed list of commands.

Later
  • Native Android app

    planned

    Its own on-device model, wake word, and speech-to-text. Android only, after the desktop prototype.

  • Django backend

    exploring

    Rebuilding the backend on Django is under consideration.

Planned items are not built yet. Details in the roadmap.

06 / proof, not promises
Sample call · 2 speakers

You: Can we push the launch to Thursday?

Sam: Thursday works if design signs off by Wednesday.

You: I'll ping them today and confirm.

Generated minutes

Decision: Launch moved to Thursday.

Action: You — confirm design sign-off (due Wednesday).

Illustrative sample output, not a real recorded call.

07 / continue reading
docs / architecture

Trace every local signal path.

Read the full architecture, command model, platform notes, and build plan.

Open documentation