{"id":49668179,"url":"https://github.com/code-alchemist01/jarvis_voice_automation","last_synced_at":"2026-05-06T18:04:41.318Z","repository":{"id":325976098,"uuid":"1103225421","full_name":"code-alchemist01/jarvis_voice_automation","owner":"code-alchemist01","description":"An intelligent desktop voice assistant powered by AI. Control your computer with natural voice commands in Turkish and English. Built with Python, PyQt5, and LLM integration.","archived":false,"fork":false,"pushed_at":"2025-11-24T16:10:26.000Z","size":77,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-11-28T04:26:56.273Z","etag":null,"topics":["ai-assistant","desktop-automation","jarvis","voice-assistant","voice-control"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/code-alchemist01.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-11-24T15:37:56.000Z","updated_at":"2025-11-24T16:13:08.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/code-alchemist01/jarvis_voice_automation","commit_stats":null,"previous_names":["code-alchemist01/jarvis_voice_automation"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/code-alchemist01/jarvis_voice_automation","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/code-alchemist01%2Fjarvis_voice_automation","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/code-alchemist01%2Fjarvis_voice_automation/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/code-alchemist01%2Fjarvis_voice_automation/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/code-alchemist01%2Fjarvis_voice_automation/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/code-alchemist01","download_url":"https://codeload.github.com/code-alchemist01/jarvis_voice_automation/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/code-alchemist01%2Fjarvis_voice_automation/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32705636,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-06T08:33:17.875Z","status":"ssl_error","status_checked_at":"2026-05-06T08:33:17.221Z","response_time":117,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai-assistant","desktop-automation","jarvis","voice-assistant","voice-control"],"created_at":"2026-05-06T18:04:40.145Z","updated_at":"2026-05-06T18:04:41.287Z","avatar_url":"https://github.com/code-alchemist01.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# JARVIS Voice Automation\n\nAn intelligent desktop voice assistant that brings the power of natural language control to your computer. Built with modern Python technologies and AI integration, JARVIS understands your voice commands and executes complex tasks seamlessly across your system.\n\n## 🌟 Overview\n\nJARVIS Voice Automation reimagines how you interact with your computer. Instead of clicking through menus or typing commands, simply speak naturally and watch as your assistant understands context, handles complex requests, and manages your digital environment with precision.\n\n\u003cimg width=\"785\" height=\"684\" alt=\"image\" src=\"https://github.com/user-attachments/assets/250036ee-78d6-4089-85d3-7f05ebcd65b6\" /\u003e\n\n\n## ✨ Key Features\n\n### 🎤 Natural Voice Control\n- Continuous listening mode that captures commands in real-time\n- Multi-language support with Turkish and English recognition\n- Contextual understanding powered by local LLM integration\n- Intelligent error tolerance for natural speech patterns\n\n### 🧠 Intelligent Command Processing\n- **AI-Powered Comprehension**: Leverages local language models for nuanced command interpretation\n- **Complex Task Orchestration**: Seamlessly handles multi-step instructions with dependency management\n- **Automated Workflows**: Define and execute custom scenarios for repetitive tasks\n- **Adaptive Learning**: Builds understanding of your preferences and usage patterns over time\n\n### 🎯 System Control\n- **Application Management**: Launch any installed application by name\n- **Volume Control**: Precise system volume adjustment with multiple fallback methods\n- **System Monitoring**: Real-time CPU, memory, disk, and battery status\n- **Security Features**: Lock computer, sleep display, and more\n\n### 📁 File Operations\n- Quick access to common folders (Documents, Pictures, Downloads, etc.)\n- File search across user directories\n- File management (copy, move, rename)\n- Recent files tracking\n\n### 📅 Productivity Tools\n- **Smart Notes**: Voice-activated note taking with persistent storage\n- **Reminders \u0026 Timers**: Set reminders and timers with voice commands\n- **Calendar Integration**: Add events to Google Calendar or Outlook\n- **Email Management**: Send emails via Gmail API or SMTP\n\n### 🎵 Media \u0026 Entertainment\n- **Spotify Control**: Full Spotify integration for music playback\n- **Screenshot Capture**: Instant screen capture with multiple fallback methods\n- **Media Control**: Play, pause, skip tracks system-wide\n- **Entertainment**: Jokes, coin flips, random numbers, and stories\n\n### 🌐 Web \u0026 Information\n- **Web Search**: Google, Wikipedia, YouTube searches\n- **News**: Latest news headlines\n- **Weather**: Real-time weather information\n- **Calculator**: Voice-activated calculations\n\n### 🏠 Smart Home Integration\n- **Home Assistant**: Control smart home devices\n- **Device Management**: Lights, thermostats, and more\n- **Scenario Automation**: Execute home automation scenarios\n\n### 🎨 Modern Interface\n- Dark theme with sleek design\n- Real-time waveform visualization\n- Command history display\n- Status indicators for all systems\n- Settings panel for customization\n\n### 🔊 Advanced Text-to-Speech\n- **ElevenLabs Integration**: High-quality, natural-sounding voice (primary)\n- **Fallback Support**: pyttsx3 as reliable backup\n- **Multi-language**: Turkish and English voice support\n- **Customizable**: Adjustable rate, volume, and voice selection\n\n## 🚀 Installation\n\n### Prerequisites\n- Python 3.7 or higher\n- Microphone access\n- Internet connection (for speech recognition and APIs)\n- LM Studio (optional, for local LLM support)\n\n### Step 1: Clone the Repository\n```bash\ngit clone https://github.com/code-alchemist01/jarvis_voice_automation.git\ncd jarvis_voice_automation\n```\n\n### Step 2: Create Virtual Environment (Recommended)\n```bash\npython -m venv venv\nvenv\\Scripts\\activate  # Windows\n# or\nsource venv/bin/activate  # Linux/Mac\n```\n\n### Step 3: Install Dependencies\n```bash\npip install -r requirements.txt\n```\n\n**Note**: PyAudio installation may require additional steps:\n\n**Windows:**\n```bash\npip install pipwin\npipwin install pyaudio\n```\n\n**Linux:**\n```bash\nsudo apt-get install portaudio19-dev python3-pyaudio\npip install pyaudio\n```\n\n**Mac:**\n```bash\nbrew install portaudio\npip install pyaudio\n```\n\n### Step 4: Configure the Application\n\n1. Copy `config.json` and customize settings:\n   - Add your ElevenLabs API key (optional, for premium TTS)\n   - Configure OpenWeatherMap API key (for weather features)\n   - Set up LLM connection (LM Studio URL)\n   - Add application paths if needed\n\n2. For Google Calendar/Gmail integration:\n   - Place OAuth2 credentials in `tokens/credentials.json`\n   - Follow Google Cloud Console setup instructions\n\n3. For Spotify integration:\n   - Add Spotify Client ID and Secret to `config.json`\n   - Complete OAuth2 flow on first use\n\n## 📖 Usage\n\n### Starting JARVIS\n```bash\npython main.py\n```\n\n### Basic Commands\n\n**System Control:**\n- \"Microsoft Edge'i aç\" - Open Microsoft Edge\n- \"Sesi kapat\" - Mute volume\n- \"Ses seviyesini artır\" - Increase volume\n- \"Sistem bilgisi\" - Get system information\n\n**File Operations:**\n- \"Belgeler klasörünü aç\" - Open Documents folder\n- \"Resimler klasörünü aç\" - Open Pictures folder\n- \"Masaüstünü aç\" - Open Desktop\n\n**Productivity:**\n- \"Not kaydet: Toplantı yarın saat 3'te\" - Save a note\n- \"Takvime ekle: Toplantı\" - Add event to calendar\n- \"10 dakika sonra hatırlat: İlaç al\" - Set reminder\n\n**Media \u0026 Entertainment:**\n- \"Ekran görüntüsü al\" - Take screenshot\n- \"Spotify'da [şarkı adı] çal\" - Play song on Spotify\n- \"Müziği durdur\" - Pause music\n\n**Information:**\n- \"Bugün hava nasıl\" - Get weather\n- \"Wikipedia'da Python ara\" - Search Wikipedia\n- \"2 artı 2 kaç eder\" - Calculate\n\n**Multi-Step Tasks:**\n- \"Önce Notepad'i aç, sonra Calculator'ı aç\" - Execute multiple commands\n- \"Ses seviyesini artır ve ekran görüntüsü al\" - Chain commands\n\n**Scenarios:**\n- \"Çalışma modunu aç\" - Run predefined work scenario\n- \"Uyku modunu aç\" - Run sleep scenario\n\n## ⚙️ Configuration\n\n### Main Configuration (`config.json`)\n\n```json\n{\n  \"language\": \"tr\",\n  \"tts\": {\n    \"provider\": \"elevenlabs\",\n    \"rate\": 150,\n    \"volume\": 0.9,\n    \"elevenlabs\": {\n      \"api_key\": \"your_key_here\",\n      \"voice_id\": \"21m00Tcm4TlvDq8ikWAM\",\n      \"model_id\": \"eleven_multilingual_v2\"\n    }\n  },\n  \"llm\": {\n    \"enabled\": true,\n    \"api_url\": \"http://localhost:1234/v1/chat/completions\",\n    \"model\": \"qwen3-4b-2507\",\n    \"temperature\": 0.7\n  },\n  \"user\": {\n    \"name\": \"Your Name\"\n  }\n}\n```\n\n### LLM Setup (LM Studio)\n\n1. Download and install [LM Studio](https://lmstudio.ai/)\n2. Load a compatible model (e.g., qwen3-4b-2507)\n3. Start the local server on port 1234\n4. JARVIS will automatically connect\n\n### API Keys\n\n**ElevenLabs (Optional):**\n- Sign up at [ElevenLabs](https://elevenlabs.io/)\n- Get your API key from the dashboard\n- Add to `config.json` under `tts.elevenlabs.api_key`\n\n**OpenWeatherMap (Optional):**\n- Sign up at [OpenWeatherMap](https://openweathermap.org/api)\n- Get your free API key\n- Add to `config.json` under `weather.api_key`\n\n**Google APIs (Optional):**\n- Create a project in [Google Cloud Console](https://console.cloud.google.com/)\n- Enable Calendar API and Gmail API\n- Download OAuth2 credentials\n- Place in `tokens/credentials.json`\n\n**Spotify (Optional):**\n- Create an app in [Spotify Developer Dashboard](https://developer.spotify.com/dashboard)\n- Get Client ID and Secret\n- Add to `config.json` under `spotify`\n\n## 🏗️ Architecture\n\n### Project Structure\n```\njarvis_voice_automation/\n├── core/                    # Core functionality\n│   ├── command_processor.py    # Command routing and execution\n│   ├── llm_client.py           # LLM integration (LM Studio)\n│   ├── voice_recognition.py    # Speech-to-text\n│   ├── text_to_speech.py       # Text-to-speech engine\n│   ├── multi_step_processor.py # Multi-step task handling\n│   └── prompts.py              # AI prompts and personality\n├── features/                 # Feature modules\n│   ├── system_control.py       # System operations\n│   ├── file_operations.py      # File management\n│   ├── calendar.py             # Calendar integration\n│   ├── email.py                # Email management\n│   ├── spotify_control.py      # Spotify integration\n│   ├── smart_home.py           # Smart home control\n│   └── ...                     # Additional features\n├── gui/                      # User interface\n│   ├── main_window.py          # Main application window\n│   ├── settings_window.py      # Settings panel\n│   └── notification_system.py  # System notifications\n├── utils/                    # Utilities\n│   ├── config.py              # Configuration management\n│   └── oauth2_helper.py        # OAuth2 authentication\n├── main.py                   # Application entry point\n├── config.json               # User configuration\n└── requirements.txt           # Python dependencies\n```\n\n### Technology Stack\n\n- **GUI Framework**: PyQt5\n- **Speech Recognition**: SpeechRecognition library (Google Speech API)\n- **Text-to-Speech**: ElevenLabs API (primary), pyttsx3 (fallback)\n- **AI/LLM**: LM Studio (OpenAI-compatible API)\n- **System Control**: pycaw (Windows audio), psutil (system monitoring)\n- **Media**: pyautogui, Pillow (screenshots)\n- **APIs**: Google Calendar, Gmail, Spotify, OpenWeatherMap\n\n## 🎯 Advanced Features\n\n### Multi-Step Task Processing\nJARVIS can understand and execute complex multi-step commands:\n- \"Önce Notepad'i aç, sonra Calculator'ı aç, sonra ses seviyesini artır\"\n- Tasks are automatically parsed, ordered, and executed sequentially\n\n### Scenario Management\nCreate reusable task sequences:\n- Work mode: Opens productivity apps, adjusts settings\n- Sleep mode: Pauses media, dims lights, adjusts volume\n- Custom scenarios: Define your own task combinations\n\n### Command Learning\nJARVIS learns from your usage:\n- Tracks command frequency\n- Suggests frequently used commands\n- Adapts to your preferences over time\n\n### Smart Home Integration\nControl your smart home ecosystem:\n- Home Assistant integration\n- Device state monitoring\n- Automated scenarios\n- Voice-controlled lighting and climate\n\n## 🔧 Troubleshooting\n\n### Speech Recognition Not Working\n- Check microphone permissions\n- Ensure internet connection (for Google Speech API)\n- Try adjusting microphone sensitivity in system settings\n\n### LLM Not Responding\n- Verify LM Studio is running\n- Check API URL in config (default: `http://localhost:1234`)\n- Ensure model is loaded in LM Studio\n- JARVIS will fall back to regex patterns if LLM unavailable\n\n### Volume Control Issues\n- Install `pycaw` for Windows: `pip install pycaw`\n- Check Windows audio service is running\n- Try alternative methods (PowerShell, pyautogui)\n\n### Application Not Opening\n- Add application path to `config.json` under `applications`\n- Check application name spelling\n- Verify application is installed\n\n## 📝 License\n\nThis project is open source and available for personal and commercial use.\n\n## 🤝 Contributing\n\nContributions are welcome! Please feel free to submit pull requests or open issues for bugs and feature requests.\n\n## 🙏 Acknowledgments\n\n- Inspired by Iron Man's JARVIS\n- Built with PyQt5, SpeechRecognition, and modern AI technologies\n- Thanks to all open-source contributors\n\n## 📞 Support\n\nFor issues, questions, or feature requests, please open an issue on GitHub.\n\n---\n\n**Made with ❤️ for voice automation enthusiasts**\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcode-alchemist01%2Fjarvis_voice_automation","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcode-alchemist01%2Fjarvis_voice_automation","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcode-alchemist01%2Fjarvis_voice_automation/lists"}