SD-300 System Diagnostic
Real-time interactive TUI for system diagnostics and monitoring. Part of the QubeTX 300 Series alongside TR-300 (Machine Report) and ND-300 (Network Diagnostic).
Installation
Shell (macOS/Linux)
|
PowerShell (Windows)
powershell -ExecutionPolicy ByPass -c "irm https://github.com/QubeTX/qube-system-diagnostics/releases/latest/download/sd300-installer.ps1 | iex"
Windows Installer (.msi)
Download sd300-x86_64-pc-windows-msvc.msi from the Releases page.
Cargo
Published releases are available as the tr300-tui crate. The installed binary
is still lowercase: sd300.
After installation, the command surface is always sd300:
From Source
The binary will be at target/release/sd300 (or sd300.exe on Windows).
Features
SD-300 provides two diagnostic modes designed for different audiences:
User Mode presents system health in plain language with color-coded status indicators. No technical knowledge required — statuses like "Running quietly", "Memory is getting full", and "Warm" replace raw numbers.
Technician Mode exposes raw data: per-core CPU utilization, exact memory addresses, driver versions and dates, network interface tables, and real-time sparkline graphs.
Diagnostic Sections
Navigate between 9 sections using number keys:
| # | Section | User Mode | Technician Mode |
|---|---|---|---|
| 1 | Overview | System health dashboard | Identity, gauges, top processes |
| 2 | CPU | Load status, sparkline | Per-core bars, frequency, process table |
| 3 | Memory | Usage summary, top consumers | RAM/Swap sparklines, process table |
| 4 | Disk | Drive health, space usage | Mount table, filesystem details |
| 5 | GPU | Card status, utilization | VRAM, driver, utilization sparkline |
| 6 | Network | Connection status, speed | Interface table, throughput sparklines |
| 7 | Processes | Running apps in plain language | Sortable process table with scroll |
| 8 | Thermals | Temperature, fans, battery | Sensor table, fan RPM, battery details |
| 9 | Drivers | Device health overview | Driver versions, dates, service status |
Live Updates
- Fast metrics (CPU, memory, network, processes): every 1 second
- Slow metrics (disk, GPU, thermals): every 5 seconds
- Connections: every 3 seconds
- Connectivity: background refresh every 15 seconds
- Disk health: background refresh every 60 seconds
- Drivers: background startup scan and on demand (press
r)
Usage
sd300 # Interactive mode selection
sd300 --user # Launch directly into User Mode
sd300 --tech # Launch directly into Technician Mode
sd300 update # Check for and install the latest release
sd300 --update # Legacy update flag
sd300 --help # Show help
sd300 --version # Show version
Updates
Run sd300 update to check for and install the latest GitHub release. The
legacy sd300 --update flag is still supported for existing scripts.
Update checks run before the Ratatui terminal UI is initialized. If Cargo is
available, SD-300 tries cargo install tr300-tui --force first. If Cargo is not
available or the Cargo update fails, it falls back to the cargo-dist installers:
sd300-installer.sh through curl/wget on macOS and Linux, and
sd300-installer.ps1 through powershell.exe/pwsh.exe on Windows. Update
failures report per-attempt diagnostics and exit with status 2.
Keybindings
| Key | Action |
|---|---|
1-9 |
Switch to section |
q / Esc |
Quit |
Ctrl+C |
Quit to shell |
m |
Return to mode selection |
? |
Help overlay |
f |
Toggle temperature unit (C/F) |
j / k |
Scroll (processes, connections, drivers, disk in Tech Mode) |
c / M / n / p |
Sort by CPU / Memory / Name / PID (Section 7) |
r |
Manual refresh (Section 9 - Drivers) |
Platform Support
| Platform | Target | Status |
|---|---|---|
| Windows x86_64 | x86_64-pc-windows-msvc |
Full support |
| macOS x86_64 | x86_64-apple-darwin |
Full support |
| macOS ARM | aarch64-apple-darwin |
Full support |
| Linux x86_64 | x86_64-unknown-linux-gnu |
Full support |
| Linux x86_64 (musl) | x86_64-unknown-linux-musl |
Full support |
| Linux ARM | aarch64-unknown-linux-gnu |
Full support |
Platform-Specific Features
- Windows: Setup API driver scanning, battery info via PowerShell, GPU via nvidia-smi
- Linux: sysfs-based driver scanning, PCI device enumeration, ALSA audio detection
- macOS: IOKit-based driver scanning, system_profiler integration
Screenshots
Coming soon
License
PolyForm Noncommercial 1.0.0 - see LICENSE.md.
Built by QubeTX.