Ontmoet Sparky: Mijn AI-gedreven Homelab Manager (n8n & Ollama)
📅 18 JAN 2026 • ⏱️ 10 MIN LEZEN
De Introductie
Als homelab-enthousiasteling ken je het probleem: je hebt prachtige dashboards voor alles. Proxmox voor je VM's, UniFi voor je netwerk, Home Assistant voor je huis, en Synology voor je data. Maar als er iets misgaat, of als je snel een status wilt weten, moet je langs vijf verschillende interfaces.
Ik wilde dat anders. Ik wilde een centraal brein. Een assistent die ik gewoon via Telegram kan appen: "Hoe staat de server ervoor?" of "Herstart de Zigbee stick".
Sparky als AI agent vanuit Open WebUI
Maak kennis met Sparky: een volledig geautomatiseerde, AI-gestuurde beheerder die draait in n8n, gekoppeld aan een lokaal LLM via Ollama. In deze post duik ik diep in de architectuur en de werking.
🏗️ De Architectuur: Een Modulair Spinnenweb
De kracht van Sparky zit niet in één gigantisch script, maar in zijn modulaire opzet. Sparky is de centrale "AI Agent" die taken delegeert naar gespecialiseerde "Worker" workflows.
De core workflow, Sparky Homelab Management, fungeert als de orkestrator. Hij ontvangt input, verzamelt context, laat de AI nadenken, en roept vervolgens de juiste tools aan.
Het schematische overzicht van de modules
De lagen van het systeem:
- De Triggers (Oren): Telegram, Webhooks, en tijdsgebonden Cron-jobs.
- De Monitor (Zintuigen): Verzamelt real-time data van alle subsystemen.
- Het Brein (AI): Een n8n AI Agent node gekoppeld aan Ollama.
- De Tools (Handen): Sub-workflows die acties uitvoeren (SSH, API calls).
- De Veiligheid: Een "Human-in-the-Loop" mechanisme voor kritieke acties.
📡 Stap 1: Input & Monitoring (De Zintuigen)
Zodra Sparky wordt geactiveerd (bijvoorbeeld door een bericht op Telegram of een dagelijkse check), start hij met het opbouwen van context. Een AI is immers maar zo slim als de data die hij krijgt.
Via een parallelle Merge-structuur worden razendsnel de volgende systemen uitgelezen:
Infrastructuur
- Proxmox & Backups: Status van nodes, VM's en de Proxmox Backup Server.
- Netwerk: Een geoptimaliseerde Ping Scanner checkt connectiviteit en de UniFi Monitor rapporteert over wifi-cliënten en netwerkgezondheid.
Storage (NAS)
- Synology (NAS-ELRO): Haalt CPU, RAM en Volume-status op via de DSM API.
- OpenMediaVault (NAS-Backup): Monitort schijfgebruik en uptime via SSH.
IoT & Stroom
- Zigbee & MQTT: Controleert of de coördinator online is en de MQTT-broker berichten verwerkt.
- UPS: Checkt de batterijstatus en belasting ingeval van stroomuitval.
Al deze data wordt samengevoegd tot één groot JSON-object dat als "Kortetermijngeheugen" aan de AI wordt gevoerd.
🧠 Stap 2: Het AI Brein (Ollama & Tools)
Dit is waar de magie gebeurt. In plaats van hard-coded IF/THEN statements, gebruik ik een AI Agent Node in n8n. Ik gebruik een lokaal gehost model via Ollama (zoals Llama 3 of Mistral), zodat gevoelige data mijn netwerk nooit verlaat.
De Sparky Homelab Management workflow in n8n
Dynamic Tools
De AI heeft toegang tot een gereedschapskist ("Tools"). Dit zijn definities die verwijzen naar andere n8n workflows. De AI beslist zelfstandig welk gereedschap hij nodig heeft op basis van mijn vraag.
- Unified Proxmox Tool: Dit is een slimme router. Als de AI besluit dat er iets met Proxmox moet gebeuren, roept hij deze tool aan. Deze tool bepaalt vervolgens zelf of het een simpele status-check is (via API) of een harde actie zoals een reboot (via SSH).
- Camera Snapshot: Vraag ik "Is er iemand bij de deur?", dan snapt de AI dat hij de Cameras Snapshot tool moet gebruiken om een beeld uit UniFi Protect te trekken.
- Home Assistant Control: Voor het bedienen van lampen of scènes.
Buffer Memory
Sparky heeft geheugen. Als ik vraag: "Hoe is het met de NAS?", geeft hij antwoord. Als ik daarna vraag: "En hoeveel ruimte is er nog vrij?", begrijpt hij dat "er" verwijst naar de NAS waar we het net over hadden.
🛡️ Stap 3: Human-in-the-Loop (Veiligheid)
Een AI die zelfstandig commando's kan uitvoeren op je servers is doodeng. Wat als hij een hallucinatie heeft en besluit je firewall te wissen? Daarom heb ik een Approval Workflow ingebouwd voor kritieke acties (zoals herstarten, afsluiten of configuraties wijzigen).
- De AI stelt een actie voor.
-
De workflow pauzeert en stuurt mij een bericht op Telegram:
"Ik wil de Zigbee Container herstarten. Mag dat?" [ ✅ JA ] [ ❌ NEE ] - Pas als ik fysiek op de knop druk in Telegram, gaat de workflow verder en wordt het commando daadwerkelijk uitgevoerd via de Send and Wait for Approval node.
📊 Stap 4: Output & Rapportage
Sparky communiceert op verschillende manieren terug:
- Chat Respons: Direct antwoord in Telegram, netjes geformatteerd met emoji's en status-indicatoren.
- BitjeBijBitje Rapport: Dagelijks genereert Sparky een uitgebreid HTML/Markdown statusrapport van het hele homelab. Dit wordt geconverteerd naar een bestand en automatisch geüpload naar mijn documentatiesysteem.
🚀 Use Case: Een praktijkvoorbeeld
Stel, mijn Zigbee-netwerk reageert traag.
Ik: "Hey Sparky, Zigbee doet raar. Kun je checken?"
Sparky: "Zigbee lijkt vastgelopen. Zal ik herstarten?"
Ik: [Klik op JA]
root@docker:~# systemctl restart zigbee2mqtt
Resultaat: "Service is herstart. Alles lijkt weer groen!"
Conclusie & Downloads
Met Sparky is mijn homelab beheer getransformeerd van "reactief brandjes blussen via 5 apps" naar "proactief chatten met mijn huis". Door de kracht van n8n te combineren met de intelligentie van lokale LLM's, heb ik een systeem dat niet alleen monitort, maar ook begrijpt en handelt.
Zelf bouwen?
Wil je dit zelf bouwen? De workflows zijn modulair, dus begin klein (bijv. alleen monitoring) en voeg later de AI-laag toe!
📥 Download de Templates:
Je vindt de n8n workflow templates op de configs pagina:
Ga naar Configs Pagina
📺 Bekijk de Demo:
Zie de workflow in actie op YouTube:
Bekijk video op YouTube