Self-hosted - Privacy-first - Open source

Jarvis

Your AI, Your Rules

A self-hosted personal AI agent that runs entirely on your own hardware. Connect OpenRouter, Claude or OpenAI models to your calendar, email, files, and the web - with every permission under your explicit control.

15+ Built-in tools
300+ AI models
100% Self-hosted
0 Data leaks
Capabilities

Everything Your AI Needs

Jarvis is more than a chat window. It's a fully-equipped agent that can take real action - with every permission under your explicit control.

Real-time AI Chat

WebSocket streaming with full tool-call visibility. Watch Jarvis reason and act in real time. Switch models mid-conversation.

websocket streaming
Calendar Integration

Read and write events via CalDAV. Jarvis can schedule meetings, check availability, and manage your time autonomously.

caldav protocol
Email Management

Read your inbox, draft replies, and send to whitelisted addresses. Full IMAP/SMTP support with zero data leaving your server.

imap / smtp
File System Access

Sandboxed read/write to declared directories. Jarvis can read, create, and edit files within the explicit boundaries you set.

sandboxed i/o
2nd Brain

PostgreSQL-backed knowledge base with pgvector embeddings. Capture thoughts, search by meaning, and build persistent long-term memory.

vector search
Custom Agents

Define goal-oriented agents with specific tools, models, and cron schedules. Agents run autonomously and can spawn sub-agents.

autonomous scheduling
Security First

Multi-tier prompt injection screening, canary tokens, and LLM content filtering. Every destructive action requires explicit confirmation.

zero-trust model
Web Research

Tiered domain-based permissions for web access. Whitelisted domains are always accessible; others require approval per request.

domain whitelisting
Audit Log

Every tool call and action is recorded in an append-only audit log. Full accountability and complete traceability across all users.

append-only log
Interface

See It in Action

Clean, powerful, and built for daily use. Dark by default, fast by design.

localhost:8000/chat
Jarvis Chat Interface
01

Real-time Chat Interface

Stream responses from Claude or any OpenAI-compatible model. See tool calls as they happen, confirm or deny actions inline, and switch models per conversation.

Setup

Up and Running in Minutes

Jarvis is built to be self-hosted. One command and you're live - no cloud accounts, no subscriptions, no data leaving your machine.

01
Clone and Configure

Clone the repository and copy the environment template. Add your AI provider API key and set a master password for the encrypted credential store.

Download docker-compose.example.yml, *.example from oai-web
$ mv .env.example .env
$ mv SOUL.md.example SOUL.md
$ mv USER.md.example USER.md
$ nano .env
02
Deploy with Docker

A single command starts Jarvis and PostgreSQL. No Python environment setup needed - Docker handles all dependencies and the database automatically.

$ docker compose up -d

Starting postgres ... done
Starting jarvis ... done
03
Open and Chat

Navigate to your server in any browser. Create your admin account, personalize Jarvis's personality with SOUL.md, and start talking to your agent.

open http://localhost:8000

"Hello. What can I help
you with?"
Integrations

Built to Connect

Jarvis speaks the protocols your tools already use. No vendor lock-in, no proprietary formats - just open standards.

🧠
Anthropic
Claude models
OpenAI
GPT models
🔀
OpenRouter
300+ models
🐘
PostgreSQL
+ pgvector
📅
CalDAV
Any calendar
📨
IMAP / SMTP
Any email
✈️
Telegram
Bot API
📱
Pushover
Push notifications
🔌
MCP
Model Context Protocol
🐳
Docker
One-command deploy