Initial commit from agent
This commit is contained in:
71
JARVIS.md
Normal file
71
JARVIS.md
Normal file
@@ -0,0 +1,71 @@
|
||||
# JARVIS — Just A Rather Very Intelligent System
|
||||
**Windows Port | Google Workspace Edition**
|
||||
|
||||
A voice-activated AI assistant powered by FastAPI, Anthropic Claude, Fish Audio TTS, and OpenAI Whisper — integrated with the full Google Workspace suite.
|
||||
|
||||
## Quick Start
|
||||
|
||||
### 1. Prerequisites
|
||||
- Python 3.11+
|
||||
- Google Cloud project with OAuth credentials (`credentials.json`)
|
||||
- Anthropic API key
|
||||
- Fish Audio API key
|
||||
|
||||
### 2. Install dependencies
|
||||
```bash
|
||||
python -m venv .venv
|
||||
.venv\Scripts\activate
|
||||
pip install -r requirements.txt
|
||||
```
|
||||
|
||||
### 3. Configure environment
|
||||
```bash
|
||||
cp .env.example .env
|
||||
# Edit .env with your API keys
|
||||
```
|
||||
|
||||
### 4. Google OAuth setup
|
||||
- Place your `credentials.json` from Google Cloud Console in the project root
|
||||
- On first run, a browser window will open for authorization
|
||||
- Token is saved to `token.json` automatically
|
||||
|
||||
### 5. Run
|
||||
```bash
|
||||
uvicorn main:app --reload --host 0.0.0.0 --port 8000
|
||||
```
|
||||
|
||||
### 6. Open dashboard
|
||||
Navigate to `http://localhost:8000` in Chrome.
|
||||
|
||||
## Project Structure
|
||||
```
|
||||
jarvis-windows/
|
||||
├── main.py # FastAPI entrypoint
|
||||
├── requirements.txt
|
||||
├── .env.example
|
||||
├── .gitignore
|
||||
├── core/
|
||||
│ ├── google_auth.py # Shared Google OAuth handler
|
||||
│ ├── voice_input.py # Whisper STT
|
||||
│ ├── voice_output.py # Fish Audio TTS
|
||||
│ ├── claude_agent.py # Claude API + tool use
|
||||
│ └── websocket_manager.py # WebSocket connection manager
|
||||
├── capabilities/
|
||||
│ ├── screen_vision.py # mss + win32gui screen capture
|
||||
│ ├── calendar_access.py # Google Calendar API
|
||||
│ ├── email_access.py # Gmail API (read-only)
|
||||
│ ├── notes_manager.py # Google Keep / gkeepapi
|
||||
│ ├── task_manager.py # Google Tasks API
|
||||
│ ├── file_system.py # os/pathlib file operations
|
||||
│ ├── terminal_control.py # subprocess PowerShell/CMD
|
||||
│ ├── browser_control.py # Selenium Chrome automation
|
||||
│ └── git_manager.py # Git via subprocess
|
||||
├── utils/
|
||||
│ ├── audio_utils.py # PyAudio helpers
|
||||
│ └── window_utils.py # win32gui active window
|
||||
└── client/
|
||||
└── jarvis-dashboard.html # Animated Three.js frontend
|
||||
```
|
||||
|
||||
## Roadmap
|
||||
See `ROADMAP.md`
|
||||
Reference in New Issue
Block a user