Repository navigation
Voice & calls
Navi can be called, not just typed at — and the whole loop is local, running on CPU on this machine, because a voice that phones home isn't hers. A call runs in four steps:
- You speak.
- faster-whisper (OpenAI's Whisper on CTranslate2, int8) turns it into text.
- Her model answers with her persona, her CLI access, and her chips intact.
- Kokoro — an 82M-parameter voice model, Apache-2.0 — speaks the answer back, sentence by sentence as it arrives, so she starts talking before she's finished thinking.
Piper is the lighter fallback engine. Nothing you say is recorded anywhere but this machine.
There is no Voice view anymore — Settings → Voice is the one voice home. It holds the call panel whole — the big Call button and the in-call panel with its wave, clock, and transcript; Hear her voice; the pipeline strip with each stage's real state; her settings card (which Whisper model hears you, which engine and voice she speaks with, her speed and pitch — saved in config/navi.config.json); the engines-not-installed guidance and diagnostics; the desktop-app microphone known-issue card; the mock notice; and the past-calls list. The same call can be started from the Chat tab — the Call button beside its composer opens the live call panel (timer, push-to-talk, End) right in the chat window, with the thread as the transcript and the composer speaking to the call; a mic beside the chat composer does push-to-talk for one-off spoken messages, and typed-chat replies can be spoken aloud too. A call is global state: start one anywhere, switch tabs mid-call, and come back to it live; ending it from Chat still files it into the conversation. The speech engines are an optional install — the installers offer them in an isolated voice/venv — and until they exist the app says voice is unavailable and names the step, rather than faking audio. Models download once into voice/models/, which sits on the persistence keep-list with her chips, the llamafile, and her Soul/Memory. Finished calls are recorded in voice/calls.json and filed into the conversation — a call is a conversation, not a separate mode. Her voice is picked in Settings → Voice: the list is auto-generated — the bridge enumerates the voices this machine's Kokoro installation actually has (the voice files it holds, or the catalog the installed package pulls from, which download on first use) — and she defaults to Isabella, the British female voice (bf_isabella).
Getting started
Talking to Navi
Navi Mesh
Chips
Knowledge & RAG
Settings & updates
- Settings & persona
- DHD — Apex from anywhere
- GitHub — the pulse, issues & backups
- Installing & updating
Help