Jarvis Prime is a Unified Homelab Operations Platform
3.5K
Jarvis Prime is a Unified Homelab Operations Platform
Jarvis Prime is your standalone Notification Orchestrator, Automation Engine, Monitoring System, and Command Center. It centralizes, beautifies, and orchestrates notifications from across your homelab while providing powerful job scheduling, playbook execution, and real-time service monitoring capabilities. Raw events come in through multiple intakes (SMTP, Proxy, Webhook, Apprise, Gotify, ntfy, WebSocket), are polished by the Beautify Engine, and are pushed back out through Gotify, ntfy, email, or its own sleek dark-mode Web UI. Every notification arrives consistent, enriched, and alive with personality. Jarvis now also includes a Chat lane: a pure chat channel into your local LLM (no riffs, no personas) that works alongside notifications when the LLM is enabled.
Jarvis Prime now includes a built-in authentication system that protects both the Web UI and API. On first startup, an Initial Setup overlay appears prompting you to create a username and password. Credentials are stored securely in /data/users.json with full encryption and password hashing. Once logged in, your session remains active for one hour of inactivity before automatically logging out for security. If the credentials file is deleted, Jarvis automatically recreates a default admin account on the next startup.
• Standalone Notification Orchestrator and Server
• Optional review via Gotify or ntfy apps (push notifications, history, filters)
• Beautify Engine (LLM + formatting pipeline) normalizes events into Jarvis Cards
• SMTP Intake: drop-in Mailrise replacement, accepts LAN-only emails with any auth
• HTTP Proxy Intake: accepts Gotify/ntfy POSTs and beautifies them
• Webhook Intake: accepts plain text or JSON from scripts, GitHub, health checks, etc.
• Apprise Intake: accepts Apprise client POSTs with token auth
• WebSocket Intake: persistent bi-directional intake channel with token auth
• Built-in dark-mode Web UI with inbox, filters, purge, retention, and live updates
• ARR Module: Radarr/Sonarr posters, episode/movie facts, upcoming releases
• DNS Module: Technitium DNS block stats, failures, totals
• Weather Intake: current + multi-day snapshot
• Uptime Kuma: status without duplicate noise
• Multiple selectable personas: The Dude, Chick, Nerd, Rager, Comedian, Action, Ops
• EnviroGuard: adaptive LLM throttle adjusts CPU use based on ambient temperature
• Purge & Retention: configurable lifecycle for old messages
• Job Orchestration: Run playbooks, scripts, and commands across your infrastructure
• Playbook Management: Upload and organize Ansible playbooks, shell scripts, and Python scripts
• Server Inventory: Manage SSH-enabled servers with groups and descriptions
• Scheduling: Cron-based job scheduling with flexible timing (every 5 minutes to yearly)
• Live Execution Logs: Real-time WebSocket streaming of job output
• Job History: Track all executions with status, duration, and full logs
• Manual Execution: Run any playbook on-demand against any server or group
• Notification Integration: Optional notifications on job completion (can be disabled for frequent jobs)
• Multi-Runner Support: Execute Ansible playbooks (.yml), shell scripts (.sh), or Python scripts (.py)
• Service Health Monitoring: Real-time HTTP, TCP, and ICMP Ping endpoint checks
• Uptime Tracking: 24-hour uptime percentage and response time metrics
• Incident Detection: Automatic incident creation when services go down
• Health Score Dashboard: Overall homelab health percentage with visual status cards
• Service Management: Add, edit, enable/disable services via Web UI
• Configurable Checks: Set custom intervals, timeouts, and expected status codes
• Multi-Protocol Support: Monitor HTTP endpoints (with status code validation), TCP ports, or ICMP Ping hosts
• Incident History: Track downtime incidents with duration and error details
• Visual Dashboard: Service status cards showing current state, uptime %, avg response time
• Retries – Each service must fail a configurable number of consecutive checks before being marked DOWN, filtering out temporary timeouts or network hiccups.
• Flap Window – Defines the time window (in seconds) used to detect service instability; older state changes automatically expire outside this period.
• Flap Threshold – Sets how many up/down flips are allowed within the flap window before the service is considered “flapping.”
• Suppression Duration – When flapping exceeds the threshold, alerts for that service are automatically muted for a defined duration while metrics continue to be recorded.
• Flap Tracking & Recovery – The system tracks every state change, applies suppression intelligently, and resumes normal alerting once the suppression window ends.
• Result: clean, noise-free uptime data with zero false positives — enterprise-grade stability built in.
Atlas provides a live, interactive topology map of your entire homelab infrastructure — visually linking all hosts and services discovered by Orchestrator and Analytics.
It renders using an offline local copy of D3.js, meaning it works entirely without internet access.
/api/atlas/topology.status: up)/ui/index.html)Sentinel is the autonomous self-healing and service-monitoring subsystem inside Jarvis Prime. It runs scheduled checks, performs automatic repairs, and tracks every action in a live dashboard.
Sentinel is a manual-configuration monitoring system — it only monitors what you tell it to.
Add Servers (Servers Tab)
Review Templates (Templates Tab)
Configure Monitoring (Monitoring Tab)
Scheduling
Sentinel automatically deduplicates templates when loading from both sources:
/app/sentinel_templates → GitHub defaults/share/jarvis_prime/sentinel/custom_templates → Local overridesid and name exists in both locations, the GitHub version is always kept.• Chat Lane: pure LLM chat (no riff/persona), works via Gotify, ntfy, or Web UI when LLM is enabled
• RAG Integration: if you have set a long lived token and your Home Assistant URL, chat will now answer questions regarding your systems
Jarvis Prime supports installation as a Progressive Web App (PWA), allowing app-like offline use with HTTPS, caching, and push notifications.
Radarr / Sonarr, QNAP, Unraid, Watchtower, Speedtest, Technitium DNS, Weather, Uptime Kuma, JSON/YAML, Email, Gotify, ntfy, Webhooks, Apprise, WebSocket, plain text, Chat
• Ingress via Home Assistant → Add-on → OPEN WEB UI
• Or direct: http://10.0.0.100:PORT
Jarvis Prime is fully self-contained. Gotify, ntfy, and WebSocket are optional — use them only if you want push or persistent WS.
Unified notification hub, automation command center, monitoring dashboard, and self-healing reliability engine in one platform.
Jarvis Prime is a unified homelab operations platform—notification orchestrator, automation engine, and monitoring system—packaged for Home Assistant and Docker.
docker run -d \
--name jarvis-prime \
--restart unless-stopped \
-e TZ=Africa/Johannesburg \
-e JARVIS_CONFIG_PATH=/data/config.json \
-p 2525:2525 \
-p 2580:2580 \
-p 2581:2581 \
-p 2591:2591 \
-v /DATA/AppData/jarvis_prime/data:/data \
-v /DATA/AppData/jarvis_prime/share:/share \
cbothma/jarvis-prime:latest
version: "3.9"
services:
jarvis-prime:
image: cbothma/jarvis-prime:latest
container_name: jarvis-prime
restart: unless-stopped
environment:
- TZ=Africa/Johannesburg
- JARVIS_CONFIG_PATH=/data/config.json
ports:
- "2525:2525"
- "2580:2580"
- "2581:2581"
- "2591:2591"
volumes:
- /DATA/AppData/jarvis_prime/data:/data
- /DATA/AppData/jarvis_prime/share:/share
Content type
Image
Digest
sha256:9a86bf61f…
Size
398.3 MB
Last updated
9 months ago
docker pull cbothma/jarvis-prime