← All projects

Project

Jarvis — A Voice Assistant

I architected and directed Jarvis with AI-assisted implementation, building a working voice assistant that connected wake-word detection, speech recognition, pluggable language models, MCP tools, and speech synthesis.

Jarvis followed my earlier Walter assistant, combining a voice interface with selectable language models and tools.

Pipeline design

microphone → wake word → voice activity → speech recognition → LLM / MCP tools → speech synthesis

The design used openWakeWord, Silero VAD, faster-whisper, a selectable cloud or local language model, and an XTTS voice. Swappable interfaces separated wake-word, speech-recognition, language-model, and speech-synthesis backends.

Sentence streaming was intended to begin speech before the model finished its whole response. A central action gate was designed to mediate consequential tool actions.

Separate training and serving

The voice-training project developed a separate fine-tuning pipeline that produced versioned voice bundles. Keeping that seam separate lets the training workflow and assistant serving loop evolve independently.

Skills & tools