homelab-codex-ws/kb/services/chelsty-stability-agent.md
oskar ae31802f10 feat(kb): przenosiny type=service do kb/services/ (13 plikow, bez SPLIT)
Serwisy o jednorodnej tresci (bez wydzielonej sekcji deploy/runbook):
kb-postgres, stability-agent, llm-gateway, vikunja, zigbee2mqtt, npm,
forgejo, ollama, ir-ac-ha-integration, chelsty-stability-agent.

Deprecated: mosquitto (NOT DEPLOYED/LEGACY), home-assistant-ken-legacy
(archiwum importu), joplin (stub z 2026-04-15, brak katalogu services/joplin/).

git mv + frontmatter, tresc nietknieta.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-04 16:53:57 +02:00

1.9 KiB

okf type visibility status updated links
0.1 service private active 2026-05-20

CHELSTY Stability Agent

The stability-agent on CHELSTY provides local observability and health monitoring for the node's services and infrastructure.

Purpose

It acts as a filesystem-first watchdog that detects anomalies in the local runtime environment without taking autonomous destructive actions (like restarts). It serves as the primary data source for node-level stability metrics.

Monitoring Scope

  • Docker Containers: Monitors all local containers. If a container is not in the running state, a containers_not_running event is generated.
  • Disk Usage: Monitors the root filesystem. Generates disk_usage_high events if usage exceeds the configured threshold.
  • Connectivity:
    • Checks if the Tailscale socket or interface is available.
    • Checks reachability of the local Mosquitto MQTT broker.
  • Zigbee2MQTT: Specifically tracks the presence and status of the Zigbee2MQTT service.

Storage and Integration

  • Heartbeat: Updated every cycle at /opt/homelab/state/stability-agent.heartbeat.
  • State Summary: A JSON summary of all latest checks at /opt/homelab/state/stability-agent.json.
  • Events: Append-only JSON lines at /opt/homelab/events/YYYY-MM-DD/chelsty-infra/events.jsonl.

Deployment

The service is deployed via Docker Compose on CHELSTY.

cd services/stability-agent
docker compose up -d

Configuration

Configuration is managed via environment variables in docker-compose.override.yml on the host.

Variable Description Default
STABILITY_CHECK_INTERVAL Seconds between checks 60
DISK_THRESHOLD_PCT Disk usage alert threshold 90
MQTT_HOST MQTT broker hostname mosquitto
MQTT_PORT MQTT broker port 1883