A lightweight system metrics panel for Visual Studio Code. Monitor CPU, memory, disk, GPU, and Ollama LLM status directly in your editor.
- CPU — Total usage + per-core breakdown (with macOS powermetrics enhancement)
- Memory — Usage percentage with per-process breakdown and stacked bar
- Disk — Usage, available space, and I/O read speed
- GPU — Apple Silicon (ioreg) and NVIDIA (nvidia-smi) utilization
- Ollama — Running/installed LLM model status
- Themes — Three built-in themes + custom CSS support
- Efficient — Auto-pauses collection when the panel is hidden
npm install
npm run compile
npx @vscode/vsce package
code --install-extension vscode-mini-sysmon-0.1.0.vsixComing soon.
After installation, the mini-sysmon tab appears in the bottom panel area (alongside Terminal, Output, Debug Console).
Metrics update every 5 seconds by default.
Open Settings and search for "Mini SysMon":
| Setting | Default | Description |
|---|---|---|
minipanel.updateInterval |
5000 |
Update interval in milliseconds (1000–60000) |
minipanel.theme |
"default" |
Theme: default, minimal, or vscode |
minipanel.customThemePath |
"" |
Path to a custom CSS file |
minipanel.enableGpu |
true |
Enable GPU metrics collection |
minipanel.enableOllama |
true |
Enable Ollama status polling |
minipanel.processBreakdownCount |
2 |
Number of top processes in memory overlay |
| Theme | Description |
|---|---|
| default | Dark gradient background with green accents and glow effects |
| minimal | Flat black background, no decorations |
| vscode | Follows your editor's color theme using var(--vscode-*) variables |
Set minipanel.customThemePath to an absolute path of a CSS file. It loads after the built-in theme, so you can selectively override styles.
See media/themes/default.css for the full list of BEM classes.
| Metric | macOS | Linux | Windows |
|---|---|---|---|
| CPU (total) | os.cpus() delta | os.cpus() delta | os.cpus() delta |
| CPU (per-core) | powermetrics* | os.cpus() | os.cpus() |
| Memory | vm_stat + ps | /proc/meminfo + ps | os module + tasklist |
| Disk | df + iostat | df + iostat | wmic (no I/O speed) |
| GPU | ioreg (Apple Silicon) | nvidia-smi | nvidia-smi |
| Load Average | os.loadavg() | os.loadavg() | N/A |
| Ollama | HTTP localhost:11434 | HTTP localhost:11434 | HTTP localhost:11434 |
* macOS powermetrics note: Per-core CPU data via powermetrics requires passwordless sudo. If not configured, the extension silently falls back to os.cpus() data. To enable:
# Add to /etc/sudoers.d/powermetrics (replace <username>):
<username> ALL=(ALL) NOPASSWD: /usr/bin/powermetricsnpm install
npm run watch # Watch mode
# Press F5 in VSCode to launch Extension Development HostSee CONTRIBUTING.md for details.
