system-health — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited system-health (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Quick commands for checking system health on Linux and macOS.
Use this skill when:
# Linux - quick overview
echo "=== Load ===" && uptime && echo "\n=== Memory ===" && free -h && echo "\n=== Disk ===" && df -h / && echo "\n=== Top Processes ===" && ps aux --sort=-%cpu | head -6
# macOS - quick overview
echo "=== Load ===" && uptime && echo "\n=== Memory ===" && vm_stat | head -5 && echo "\n=== Disk ===" && df -h / && echo "\n=== Top Processes ===" && ps aux -r | head -6# Current load average (1, 5, 15 min)
uptime
# Continuous load monitoring
wInterpreting Load Average:
# Check number of CPU cores
# Linux
nproc
# macOS
sysctl -n hw.ncpu# Top CPU consumers
ps aux --sort=-%cpu | head -10
# macOS
ps aux -r | head -10
# Real-time with top
top -o cpu
# Better: htop (if installed)
htop# Linux - human readable
free -h
# Linux - detailed
cat /proc/meminfo | head -10
# macOS
vm_stat
# macOS - more readable
memory_pressure# Top memory consumers
ps aux --sort=-%mem | head -10
# macOS
ps aux -m | head -10# Linux
swapon --show
free -h | grep Swap
# macOS
sysctl vm.swapusage# All mounted filesystems
df -h
# Specific path
df -h /
# Inodes (Linux)
df -i# Current directory breakdown
du -sh */ | sort -hr
# Top 10 largest directories
du -h / 2>/dev/null | sort -hr | head -10
# Specific directory
du -sh /var/log/*# Files over 100MB
find / -type f -size +100M 2>/dev/null | head -20
# With sizes
find / -type f -size +100M -exec ls -lh {} \; 2>/dev/null | head -20# All processes
ps aux
# Tree view (Linux)
ps auxf
# Tree view (macOS)
pstree
# By user
ps -u <username># By name
ps aux | grep <process-name>
# Better: pgrep
pgrep -la <process-name>
# With full command
ps aux | grep -E "PID|<process-name>" | grep -v grep# By PID
ps -p <pid> -o pid,ppid,user,%cpu,%mem,stat,start,time,command
# Open files by process
lsof -p <pid>
# Network connections by process
lsof -i -P -n | grep <pid># Graceful kill
kill <pid>
# Force kill
kill -9 <pid>
# Kill by name
pkill <process-name>
# Kill all matching
killall <process-name># Listening ports
# Linux
ss -tlnp
# macOS
lsof -i -P -n | grep LISTEN
# Or netstat
netstat -tlnp # Linux
netstat -an | grep LISTEN # macOS# All connections
ss -tanp # Linux
netstat -an # macOS
# Connection counts by state
ss -tan | awk '{print $1}' | sort | uniq -c | sort -rn# Linux
cat /etc/os-release
uname -a
# macOS
sw_vers
uname -auptime
# Boot time
who -b# CPU info (Linux)
lscpu
# Memory info (Linux)
cat /proc/meminfo
# macOS
system_profiler SPHardwareDataType| Symptom | Check | Command | |
|---|---|---|---|
| System slow | Load average | uptime | |
| High CPU | Top processes | `ps aux --sort=-%cpu \ | head` |
| Out of memory | Memory usage | free -h | |
| Disk full | Disk space | df -h | |
| Process hung | Process state | `ps aux \ | grep <name>` |
| Port in use | Listening ports | ss -tlnp or lsof -i :<port> |
#!/bin/bash
echo "========== SYSTEM HEALTH =========="
echo ""
echo "--- Hostname & Uptime ---"
hostname && uptime
echo ""
echo "--- Load Average ---"
cat /proc/loadavg 2>/dev/null || uptime | awk -F'load average:' '{print $2}'
echo ""
echo "--- Memory ---"
free -h 2>/dev/null || vm_stat | head -5
echo ""
echo "--- Disk ---"
df -h / /var /tmp 2>/dev/null
echo ""
echo "--- Top 5 CPU ---"
ps aux --sort=-%cpu 2>/dev/null | head -6 || ps aux -r | head -6
echo ""
echo "--- Top 5 Memory ---"
ps aux --sort=-%mem 2>/dev/null | head -6 || ps aux -m | head -6
echo "===================================="~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.