Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

English | Português Brasileiro

SystemPulse

Know what your computer is doing without leaving the terminal.

SystemPulse is an open-source, local, read-only system monitor. It shows live CPU, memory, process, and available GPU readings in a keyboard-driven terminal interface. It has no web dashboard, account, or telemetry. Sustained threshold rules produce factual observations and local alerts; doctor checks SystemPulse itself.

Development preview: 0.1.0.dev1. PyPI package. Install systempulse-monitor; run systempulse. Python 3.12+ is required.

Install and run

Install uv once:

Windows (PowerShell)

powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

macOS or Linux

curl -LsSf https://astral.sh/uv/install.sh | sh

Open a new terminal, then install Python 3.12 with uv:

uv python install 3.12

Install the published preview and add uv's tool directory to your PATH:

uv tool install --python 3.12 "systempulse-monitor==0.1.0.dev1"
uv tool update-shell

Open a new terminal and run SystemPulse from any directory:

systempulse

The command opens the TUI in an interactive terminal. uv is only needed to install or update SystemPulse; daily use does not require uv run. No configuration or elevated permissions are needed for the default experience.

Already use pipx with Python 3.12+? Install with:

pipx install "systempulse-monitor==0.1.0.dev1"
systempulse

Use systempulse-monitor as the package name; systempulse on PyPI belongs to another project. If you previously installed this project from a checkout, add --reinstall to the uv install command to switch to the published package.

Install the latest source code
git clone https://github.com/jeiel2013/SystemPulse.git
cd SystemPulse
uv tool install --reinstall --python 3.12 .
uv tool update-shell

For development, use uv sync --locked followed by uv run systempulse.

What you can see

  • Overview: live CPU and RAM, home-volume disk usage, network transfer rates, a recent CPU chart, optional GPU load/VRAM/temperature, and separate Top CPU and Top RAM process lists. Disk and network rates need two samples.
  • Processes: search, sort by CPU, memory, or PID, and open verified process details. Restricted fields appear as unavailable.
  • System: operating system, uptime, CPU and memory information, every GPU reported by the active provider, and battery/sensor readings when available.
  • History: local CPU, memory, disk, and network trends for 10 minutes through 30 days. The database stores metric summaries, not process names or commands.
  • Alerts: local CPU, memory, and disk threshold rules require continuous evidence before triggering. Dismissed and resolved alerts remain visible.
  • Process tree: an on-demand parent/child scan, separate from the faster periodic process table.
  • Reports: export a single observed snapshot as JSON, CSV, Markdown, or a static HTML file.

GPU readings use installed nvidia-smi, rocm-smi, or xpu-smi tools. Without a supported source, SystemPulse marks GPU metrics unavailable. AMD and Intel providers still need validation on physical hardware. Battery and sensor availability depends on the host. See GPU collection and hardware sources.

Other commands

systempulse status
systempulse top --sort memory --limit 10
systempulse processes --sort memory --limit 10
systempulse processes --search python
systempulse history --range 1h
systempulse alerts
systempulse tree --limit 100
systempulse report --format json
systempulse plugins
systempulse doctor
systempulse version

status prints one system snapshot. top refreshes a compact process monitor every second; press q or Ctrl+C to leave it. It requires an interactive terminal. processes prints a filtered list. doctor checks the runtime, collectors, GPU provider, and terminal. The other commands exit after printing.

Keyboard shortcuts

Key Action
1 / 2 / 3 / 4 / 5 / 6 Overview / Processes / System / History / Alerts / Tree
h Cycle the History range
d Dismiss a selected active alert
e Export the current snapshot as Markdown
Enter in Tree Open the selected process details
/ Search processes
c / m / p Sort processes by CPU / memory / PID
Enter Return from search to the table, or open a selected process
Esc Leave search or close process details
PageUp / PageDown Scroll Overview on a short terminal
t Switch dark/light theme for this session
r Refresh all collectors
q / Ctrl+C Quit (q closes process details first)

SystemPulse adapts both themes to the terminal's reported color support. On Linux, systempulse doctor shows the detected color mode. If your terminal supports truecolor but reports fewer colors, run TEXTUAL_COLOR_SYSTEM=truecolor systempulse to use the full palette.

Current scope

The maintainer has tested the TUI and CLI on Windows and Linux. CI has passed tests, package builds, and isolated tool-install checks on Windows, Ubuntu, and macOS. Interactive macOS validation remains pending. See alerts and configuration, history storage and release checks. See reports for export formats and locations. Collector plugins are opt-in; see plugin development.

Typed collectors feed application state, then Textual and the CLI. Collection runs outside the UI loop. SystemPulse keeps metrics on the machine and does not perform destructive actions. See the runtime benchmark for measurements and current performance limits. The architecture and development guides explain the codebase.

Contribute

Run uv run pytest, uv run ruff check ., and uv run mypy before proposing changes. Code and canonical documentation are in English; public documentation also has a pt-BR version. When translations differ, the English version prevails.

See CONTRIBUTING.md for the contribution workflow, the roadmap for planned work, and the changelog for shipped changes. Report vulnerabilities through the security policy. Licensed under Apache 2.0.

Release files for systempulse-monitor 0.1.0.dev1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for systempulse-monitor 0.1.0.dev1
File Size Uploaded
systempulse_monitor-0.1.0.dev1.tar.gz 94.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for systempulse-monitor 0.1.0.dev1
File Interpreter ABI Platform
systempulse_monitor-0.1.0.dev1-py3-none-any.whl Python 3 none any Details

Total release size: 168.3 kB

Release files / systempulse_monitor-0.1.0.dev1.tar.gz

Download URL systempulse_monitor-0.1.0.dev1.tar.gz
Size 94.8 kB
Tags Source
SHA-256 checksum
How to use checksums
c6ddcb73aae07bba56a1d0a88cccc858fc35649181a190c0fe4f07d0b2b174c2
BLAKE2b-256 checksum
How to use checksums
d65b895035fa08e6ec3c3df36e1db1f97e2cdc168e7b8d4ed2b2d1343195979c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 26, 2026.

Transparency log

Release files / systempulse_monitor-0.1.0.dev1-py3-none-any.whl

Download URL systempulse_monitor-0.1.0.dev1-py3-none-any.whl
Size 73.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ec3bf5b161b79ad3a2c5a0e7967dc3ab8cb0af8e37da3a78f86c14f1709cc180
BLAKE2b-256 checksum
How to use checksums
12de216c6fc135c894400d9c7714cdd701f76f7e6e44578868de8210fb25a63d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 26, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.1.0.dev1 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page