Next-Gen Voice-Activated Desktop & Laptop Personal Assistant
Control your PC, automate daily workflows, and execute tasks — both Online and 100% Offline.
- 🔒 100% Offline Mode (No Internet Required): Runs locally with Ollama (
llama3.2:3b/qwen2.5:3b), local speech recognition (faster-whisper), and offline Windows SAPI5 voice (pyttsx3). - 🌐 Multi-Provider Cloud Support: Seamlessly switch to Google Gemini, Groq (ultra-fast 500+ tokens/s), or OpenAI (GPT-4o) with one line in
.env. - 👂 Background Wake-Word Detection: Say
"Hey Quadroid"or"Quadroid"anytime to wake up the assistant without touching the keyboard. - 🖥️ Modern Desktop GUI: Sleek dark-mode floating app with real-time tool execution chips, animated voice orb, and dual voice/text inputs.
- ⚙️ Windows Automation Suite (Function Calling):
- Hardware Control: Master volume control, mute/unmute (
pycaw), screen brightness (screen_brightness_control), battery & charging stats (psutil), screen lock (Win+L), sleep. - App & Process Management: Open and close any desktop application or process (
AppOpener/psutil). - Productivity: Save & read personal notes, read/write clipboard (
pyperclip), instant desktop screenshot capture. - File Explorer: Search files across user directories and locate them in Windows Explorer.
- Web & Live Info: Instant live weather (free, no API key needed), top news headlines, Google search, YouTube & URL opener.
- Safe Shell Runner: PowerShell automation for diagnostic commands.
- Hardware Control: Master volume control, mute/unmute (
# Navigate to Quadroid directory
cd d:\GitHub\Quadroid
# Create local virtual environment
python -m venv .venv
# Activate virtual environment
.\.venv\Scripts\Activate.ps1
# Install dependencies
pip install -r requirements.txtCopy the template configuration:
copy .env.example .envEdit .env to configure your preferred mode:
- For 100% Offline Use (Ollama):
- Install Ollama and run:
ollama run llama3.2:3b - Set
LLM_PROVIDER=ollamain.env.
- Install Ollama and run:
- For NVIDIA Nemotron (e.g.
nvidia/nemotron-3-nano-30b-a3b):- Set
LLM_PROVIDER=nemotronandLLM_MODEL=nvidia/nemotron-3-nano-30b-a3b. - Add your
NVIDIA_API_KEY(from NVIDIA Build).
- Set
- For Free Cloud Speed (Gemini / Groq):
- Set
LLM_PROVIDER=geminiand add yourGEMINI_API_KEY, or setLLM_PROVIDER=groqwithGROQ_API_KEY.
- Set
- For OpenAI:
- Set
LLM_PROVIDER=openaiand add yourOPENAI_API_KEY.
- Set
.\.venv\Scripts\python run.pyBrings up the floating dark-mode app with voice orb, chat history, and background wake-word listener.
.\.venv\Scripts\python run.py --cliFast text/voice terminal interface with live tool execution tracing.
.\.venv\Scripts\python run.py --offline.\.venv\Scripts\python run.py --voice-onlyYou can speak or type natural commands such as:
- "Set volume to 40% and check my battery"
- "Mute system audio"
- "Take a screenshot"
- "Open Notepad and save a note 'Meeting at 3 PM'"
- "Search for Python files in my Documents"
- "What is the weather in London right now?"
- "Close Chrome and open VS Code"
- "Lock my screen"
Quadroid/
├── .env.example # Configuration template
├── requirements.txt # Modern Python dependencies
├── run.py # Main launcher (GUI / CLI / Voice)
├── main.py # Legacy entry point forwarder
├── quadroid/
│ ├── config.py # Settings & auto-offline detector
│ ├── agent.py # LLM agent & tool dispatcher
│ ├── core/
│ │ ├── llm.py # Multi-provider client (Ollama/Gemini/OpenAI/Groq)
│ │ └── prompts.py # System persona & instructions
│ ├── audio/
│ │ ├── speech.py # TTS (pyttsx3 offline + edge-tts online)
│ │ ├── listener.py # STT (faster-whisper offline + cloud fallback)
│ │ ├── wakeword.py # Background 'Hey Quadroid' wake detector
│ │ └── player.py # Async sound cues
│ ├── tools/
│ │ ├── __init__.py # Tool registry & function schemas
│ │ ├── system.py # Volume, brightness, battery, power
│ │ ├── apps.py # Launch, close, list applications
│ │ ├── productivity.py # Screenshots, clipboard, notes
│ │ ├── files.py # File search & explorer
│ │ ├── web.py # Search, weather, news
│ │ └── shell.py # Safe PowerShell execution
│ └── ui/
│ ├── gui.py # CustomTkinter modern dark GUI
│ └── cli.py # Rich terminal chat interface
└── Sound Effects/ # Audio cue assets
- Licensed under GNU Affero General Public License v3.
- Created with ❤️ by Md Mobid.