npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@avinashmanhas9/syspulse

v1.0.12

Published

CLI tool for system monitoring - ports, network, memory, CPU, disk, processes, git, and Docker

Downloads

904

Readme

syspulse

syspulse is a fast CLI tool for checking system health from the terminal. It works on both Linux and Windows and helps inspect ports, network, memory, CPU, disk, processes, services, logs, Docker, and Git repository state.

Why syspulse

Traditional troubleshooting usually means jumping between commands such as top, ps, df, free, ss, journalctl, dmesg, systemctl, iostat, and vmstat on Linux — or tasklist, netstat, sc, wevtutil, and resmon on Windows. Those tools are powerful, but they report isolated signals. During an incident, the hard part is often connecting those signals quickly.

syspulse keeps the underlying checks read-only and familiar, but adds a unified diagnostic layer:

  • One command surface: Use consistent commands such as syspulse memory --pressure, syspulse disk --io, syspulse process --hot, and syspulse kernel --oom on any supported OS.
  • Correlated findings: syspulse diagnose combines CPU, memory, disk, services, processes, and kernel/event-log signals into a single health snapshot.
  • Human-readable insights: Instead of only raw counters, it highlights likely causes such as memory pressure, failed services, full filesystems, kernel errors, or Docker daemon access issues.
  • Health scoring: Diagnostic output includes severity and score-style summaries so issues are easier to prioritize.
  • Safer production use: Commands are read-only, bounded by default, and avoid expensive tracing or packet capture.
  • Graceful fallbacks: When tools such as journalctl, iostat, pidstat, systemctl, or Docker are unavailable, syspulse explains what is missing instead of failing silently. On Windows, native equivalents (wevtutil, sc, tasklist, netstat) are used automatically.

Example:

syspulse diagnose

Rather than manually comparing free, vmstat, df, systemctl --failed, and kernel logs, syspulse diagnose summarizes the current health state and suggests the next command to run.

Prerequisites

  • Node.js >=18.0.0
  • npm
  • Works on Linux and Windows (macOS has partial support)

Check your Node.js version:

node --version

If Node.js is older than 18, upgrade it before installing:

nvm install 20
nvm use 20

The package also includes an install-time Node.js version check. If the runtime is too old, install stops early and prints upgrade steps.

Installation

Install globally:

npm install -g @avinashmanhas9/syspulse

Run:

syspulse
syspulse --help

If you previously installed the old package name, remove it first:

npm uninstall -g @avinashmanhas9/sysview
npm install -g @avinashmanhas9/syspulse

Local Development

Clone and build:

git clone https://github.com/avinashmanhas-sketch/CLI-tool.git
cd CLI-tool
npm install
npm run build

Run locally:

npm run start
node dist/main.js --help
node dist/main.js health

TypeScript is configured with module and moduleResolution set to Node16.

Docker

Build the image:

docker build -t avinashmanhas-sketch/syspulse:latest .

Run a command:

docker run --rm avinashmanhas-sketch/syspulse:latest cpu
docker run --rm avinashmanhas-sketch/syspulse:latest memory

To inspect host Docker data from inside the container, mount the host Docker socket:

docker run --rm -v /var/run/docker.sock:/var/run/docker.sock avinashmanhas-sketch/syspulse:latest docker

Commands

| Command | Description | | ------------------------------------------ | --------------------------------------------------------------------- | | syspulse | Show available commands | | syspulse health | System health summary | | syspulse diagnose | Correlate system signals and suggest likely root causes | | syspulse kernel | Kernel warnings, OOM events, and hardware errors (Windows: Event Log) | | syspulse services | Service status (Linux: systemd · Windows: SCM) | | syspulse logs | Recent warning/error logs (Linux: journalctl · Windows: Event Log) | | syspulse ports | Listening ports | | syspulse network | Network connections and interfaces | | syspulse memory / syspulse mem | Memory usage | | syspulse cpu | CPU usage | | syspulse disk | Disk usage | | syspulse docker | Docker containers, images, and volumes | | syspulse ps | Running processes | | syspulse process / syspulse proc | Process tree or detailed process list | | syspulse top | Interactive process monitor | | syspulse git | Git repository information | | syspulse kill <pid-or-port> | Kill a process by PID or port | | syspulse watch | Real-time dashboard | | syspulse dashboard / syspulse dash | Full dashboard |

Diagnostics Examples

System health summary:

syspulse health
syspulse diagnose
syspulse diagnose --json

Service checks:

syspulse services
syspulse services --failed
syspulse services --all
syspulse services -n 50

Log checks:

syspulse logs
syspulse logs --errors
syspulse logs --kernel
syspulse logs -n 100

Kernel checks:

syspulse kernel
syspulse kernel --oom
syspulse kernel --hardware
syspulse kernel -n 100

Resource checks:

syspulse cpu
syspulse memory
syspulse memory --pressure
syspulse memory --top
syspulse disk
syspulse disk --io
syspulse disk --inode
syspulse disk --top
syspulse network
syspulse network --errors
syspulse network --connections
syspulse network --latency 8.8.8.8
syspulse network --dns example.com

Process checks:

syspulse ps
syspulse ps --memory
syspulse process --hot
syspulse process --zombies
syspulse process --pid 1234
syspulse process --tree
syspulse top -i 1000 -n 10

Port and kill workflow:

syspulse ports
syspulse kill 3000
syspulse kill 42872 -f

Git checks:

syspulse git
syspulse git --branches
syspulse git --log 20
syspulse git --diff
syspulse git --all

Watch mode and dashboard:

syspulse watch --start
syspulse watch -i 1000
syspulse dashboard

Publishing

Build before publishing:

npm run build
npm publish --access=public

After publishing, verify the package exists:

npm view @avinashmanhas9/syspulse version

Features

  • Cross-platform: Full support for Linux and Windows; macOS partial support
  • Read-only system diagnostics for common troubleshooting on both Linux and Windows
  • Health summary for CPU, memory, swap, disk pressure, processes, and failed services
  • Root-cause-oriented diagnose command with JSON output
  • Deep process checks for hot processes, zombies (Linux), and per-PID details
  • Disk I/O, inode (Linux), and per-process I/O diagnostics
  • Memory pressure analysis: uses /proc/meminfo + vmstat on Linux; falls back to systeminformation on Windows
  • Network error, connection, latency, and DNS checks on both platforms
  • Kernel/event-log inspection: journalctl/dmesg on Linux · wevtutil on Windows
  • Service inspection: systemctl on Linux · sc query on Windows
  • Log inspection: journalctl on Linux · Windows Event Log (wevtutil) on Windows
  • Process termination: kill signals on Linux · taskkill on Windows
  • Process/port, Docker, Git, and network visibility
  • Color-coded terminal output for quick scanning

Platform Feature Matrix

| Feature | Linux | Windows | | ------------------------- | ---------------------- | ------------------------------------ | | CPU, Memory, Disk usage | ✅ | ✅ | | Process list / tree / hot | ✅ | ✅ | | Kill by PID or port | ✅ (kill) | ✅ (taskkill) | | Services | ✅ (systemctl) | ✅ (sc query) | | Logs | ✅ (journalctl) | ✅ (wevtutil) | | Kernel / Event log | ✅ (dmesg) | ✅ (Windows Event Log) | | Network errors | ✅ (ip -s link) | ✅ (netstat -e) | | Ping / DNS | ✅ | ✅ | | Memory pressure details | ✅ (/proc/meminfo) | ✅ (via systeminformation) | | Disk I/O (iostat) | ✅ | ⚠️ Not available — use resmon | | Disk inodes (df -ih) | ✅ | ⚠️ Not applicable (NTFS) | | Per-process disk I/O | ✅ (pidstat) | ⚠️ Not available — use resmon | | Zombie processes | ✅ | ⚠️ Not applicable (Windows GC) | | Process deep (/proc) | ✅ | ✅ (tasklist / wmic) | | Docker | ✅ | ✅ | | Git | ✅ | ✅ |

Links

  • npm: https://www.npmjs.com/package/@avinashmanhas9/syspulse
  • GitHub: https://github.com/avinashmanhas-sketch/CLI-tool