Files
jarvis/JARVIS.md
2026-03-24 00:11:34 -05:00

2.3 KiB

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

python -m venv .venv
.venv\Scripts\activate
pip install -r requirements.txt

3. Configure environment

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

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