Skip to main content

Host Health

@aaronge/host-healthv2026.08.26.3· 27d agoMODELS
01README

Zero-privilege Linux host telemetry (disk, thermal, load, memory) as a typed, versioned Swamp model for workflow assertions and CEL joins.

02Models1
@aaronge/host-healthv2026.08.26.3host_health.ts

Global Arguments

ArgumentTypeDescription
diskWarnPercentnumberRoot filesystem usedPercent threshold that trips an assert step. Not consumed by any method directly — read by the host-health workflow's assert job.
tempWarnCelsiusnumberThermal zone maxCelsius threshold that trips an assert step. Matches the Pi 5 soft limit; sensible on most hosts. Not consumed by any method directly.
loadWarnPerCorenumber5-minute load average divided by core count that trips an assert step. Not consumed by any method directly.
memWarnPercentnumberMemory usedPercent (based on MemAvailable, not MemFree) that trips an assert step. Not consumed by any method directly.
includeVirtualFsbooleanWhether readFilesystems includes tmpfs/devtmpfs/other virtual mounts in the filesystems.mounts array.
fn readFilesystems()
Run `df -P -B1`, classify each mount as virtual or real via /proc/mounts fstype, and write the filesystems resource.
fn readThermal()
Read every thermal zone under /sys/class/thermal, sanity-checked to -50..150C, and write the thermal resource.
fn readLoad()
Read /proc/loadavg and core count from /proc/cpuinfo, and write the load resource.
fn readMemory()
Read /proc/meminfo, using MemAvailable (not MemFree) for usedPercent, and write the memory resource.

Resources

filesystems(infinite)— Per-mount disk usage, with root and worst-case usedPercent hoisted for CEL asserts.
thermal(infinite)— Per-zone temperature readings from /sys/class/thermal.
load(infinite)— System load averages and process counts from /proc/loadavg.
memory(infinite)— Memory and swap usage from /proc/meminfo, based on MemAvailable.
03Previous Versions2
2026.08.26.2
2026.08.26.1
04Stats
A
100 / 100
Downloads
1
Archive size
15.8 KB
  • Has README or module doc2/2earned
  • README has a code example1/1earned
  • README is substantive1/1earned
  • Most symbols documented1/1earned
  • No slow types (deprecated)1/1earned
  • Dependencies pass trust audit2/2earned
  • Has description1/1earned
  • Platform support declared (or universal)2/2earned
  • License declared1/1earned
  • Verified public repository2/2earned
05Platforms