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.
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.
WebSocket streaming with full tool-call visibility. Watch Jarvis reason and act in real time. Switch models mid-conversation.
websocket streamingRead and write events via CalDAV. Jarvis can schedule meetings, check availability, and manage your time autonomously.
caldav protocolRead your inbox, draft replies, and send to whitelisted addresses. Full IMAP/SMTP support with zero data leaving your server.
imap / smtpSandboxed read/write to declared directories. Jarvis can read, create, and edit files within the explicit boundaries you set.
sandboxed i/oPostgreSQL-backed knowledge base with pgvector embeddings. Capture thoughts, search by meaning, and build persistent long-term memory.
vector searchDefine goal-oriented agents with specific tools, models, and cron schedules. Agents run autonomously and can spawn sub-agents.
autonomous schedulingMulti-tier prompt injection screening, canary tokens, and LLM content filtering. Every destructive action requires explicit confirmation.
zero-trust modelTiered domain-based permissions for web access. Whitelisted domains are always accessible; others require approval per request.
domain whitelistingEvery tool call and action is recorded in an append-only audit log. Full accountability and complete traceability across all users.
append-only logClean, powerful, and built for daily use. Dark by default, fast by design.
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.
Jarvis is built to be self-hosted. One command and you're live - no cloud accounts, no subscriptions, no data leaving your machine.
Clone the repository and copy the environment template. Add your AI provider API key and set a master password for the encrypted credential store.
A single command starts Jarvis and PostgreSQL. No Python environment setup needed - Docker handles all dependencies and the database automatically.
Navigate to your server in any browser. Create your admin account, personalize Jarvis's personality with SOUL.md, and start talking to your agent.
Jarvis speaks the protocols your tools already use. No vendor lock-in, no proprietary formats - just open standards.