System Monitor

v1.0.1

Real-time system metrics monitoring (CPU, memory, disk, network, processes). Use when: user asks to check system status, cpu usage, memory usage, disk space,...

0· 673·4 current·4 all-time
bypp@ppopen
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Benign
high confidence
Purpose & Capability
The skill's name/description match its implementation: it runs local CPU, memory, disk, network, and process commands and includes a short script. Slight mismatch: the registry 'required binaries' list includes core tools (top, df, vm_stat, free, lsof, uptime) but the SKILL.md also references additional utilities (mpstat, hostinfo, ifconfig, nettop, iostat, ip, ss, pstree, du, swapon, awk, sort, etc.). These are reasonable for a system-monitor tool but are not enumerated in the metadata.
Instruction Scope
Instructions direct the agent to execute local CLI diagnostics only (top, df, vm_stat, free, lsof, uptime, ps, ifconfig/ss/ip, etc.). There are no commands that send data to external endpoints and no access to unrelated filesystem paths or environment secrets. Note: the commands collect local process and network information (process lists, listening ports, connections), which can be sensitive on shared systems—this is consistent with the stated purpose but worth awareness.
Install Mechanism
No install spec (instruction-only) and a single small shell script are provided. Nothing is downloaded or extracted from external URLs. Risk from installation is low.
Credentials
The skill requires no environment variables or credentials. It does not request unrelated secrets or config paths.
Persistence & Privilege
The skill is not marked always:true, does not request persistent system changes, and does not modify other skills' configuration. The agent may invoke it autonomously by default (ordinary behavior) but it does not gain elevated persistent privileges.
Assessment
This skill appears to do what it says: run local monitoring commands and return system status. Before installing, (1) verify the host has the CLI utilities you need (or adjust the SKILL.md to match your platform), (2) inspect the included scripts yourself (they are short and readable), and (3) be aware that running the skill reveals local process lists and network port/connection info — avoid running it on multi-tenant/shared systems where that information is sensitive. If you want stricter control, limit the agent's ability to invoke the skill autonomously or run it manually as needed.

Like a lobster shell, security has layers — review code before you run it.

Runtime requirements

📊 Clawdis
Binstop, df, vm_stat, free, lsof, uptime
latestvk97604f89a9cvq17ahey4mrb5s82f0x4
673downloads
0stars
2versions
Updated 1mo ago
v1.0.1
MIT-0

System Monitor Skill

Monitor real-time system metrics including CPU, memory, disk, network, and processes.

When to Use

USE this skill when:

  • "Check system status"
  • "CPU usage" / "How's the CPU doing?"
  • "Memory usage" / "RAM usage"
  • "Disk space" / "How much storage left?"
  • "Network traffic" / "Network usage"
  • "Running processes" / "Top processes"
  • "System performance" / "System load"

Setup

Some tools may need installation via Homebrew:

# Install optional enhanced tools
brew install htop      # Enhanced top (better UI)
brew install nettop    # Real-time network monitoring (macOS)
brew install iostat    # I/O statistics (Linux)

Platform Detection

Detect the platform to use appropriate commands:

uname -s  # Darwin = macOS, Linux = Linux

CPU Usage

macOS

# CPU usage summary (user, system, idle)
top -l 1 -n 0 | grep "CPU usage"

# Detailed per-core usage
top -l 2 -n 0 | tail -1

# Overall CPU percentage
vm_stat | head -5

Linux

# CPU usage summary
top -bn1 | head -5

# Detailed per-core
mpstat -P ALL 1 1

# Overall
uptime

One-liner (cross-platform friendly)

# macOS
top -l 1 -n 0 -s 0 | awk '/CPU usage/ {print}'

# Linux  
top -bn1 | grep "Cpu(s)"

JSON-friendly (scripting)

# macOS: CPU stats with specific fields
top -l 1 -n 0 -s 0 -stats pid,pcpu,pmem,comm

Memory Usage

macOS

# Memory info (page size, pages active, wired, compressed, free)
vm_stat

# Human-readable summary
top -l 1 -n 0 | grep "PhysMem"

# Full memory details
hostinfo | grep "memory"

Linux

# Human-readable
free -h

# Detailed in MB
free -m

# Swap info
swapon -s

Memory Calculation (macOS)

# Calculate used memory from vm_stat
vm_stat | awk '/Pages active/ {active=$3} /Pages wired/ {wired=$3} /Pages free/ {free=$3} END {print "Active: " active " Wired: " wired " Free: " free}'

Disk Space

macOS & Linux

# All filesystems, human-readable
df -h

# Specific volume (macOS)
df -h /

# Linux root
df -h /

# Show inode usage (Linux)
df -i

# Sorted by usage (macOS)
df -h | sort -k5 -h

# Only local filesystems
df -h -t local

Disk Usage (directory-level)

# Current directory (macOS)
du -sh .

# Top-level directories
du -h --max-depth=1

# Linux sorted by size
du -h --max-depth=1 | sort -h

Network Statistics

macOS

# Network interfaces (use ifconfig instead)
ifconfig -a

# Active connections
lsof -i -n | head -20

# Listening ports
lsof -i -n | grep LISTEN

# Real-time network usage
nettop -P -L 1 -J bytes_in,bytes_out

Linux

# Interface statistics
ip -s link

# TCP/UDP stats
ss -s

# Active connections
ss -tunap

Process List

macOS

# Top processes by CPU
top -o cpu -l 1 -n 15

# Top processes by memory
top -o mem -l 1 -n 15

# All processes
ps aux

# User processes
ps -U $(whoami)

Linux

# Top processes by CPU
top -bn1 | head -12

# Top by memory
top -bo %MEM -bn1 | head -12

# Process tree
pstree

# User processes
ps -U $(whoami) --sort=-%mem

System Load

macOS

# Load average
uptime

# Detailed
hostinfo | grep "load"

Linux

uptime
# or
cat /proc/loadavg

Combined System Status

Quick Health Check

# CPU, Memory, Disk in one view (macOS)
echo "=== CPU ===" && top -l 1 -n 0 | grep "CPU usage"
echo "=== Memory ===" && top -l 1 -n 0 | grep "PhysMem"
echo "=== Disk ===" && df -h / | tail -1

# Linux
echo "=== CPU ===" && top -bn1 | head -5
echo "=== Memory ===" && free -h
echo "=== Disk ===" && df -h /
echo "=== Load ===" && uptime

Bundled Scripts

system-stats.sh

A combined system stats script for quick health checks:

#!/bin/bash
# Combined system stats - run from skills/system-monitor/scripts/

PLATFORM=$(uname -s)

echo "=== System Stats ==="
echo "Time: $(date)"
echo "Platform: $PLATFORM"
echo ""

if [ "$PLATFORM" = "Darwin" ]; then
    echo "--- CPU ---"
    top -l 1 -n 0 -s 0 | grep "CPU usage"
    echo ""
    
    echo "--- Memory ---"
    top -l 1 -n 0 | grep "PhysMem"
    vm_stat | head -5
    echo ""
    
    echo "--- Disk ---"
    df -h / | tail -1
    echo ""
    
    echo "--- Load Average ---"
    uptime
else
    echo "--- CPU ---"
    top -bn1 | head -5
    echo ""
    
    echo "--- Memory ---"
    free -h
    echo ""
    
    echo "--- Disk ---"
    df -h / | tail -1
    echo ""
    
    echo "--- Load Average ---"
    uptime
fi

Notes

  • macOS uses vm_stat for memory, Linux uses free
  • top output format differs between platforms
  • Use hostinfo on macOS for system overview
  • Use lsof or nettop instead of deprecated netstat
  • For continuous monitoring, use watch command or run top in loop

Comments

Loading comments...