A voice assistant that actually runs on your laptop, not in the cloud
Jarvis is a Python voice assistant for Ubuntu that controls your desktop, answers questions, and learns new tricks via MongoDB.

What it does
Jarvis is a local voice-command assistant for Ubuntu 20.04. It opens apps, adjusts volume, checks weather, sets alarms, and answers general questions by calling WolframAlpha, OpenWeatherMap, and other APIs. You can speak or type, switch modes on the fly, and teach it new responses with a “remember” command.
The interesting bit
The skill-matching engine uses TF-IDF vectors and cosine similarity to figure out what you meant — no deep learning, just classic NLP doing the routing. Everything runs asynchronously, and command history plus learned skills persist in MongoDB.
Key highlights
- Desktop integration: opens LibreOffice, Firefox, bash, YouTube, and controls system volume
- Dual input: voice or text, swappable at runtime via voice command
- Extensible skill system: register new skills in
skills/registry.pywith tags and a function pointer - Configurable wake name (Jarvis, Sofia, John, etc.) without restarting
- MongoDB backend for history and learned responses
- CI/CD via Travis CI with automated master releases
Caveats
- Ubuntu 20.04 and Python 3.8 only; portability is unclear
- Requires free API keys from three external services before first run
- README has typos (“tell_the_skills me the weather”) and the logo claims “Intelligent AI Consciousness” — manage expectations accordingly
Verdict
Good for developers who want a hackable, offline-ish voice assistant with full desktop control and don’t mind wiring up API keys. Skip it if you need cross-platform support or expect modern LLM-level conversation.