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 repository has accumulated 33,041 stars on GitHub and demonstrates sustained community engagement with 659 tracked issues and pull requests. The project maintains an active development cycle with a median issue and PR response latency of 23.4 hours, though the mean response time of 13,255.2 hours reflects some older items in the backlog. The most active issue labels are enhancement with 139 items, bug with 134 items, and inactive with 114 items. The primary maintainer nicolargo has logged 2,120 events, with significant contributions from RazCrimson at 208 events and ariel-anieli at 40 events. 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.