VoiceAssistant is a resource-efficient and customizable voice assistant that is still in the early stages of development but already functional. 🚀
Privacy is our top priority, and VoiceAssistant ensures that all operations are performed offline on your local device, keeping your data secure and protected. 🔒
The main goal of VoiceAssistant is to provide a fully customizable and extendable voice assistant that can be controlled entirely using voice commands. 🌟
The project has been tested on x86_64 Linux, but it should theoretically work on the following platforms:
Note: The Android build works and starts, but I can't load the speech-to-text plugin.
In the near future, I'll add settings to the app!
To customize the commands, edit the commands/<your_language>/default.json
file.
There are some default commands. See Add Commands.
To add your command, edit the commands/<your_language>/default.json
file. The supported values are:
Name | Type | Description | Notes |
---|---|---|---|
commands |
Array of strings | All commands that the voice assistant should react to | Required |
funcName |
String | The name of the function to call (MainWindow::<funcName> ) |
|
responses |
Array of strings | It selects a random response from the array | Use [wait <number of ms>] to wait between words |
program |
String | A program to execute | |
args |
Array of strings | Arguments passed to program |
${TEXT} will be replaced with the voice input |
sound |
String | Path to local or remote file that gets played | Volume can be controlled via voice/GUI |
See the build section in INSTALL.md (direct link).
You can check the translation status of VoiceAssistant on Weblate (click the image below):
VoiceAssistant uses the following open-source projects:
Thank you to these amazing projects and their contributors for making VoiceAssistant possible! 🙏