dsh-resource-monitor
Manifest validCompact macOS CPU, GPU, memory and Ollama model status in DeepSeek Harness
Resource Monitor for DeepSeek Harness
A compact strip above the message composer showing Mac CPU, GPU, RAM, swap and local Ollama model status. No additional panels or charts. All interface labels and tooltips use English, regardless of the Harness language.
Mac CPU 12% GPU 34% RAM 28.4/36.0 GiB Swap 1.2 GiB Model ON · 21.9 GiB ● 2s
Illustrative values. Verified with DeepSeek Harness 0.2.1-rc.5, macOS and Apple Silicon. Requires Node.js 20+ and local Ollama at http://127.0.0.1:11434. Other operating systems and Harness versions are not claimed as supported. GPU availability depends on the driver.
Install
Install the prebuilt release into your Harness profile:
dsh plugin --profile desktop add https://github.com/Sad-Jack/dsh-resource-monitor/releases/download/v0.1.1/dsh-resource-monitor-0.1.1.tgz
Replace desktop with web for the web profile. Source installation is also supported:
dsh plugin --profile desktop add github:Sad-Jack/dsh-resource-monitor
Open a conversation to see the strip. If Harness has not picked it up, restart when convenient. Disable or remove it through Plugins → dsh-resource-monitor.
Indicators
| Indicator | Meaning |
|---|---|
| CPU | Whole-computer usage across all logical cores; 100% means total CPU capacity. The tooltip includes Ollama's process tree on the same scale. |
| GPU | Whole-computer Device Utilization % from IOAccelerator, including other apps. If multiple devices report values, the maximum is shown. — means unavailable. |
| RAM | Estimated physical memory used / installed memory in GiB: anonymous + wired + physical compressor pages from vm_stat, excluding file cache. It may differ from Activity Monitor. |
| Swap | Used swap space for the whole Mac. It may remain allocated after earlier workloads. |
| Model ON · … GiB | At least one model is loaded. The size sums size from Ollama /api/ps for all loaded models, including those used by other apps. ON does not mean currently generating. Hover for model names and context lengths. |
| Model OFF | Ollama is reachable and reports no loaded models. |
| Model N/A | Ollama is unreachable or its response cannot be read; model state is unknown. System readings continue to refresh. |
| RAM color / dot | macOS memory pressure from kern.memorystatus_vm_pressure_level: normal, elevated or critical. High RAM usage alone does not trigger red. |
Do not add RAM, model memory, RSS and size_vram together. Apple Silicon CPU and GPU share memory. Model memory is an Ollama estimate, not an independent resident-memory measurement. Combined process RSS in tooltips may count shared pages more than once. Ollama attribution follows the ollama executable and its descendants; unrelated Python processes are excluded. Whole-computer usage cannot be attributed entirely to the model.
Collection and privacy
- Refreshes approximately every two seconds while the strip is mounted and the document is visible. Polling pauses on
visibilitychangewhen supported. Mounted conversations share one client poll; concurrent host samples are cached. No host background timer. - Reads
vm_stat,sysctl,ioreg, process names/CPU time/RSS throughps, and local Ollama/api/ps. Commands have timeouts. A failed source does not hide other readings; loss of the Harness connection clears old numbers. - Does not collect process command-line arguments, read conversations, start generation or load models. No telemetry, remote analytics, additional listening ports, administrator privileges or application-bundle changes.
- Uses Harness's existing connection. With a remote Harness host, readings describe that host, not the browser's computer. This version does not configure remote Ollama addresses or alternate ports.
Development
No build step or runtime npm dependencies; Harness provides React.
npm test
npm run sample
npm pack
collector.mjs collects readings, index.js registers the host route, and client.js renders in conversation.input.dock. A development profile can link this folder; keep it in place while linked.
Verified against real Mac/Ollama readings and the running Harness UI. Automated checks cover memory accounting, process attribution, unavailable sources, shared sampling and model states.
MIT license. Independent community plugin, not an official DeepSeek product.
Comments
Loading…
Similar plugins
by MM998LI
Live CPU, memory and GPU readout in the DeepSeek Harness composer status bar.
★ 1
MIT
JavaScript
Oct 13, 2026
dsh plugin --profile web add dsh-dock-vitalsby d3vmeh
DeepSeek Harness plugin: keep a local model's context at a size your GPU handles well (measured prefill speed, hard ceiling, early compaction)
★ 0
↓ 74/wk
MIT
JavaScript
Oct 4, 2026
dsh plugin --profile web add dsh-context-budgetby CuteSamurai24
Small file memory for DeepSeek Harness. The model writes markdown, the host injects it.
★ 0
MIT
JavaScript
Aug 18, 2026
dsh plugin --profile web add dsh-md-memoryby guyuefangyuanl
Cross-session persistent memory for the DeepSeek Harness: a model-facing memory tool, an always-on index section, and a bundled maintenance skill.
★ 3
↓ 1.5k/wk
MIT
JavaScript
Aug 21, 2026
dsh plugin --profile web add dsh-memoryby Asheblog
Ollama Cloud provider for DeepSeek Harness: one-click provider setup with per-model reasoning-effort control and account usage in the Models page and sidebar.
★ 4
MIT
TypeScript
Oct 24, 2026
dsh plugin --profile web add dsh-ollama-cloudby chunsi-w
Bounded context compaction, session-scoped summary reuse, explicit memory controls, and diagnostic-preserving tool pruning for DeepSeek Harness.
★ 9
↓ 382/wk
MIT
JavaScript
Oct 4, 2026
dsh plugin --profile web add dsh-ctxopt-compaction