> htop
Monitor system resources with htop and related tools. Use when a user asks to check CPU/memory usage, find resource-hungry processes, monitor server performance, or diagnose system bottlenecks.
curl "https://skillshub.wtf/TerminalSkills/skills/htop?format=md"htop / System Monitoring
Overview
htop is an interactive process viewer for Linux. Combined with other CLI tools (top, vmstat, iostat, iotop, nethogs), it provides comprehensive real-time system monitoring without installing external agents.
Instructions
Step 1: Process Monitoring
htop # interactive process viewer
htop -u deploy # filter by user
htop -p 1234,5678 # monitor specific PIDs
# Inside htop:
# F5 = tree view (parent/child processes)
# F6 = sort by column
# F9 = kill process
# / = search
# Space = tag process
Step 2: Resource Analysis
# CPU and memory overview
free -h # memory usage (human-readable)
uptime # load average (1, 5, 15 min)
nproc # number of CPU cores
# Disk I/O
iostat -x 1 # disk I/O stats, 1 second interval
iotop # top for disk I/O (shows which process reads/writes)
# Network
nethogs # bandwidth per process
ss -tulnp # listening ports with process names
iftop # bandwidth per connection
Step 3: Quick Diagnostics Script
#!/bin/bash
# scripts/server-status.sh — Quick health check
echo "=== CPU Load ==="
uptime
echo -e "\n=== Memory ==="
free -h
echo -e "\n=== Disk ==="
df -h /
echo -e "\n=== Top 5 CPU Processes ==="
ps aux --sort=-%cpu | head -6
echo -e "\n=== Top 5 Memory Processes ==="
ps aux --sort=-%mem | head -6
echo -e "\n=== Listening Ports ==="
ss -tulnp | grep LISTEN
Guidelines
- Load average > number of CPU cores = system is overloaded.
free -h: look at "available" column, not "free" (Linux uses free RAM for cache).- Use
dstatfor combined CPU/disk/net stats in one view. - For historical monitoring, pair with Prometheus + Grafana or Netdata.
> related_skills --same-repo
> zustand
You are an expert in Zustand, the small, fast, and scalable state management library for React. You help developers manage global state without boilerplate using Zustand's hook-based stores, selectors for performance, middleware (persist, devtools, immer), computed values, and async actions — replacing Redux complexity with a simple, un-opinionated API in under 1KB.
> zod
You are an expert in Zod, the TypeScript-first schema declaration and validation library. You help developers define schemas that validate data at runtime AND infer TypeScript types at compile time — eliminating the need to write types and validators separately. Used for API input validation, form validation, environment variables, config files, and any data boundary.
> xero-accounting
Integrate with the Xero accounting API to sync invoices, expenses, bank transactions, and contacts — and generate financial reports like P&L and balance sheet. Use when: connecting apps to Xero, automating bookkeeping workflows, syncing accounting data, or pulling financial reports programmatically.
> windsurf-rules
Configure Windsurf AI coding assistant with .windsurfrules and workspace rules. Use when: customizing Windsurf for a project, setting AI coding standards, creating team-shared Windsurf configurations, or tuning Cascade AI behavior.