pyre-cli 6.0.0 → 7.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -14,28 +14,33 @@ Mac system monitoring CLI: temps, CPU, memory, disk, battery, GPU, power draw, l
14
14
  ## Features
15
15
 
16
16
  - **P2P live data streaming** — send live system stats to another system over TCP with password authentication, TLS encryption, rate limiting, IP allow/deny lists, audit logging, and HMAC message signing
17
- - **Real-time system stats** — CPU brand, cores, frequency, load, and usage
17
+ - **Real-time system stats & per-core CPU** — CPU brand, cores, frequency, load, per-core utilization mini-bars, and overall usage
18
18
  - **GPU monitoring** — GPU model, VRAM, utilization, temperature, and process count (detailed mode)
19
19
  - **Power draw monitoring** — CPU watts, GPU watts, and combined power draw via SMC/ioreg
20
20
  - **Memory monitoring** — usage, swap, and total/available
21
- - **Disk space** — mounted volume usage
22
- - **Battery & power** — level, power source, condition, charge cycles, max capacity, estimated time to empty, discharge rate, power draw in watts
21
+ - **Disk I/O throughput & space** — read/write speed per volume and mounted volume space usage
22
+ - **Battery & power health** — level, power source, condition, charge cycles, max capacity, health trends, estimated time to empty, discharge rate, power draw in watts
23
23
  - **Packet monitor** — network packet counts, packet rates, active TCP connections, top network processes
24
24
  - **Task list** — running tasks/applications sorted by CPU with PID, user, memory, state, and runtime
25
25
  - **Thermal state** — CPU temperature via `pmset` and `powermetrics` (sudo for detailed readings)
26
26
  - **Network** — RX/TX bytes and per-second rates
27
- - **Top processes** — sorted by CPU, memory, or PID with live filtering, tree view, and kill with signal picker
28
- - **Interactive live dashboard** — full-screen TUI with keyboard-driven controls, mouse support, and tab-based panel navigation
27
+ - **Top processes & search-as-you-type** — live filtering, tree view, sorting by CPU/memory/PID, and process kill with signal picker
28
+ - **Interactive live dashboard** — full-screen TUI with keyboard-driven controls, mouse support, configurable panel layout, and tab-based panel navigation
29
29
  - **Snapshot export** — JSON, CSV, TSV, HTML, or Markdown output formats
30
30
  - **Continuous CSV logging** — automatic per-tick data logging to timestamped files with log rotation
31
- - **Visual themes** — six built-in colour themes for the dashboard
32
- - **Alert system** — configurable CPU usage and temperature threshold alerts with terminal bell and desktop notification
31
+ - **Visual themes & custom themes** — six built-in color themes plus user-defined JSON theme support in `~/.config/pyre/themes/`
32
+ - **Persistent configuration** — save default themes, intervals, and thresholds in `~/.config/pyre/config.json`
33
+ - **Alert system & webhooks** — configurable threshold alerts with terminal bell, desktop notifications, webhook POST payload execution (`--webhook-url`), and custom shell command execution (`--alert-cmd`)
34
+ - **System diagnostic tool (`pyre doctor`)** — check permissions, SMC access, network reachability, and configuration health
35
+ - **History & Snapshot Diff** — query historical CSV log trends (`pyre history`) and compare snapshot files side-by-side (`pyre diff`)
36
+ - **Multi-host fleet dashboard** — stream and tile stats from multiple remote Macs (`pyre fleet`)
37
+ - **Menu Bar & xbar integration** — generate menu bar plugin script (`pyre xbar`) for continuous background status display
33
38
  - **Graph mode toggle** — switch between sparkline and bar graph rendering in the live dashboard
34
39
  - **P2P dashboard panel** — monitor P2P server status and peer events directly from the live dashboard
35
40
  - **Temperature unit toggle** — switch between Celsius and Fahrenheit display in live mode
36
41
  - **Hardware overview** — `pyre info` prints a concise hardware summary
37
42
  - **Remote SSH monitoring** — `pyre ssh <host>` streams a remote Mac's live dashboard locally
38
- - **Web dashboard** — `pyre web` serves a self-contained HTML report on a local port
43
+ - **Web dashboard** — `pyre web` serves an auto-refreshing HTML dashboard with real-time SSE stream on a local port
39
44
  - **Micro-benchmarking** — `pyre bench <cmd>` logs resource usage during any command
40
45
 
41
46
  ## Installation
@@ -95,10 +100,13 @@ These options apply to both static snapshots and `pyre live`, except where noted
95
100
  | `--alert-cpu <pct>` | CPU usage alert threshold (default: `90`) |
96
101
  | `--alert-temp <c>` | CPU temperature alert threshold in Celsius (default: `95`) |
97
102
  | `--temp-unit <unit>` | Temperature display unit: `c` or `f` (default: `c`) |
103
+ | `--webhook-url <url>` | URL to POST payload to when an alert threshold is triggered |
104
+ | `--alert-cmd <cmd>` | Shell command to execute when an alert threshold is triggered |
105
+ | `--port <port>` | Port number for web server mode (default: `3000`) |
98
106
 
99
107
  ## Commands
100
108
 
101
- ### Static snapshot
109
+ ### Static snapshot & diagnostics
102
110
 
103
111
  | Command | Description |
104
112
  |---|---|
@@ -107,24 +115,31 @@ These options apply to both static snapshots and `pyre live`, except where noted
107
115
  | `pyre --json` | JSON output |
108
116
  | `pyre --html` | Self-contained HTML report |
109
117
  | `pyre --md` | Markdown tables |
118
+ | `pyre doctor` | Run system diagnostics (permissions, powermetrics access, P2P network check) |
119
+ | `pyre config <show\|reset>` | View or reset persistent configuration file (`~/.config/pyre/config.json`) |
120
+ | `pyre completions <zsh\|bash\|fish>` | Generate shell auto-completion scripts |
110
121
 
111
- ### Hardware overview
122
+ ### Hardware overview & history
112
123
 
113
124
  | Command | Description |
114
125
  |---|---|
115
126
  | `pyre info` | Concise hardware summary (CPU, memory, GPU, battery, thermal) |
127
+ | `pyre history [--days N]` | Graph historical resource trends from CSV logs over past N days |
128
+ | `pyre diff <file1.json> <file2.json>` | Compare two saved snapshot files side-by-side |
116
129
 
117
- ### Benchmarking
130
+ ### Benchmarking & Menu Bar
118
131
 
119
132
  | Command | Description |
120
133
  |---|---|
121
134
  | `pyre bench <cmd>` | Log CPU, memory, network, and thermal usage while running a command |
135
+ | `pyre xbar` | Generate an xbar / SwiftBar menu bar plugin script for stats display |
122
136
 
123
- ### Remote monitoring
137
+ ### Remote & Multi-host monitoring
124
138
 
125
139
  | Command | Description |
126
140
  |---|---|
127
141
  | `pyre ssh <host>` | Stream live stats from a remote Mac over SSH |
142
+ | `pyre fleet <host1> [host2]...` | Multi-host live dashboard monitoring multiple Macs simultaneously |
128
143
 
129
144
  ### Live dashboard
130
145
 
@@ -136,7 +151,7 @@ These options apply to both static snapshots and `pyre live`, except where noted
136
151
 
137
152
  | Command | Description |
138
153
  |---|---|
139
- | `pyre web` | Serve a self-contained HTML dashboard on localhost |
154
+ | `pyre web` | Serve an auto-refreshing live web portal with real-time SSE stats streaming on localhost (`--port <port>`) |
140
155
 
141
156
  ### P2P
142
157