Skip to content

sharan928iscool/Nat

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Nat AI Personal Assistant 🤖

"Nat" is a sophisticated, always-on AI personal assistant that lives in a standalone Windows application. It controls your computer through voice commands and provides a premium desktop experience.

Nat Mockup Image

License: MIT Python 3.11+ Powered By OpenRouter Powered By Google Gemini Interface: CustomTkinter


✨ Key Features

  • 🎙️ Always-on Voice Processing: No wake words required after initialization. Nat listens, processes, and responds naturally.
  • 🎩 Formal "Sir" Persona: A dedicated, professional assistant designed to treat you with executive respect.
  • 🛠️ Deep System Integration: Nat can launch apps, search the web, manage files, type text, and even automate mouse clicks.
  • 🧠 Multi-Provider Brain: Switch between OpenRouter (supports models like Nemotron-3), Google Gemini 1.5 Flash, or NVIDIA's Integrated API.
  • 🖥️ Modern Desktop GUI: A stunning dark-themed interface built with CustomTkinter for real-time status and chat monitoring.
  • 🔊 Voice Feedback: Local Text-to-Speech (TTS) integration using pyttsx3 for high-speed, offline voice output.

🛠️ Architecture

Nat is built on a modular, event-driven architecture that ensures reliability and extensibility.

graph TD
    A[User Voice] -->|SpeechRecognition| B(audio_handler.py)
    B -->|Transcribed Text| C(main.py)
    C -->|Command| D(brain.py)
    D -->|Tool Call| E(system_tools.py)
    E -->|Execute| F[Windows OS]
    D -->|AI Response| G(gui_app.py)
    G -->|Display| H[Desktop UI]
    D -->|AI Response| B
    B -->|TTS Output| I[User Audio]
Loading

🚀 Installation & Setup

Follow these steps to get Nat running on your Windows environment:

1. Prerequisites

  • Python 3.11+ is highly recommended for compatibility with modern AI libraries.
  • Git for repository management.

2. Clone and Install

git clone https://github.com/Shackey/Nat.git
cd Nat
pip install -r requirements.txt

3. Audio Support (Critical)

Nat requires PyAudio for voice features. If standard installation fails:

4. Configure Your Environment

Create a .env file from the example:

copy .env.example .env

Add your API keys and select your preferred provider:

PREFERRED_PROVIDER=openrouter  # Options: openrouter, google, nvidia
OPENROUTER_API_KEY=sk-or-v1-...
GOOGLE_API_KEY=...
NVIDIA_API_KEY=...

🎮 How to Use

Launching Nat

The easiest way to start is by using the provided batch file:

  • Simply double-click run_nat.bat (or execute python gui_app.py).

Example Voice Commands

  • "Nat, open Notepad and write a poem."
  • "Nat, search the web for the latest NVIDIA GPU releases."
  • "Nat, what is 45% of 125,000?"
  • "Nat, please press Ctrl+S to save my work."
  • "Nat, shutdown yourself."

📂 Project Structure

  • gui_app.py: The primary interface for users to interact with Nat.
  • brain.py: The "intelligence" layer handling LLM logic and function calling.
  • audio_handler.py: Manages wake-word detection, STT (Speech-to-Text), and TTS (Text-to-Speech).
  • system_tools.py: A robust library of tools Nat uses to control the OS.
  • main.py: The central coordinator for voice-only logic.

🤝 Contributing

Contributions are what make the open-source community such an amazing place. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

📄 License

Distributed under the MIT License. See LICENSE for more information.

About

An Jarvis Like Agi That Controls Your Pc with voice controls.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors