Glances is a cross-platform system monitoring tool written in Python that serves as a modern alternative to traditional utilities like top and htop. It provides real-time monitoring of CPU, memory, disk, and network usage across GNU/Linux, BSD, macOS, and Windows operating systems. The tool displays system information in an easy-to-read dashboard format and extends beyond basic resource monitoring to include process tracking, logged-in users, temperature readings, voltages, and fan speeds. It also supports container monitoring for Docker and LXC systems.
The project shares contributors with major repositories including microsoft/vscode, microsoft/typescript, and rust-lang/rust.
Glances operates in multiple modes to suit different use cases. The standalone terminal mode provides immediate system monitoring by running a single command. The web server mode exposes a responsive web interface accessible at a configurable port and includes a RESTful API for programmatic access. The tool supports client-server architecture using XML-RPC for remote monitoring via terminal interfaces. A browser mode allows discovery and monitoring of multiple Glances servers across a network. Additionally, Glances can output raw statistics to stdout in plain text, CSV, or JSON formats, enabling integration with other tools and scripts.
The tool includes a fetch mode for quick system snapshots and supports an MCP server for integration with AI assistants like Claude and Cursor, available in version 4.5.1 and higher. Glances can be used as a Python library by importing the glances.api module, allowing developers to programmatically access system metrics through a GlancesAPI class that provides access to all plugins and their fields.
Export capabilities are extensive, supporting multiple destinations including CSV and JSON files, time-series databases like InfluxDB, ElasticSearch, PostgreSQL, Cassandra, ClickHouse, and Prometheus, message brokers including RabbitMQ, NATS, ZeroMQ, and Kafka, and other services like StatsD, Graphite, and RESTful endpoints.
Installation is straightforward through PyPI using pip, with optional feature bundles available for web interface, GPU monitoring, container support, sensors, RAID, SNMP, and other specialized functionality. The project also supports installation via uvx for immediate execution without manual setup. The codebase is built on an open architecture allowing developers to create custom plugins and export modules, making Glances highly extensible for specific monitoring needs.