π€ Jarvis β Personal AI Assistant
Jarvis is a Python-based personal AI assistant that supports voice and text interaction, system automation, and intelligent command handling.
It is designed as a learning-focused, extensible desktop assistant, inspired by real-world AI systems.
π§ Status: Actively under development
β¨ Features
- π£οΈ Voice-based interaction (Speech Recognition + Text-to-Speech)
- π¬ Text input via GUI
- π― Wake-word activation (
Jarvis) - π Continuous conversation mode (no repeated wake word)
- π§ Intent detection with LLM fallback
- βοΈ System & browser automation
- π§± Modular and clean architecture
- π Secure API key handling using environment variables
π οΈ Tech Stack
Language: Python 3
Libraries & Tools:
- SpeechRecβ¦
π€ Jarvis β Personal AI Assistant
Jarvis is a Python-based personal AI assistant that supports voice and text interaction, system automation, and intelligent command handling.
It is designed as a learning-focused, extensible desktop assistant, inspired by real-world AI systems.
π§ Status: Actively under development
β¨ Features
- π£οΈ Voice-based interaction (Speech Recognition + Text-to-Speech)
- π¬ Text input via GUI
- π― Wake-word activation (
Jarvis) - π Continuous conversation mode (no repeated wake word)
- π§ Intent detection with LLM fallback
- βοΈ System & browser automation
- π§± Modular and clean architecture
- π Secure API key handling using environment variables
π οΈ Tech Stack
Language: Python 3
Libraries & Tools:
- SpeechRecognition
- pyttsx3
- Tkinter (GUI)
- OpenAI / Gemini (optional LLM integration)
Version Control: Git & GitHub
π Project Structure (Simplified)
jarvis/
βββ main.py
βββ config.py
βββ voice.py
βββ intent.py
βββ automation.py
βββ llm.py
βββ gui.py
βββ requirements.txt
βββ .gitignore
βββ data/
π Environment Setup
API keys are never hardcoded.
Create a .env file in the project root:
OPENAI_API_KEY=your_openai_api_key_here
GEMINI_KEY_PATH=path_to_gemini_json_key
Ensure .env is added to .gitignore to keep secrets safe.
βΆοΈ How to Run
pip install -r requirements.txt
python main.py
Requirements
- π€ Microphone (for voice mode)
- π Internet connection (for LLM-based features)
β οΈ Known Limitations
- Memory system is basic (no long-term memory yet)
- Intent detection is currently rule-based
- Limited built-in skills
- Windows-focused automation
πΊοΈ Roadmap
- Persistent memory (JSON / SQLite)
- Plugin-based skill system
- Improved intent classification
- Personality modes
- Offline command support
- Packaging as executable (
.exe)
π€ Contributing
This is a personal learning project.
Suggestions, issues, and pull requests are welcome and appreciated.
π€ Author
Mohit Rajput GitHub: https://github.com/msrajput08