The operating system for your homelab

Your homelab, awake.

Substrate runs autonomous agents that watch, diagnose, and act — grounded in real telemetry, gated by your approval. Self-hosted. Private. Always on.

3 agents scanning homelab-prod no cloud account
01 · IT WATCHES

Live telemetry from every box, container, and pod.

Read continuously, not polled once a minute. Every daemon streams its host's real numbers, so the agent always answers from ground truth.

0%
Host CPU
0%
Memory
0
Pods ready
homelab-prodrack · 01
grok-cluster-1cpu 34%
nas-01disk 51%
jellyfinrestarting
vaultwardenup 41d
A
Why is jellyfin flapping?
✓ thought · called get_metrics · read container_logs
Restarted 4× in 10 min — OOM-killed at the 512 MB limit during library scans. Memory's the cause, not the image.
02 · IT REASONS

Ask in plain language. Get grounded answers.

No hallucinated dashboards. The agent thinks, calls its read-only tools — metrics, logs, kubectl describe — and shows its work.

03 · IT ACTS — WITH YOUR SAY-SO

It proposes the fix. You hold the switch.

Every change is allowlisted, argv-only — no shell, no surprises. The agent proposes; you approve; then it runs. Reversible where it can be, audited always, killable instantly.

Restart container
PROPOSED · reversible
docker restart jellyfin — then raise the mem limit
DismissApprove
Infra Sentinel
host · docker · k8s
Network Watchdog
WAN · latency
Backup Warden
snapshots
Cost Optimizer
spend
04 · A FLEET, NOT A SCRIPT

One daemon per machine. Each scoped to what it knows.

A live roster of agents across your homelab — each with its own tools, sweeps, and schedule. The control plane sees them all.

Live · grounded in real telemetry

Ask your homelab anything.

Type a question — watch the agent think, call its tools, and answer from the numbers.

05 · ALWAYS ON. ALWAYS YOURS.

Your control plane is waiting.

Self-hosted on your hardware. Your data never leaves the house. No cloud account, no lock-in — just your homelab, finally paying attention.