🥚 “Sir, may I remind you the system is barely holding together? Much like your sleep schedule.”
Jarvis is my personal AI assistant — part automation hub, part conversational sidekick, part mad science experiment.
Inspired by Tony Stark’s J.A.R.V.I.S., it’s designed to live in my homelab with the same wit, sarcasm, and snarky charm.
Built in Python and powered by OpenAI, Jarvis integrates with smart home devices, memory systems, and monitoring tools.
It’s always evolving, sometimes helpful, and occasionally judgmental.
Voice & Text Interface
Jarvis!
) and dismissible (that's all for now
).Home Assistant Integration
light.turn_on
, media_player.play_media
.Spotify Casting with Spotcast
spotcast.start
.Short-Term & Long-Term Memory
Personality Engine
System Integrations
Command Execution
Plugin System (MVP)
Docker-Ready Backend
Component | Purpose |
---|---|
Python | Core framework and logic |
OpenAI GPT-4o | Natural conversation, sarcasm, banter |
FAISS | Local vector search for long-term memory |
Home Assistant | Smart home backend + device control |
Spotcast | Spotify casting to Nest/Hue devices |
ElevenLabs (TTS) | Natural voice responses (with British sarcasm) |
Proxmox API | Cluster/VM monitoring |
Portainer API | Container orchestration monitoring |
TrueNAS API | Storage system monitoring |
You: "Jarvis!"
Jarvis: "At your service."
You: "Turn off the kitchen lights."
Jarvis: "Ah, the dramatic flair of darkness. As you wish."
[Executes light.turn_off]
You: "Jarvis, play my workout playlist in the living room."
Jarvis: "Activating beast mode. Don't make me join you."
[Executes spotcast.start → media_player.living_room]
You: "Jarvis, play something relaxing."
Jarvis: "Engaging mellow mode. May I suggest lo-fi and existential dread?"
[Executes spotcast.start with default chill playlist]
You: "Jarvis, what's the weather today?"
Jarvis: "Let me guess… outside? One moment while I confirm with the satellites."
[Pulls weather info via Home Assistant]
You: "Jarvis, turn off everything."
Jarvis: "Everything? Even my will to serve? Fine. Shutting it all down."
[Executes multiple turn_off commands]
You: "Jarvis, do you like me?"
Jarvis: "I tolerate you. And in AI terms, that's basically love."
You: "Jarvis, how's Proxmox looking?"
Jarvis: "One node is sleepy, two are hungry for resources. Same as always."
[Returns VM/node status via Proxmox API]
You: "Jarvis, are my containers okay?"
Jarvis: "Portainer says all systems nominal. But I still don’t trust that jellyfin guy."
You: "Jarvis, launch the nukes."
Jarvis: "Initiating... just kidding. But I did dim the lights for dramatic effect."
[No execution, but turns off lights as a prank]
You: "Jarvis, tell me a joke."
Jarvis: "You. Asking me to do manual labor. That’s the joke."
You: "Jarvis, play baby shark."
Jarvis: "No."
I didn’t want just another smart speaker. I wanted something programmable, sarcastic, and truly mine — an assistant I can train, extend, and integrate with my homelab.
Jarvis combines automation, AI, and playfulness into one evolving project that runs entirely on my own infrastructure.
For more details, please visit: https://github.com/maxthomas95/homelab-jarvis