A lightweight CLI to monitor Ollama models and usage
Project description
olmon
A lightweight CLI to monitor your Ollama models and usage in real time.
$ olmon top
╭─────────────────────────────────────── olmon top 01:09:32 ───────────────────────────────────────╮
│ Model VRAM VRAM % Expires In Status │
│ ornith:9b 5.0 GB ██░░░ 41% 0m 22s ● expiring │
│ phi4-mini:latest 2.9 GB █░░░░ 23% 0m 17s ● expiring │
╰────────────────────────────── VRAM: 7.8 GB / 12.0 GB | 2 running ───────────────────────────────╯
Features
- 🔄 Real-time dashboard — live auto-refreshing view of running models
- 📋 Model listing — browse all installed models with size, family, and quantization
- 🔍 Model inspection — full details on any installed model
- 🟢 Status indicators — green / blue / red at a glance
- ⚙️ Configurable — set your API host and refresh interval
- 🪶 Lightweight — minimal dependencies, works over SSH on headless servers
- 🖥️ htop-style monitoring —
olmon topwith VRAM usage and expiry countdown - 🛑 Model control — force unload models from VRAM
- ⚖️ Model comparison — side by side spec comparison of multiple models
- 🔧 Scripting friendly —
--jsonflag and exit codes on every command
Requirements
- Python 3.13+
- Ollama installed and running
Installation
pip
pip install olmon
curl (Linux / macOS)
curl -fsSL https://raw.githubusercontent.com/glemiu6/olmon/master/scripts/install.sh | sh
From source
git clone https://github.com/glemiu6/olmon.git
cd olmon
uv pip install -e .
Windows
Native Windows binary is not currently supported.
Use WSL and follow the Linux installation instructions.
Usage
olmon status # quick health check
olmon models # list all installed models
olmon models --sort size # sort by size
olmon models --filter llama # filter by name or family
olmon inspect llama3:latest # full details on a model
olmon ps # show currently running models
olmon watch # live auto-refreshing dashboard
olmon watch --interval 5 # refresh every 5 seconds
olmon top # htop-style live monitoring
olmon stop qwen2.5:7b # unload a model from VRAM
olmon compare qwen2.5:7b llama3.2:latest # compare models
olmon --no-color models # pipe-friendly output
olmon models --json # output as JSON
Global flags
olmon --host http://192.168.1.10:11434 status # connect to remote Ollama
olmon --version # print version
Status Indicators
| Indicator | Meaning |
|---|---|
| 🟢 Green | Models are loaded and running |
| 🔵 Blue | Ollama is idle, no models loaded |
| 🔴 Red | Ollama is offline or unreachable |
Configuration
olmon init # create default config file
Config is stored at ~/.config/olmon/config.json:
{
"host": "http://localhost:11434",
"interval": 2,
"no_color": false,
"default_sort": "name"
}
Update & Uninstall
olmon update # update to latest version
olmon uninstall # remove olmon and config
Why olmon?
Most Ollama monitoring tools are GUI or system tray apps. olmon is built for:
- Headless Linux servers — no GUI required
- Remote monitoring — works over SSH
- Shell scripting — pipe-friendly with
--jsonflag and exit codes - DevOps workflows — integrate into scripts and cron jobs
GPU Support
- NVIDIA — full VRAM monitoring via
nvidia-smi - AMD — coming soon
- CPU only — VRAM stats not available
Roadmap
See ROADMAP.md for the full plan.
Contributing
Contributions are welcome. Feel free to open an issue or submit a pull request.
License
MIT — see LICENSE for details.
Made with ❤️ by Vlad Digori
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file olmon-0.2.1.tar.gz.
File metadata
- Download URL: olmon-0.2.1.tar.gz
- Upload date:
- Size: 15.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
213bf461a425addd8c312f253082376f41a2f55334ae6e1055d7e8d6fb758f34
|
|
| MD5 |
700a46a2565c6eb11cb6b030e8ad06d4
|
|
| BLAKE2b-256 |
2c4e8f5ea7bd3b4c85802178dc3df3c5fcefd75ae0ba548328cbc2cf02a27de3
|
Provenance
The following attestation bundles were made for olmon-0.2.1.tar.gz:
Publisher:
release.yaml on glemiu6/olmon
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
olmon-0.2.1.tar.gz -
Subject digest:
213bf461a425addd8c312f253082376f41a2f55334ae6e1055d7e8d6fb758f34 - Sigstore transparency entry: 2004481926
- Sigstore integration time:
-
Permalink:
glemiu6/olmon@74f50a57b70ef51eccfb430299e73e472cc8398c -
Branch / Tag:
refs/tags/v0.2.1 - Owner: https://github.com/glemiu6
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yaml@74f50a57b70ef51eccfb430299e73e472cc8398c -
Trigger Event:
push
-
Statement type:
File details
Details for the file olmon-0.2.1-py3-none-any.whl.
File metadata
- Download URL: olmon-0.2.1-py3-none-any.whl
- Upload date:
- Size: 17.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8c00ff5452bfe33adc0919a027cac6dbe232e022fd935df9a2160d5cb13a216a
|
|
| MD5 |
91c73d253048f90caf14363d6828a3d9
|
|
| BLAKE2b-256 |
5c0cb18497e03b7f4ddfe13a0635072b74cfd67c2fac3a16d4d9f0a3c9b814de
|
Provenance
The following attestation bundles were made for olmon-0.2.1-py3-none-any.whl:
Publisher:
release.yaml on glemiu6/olmon
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
olmon-0.2.1-py3-none-any.whl -
Subject digest:
8c00ff5452bfe33adc0919a027cac6dbe232e022fd935df9a2160d5cb13a216a - Sigstore transparency entry: 2004482038
- Sigstore integration time:
-
Permalink:
glemiu6/olmon@74f50a57b70ef51eccfb430299e73e472cc8398c -
Branch / Tag:
refs/tags/v0.2.1 - Owner: https://github.com/glemiu6
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yaml@74f50a57b70ef51eccfb430299e73e472cc8398c -
Trigger Event:
push
-
Statement type: