NibrasShell includes a collection of Python and Bash helper scripts that the shell invokes at runtime to gather system data, generate visuals, and talk to AI providers. All scripts live underDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/AhmedSaadi0/NibrasShell/llms.txt
Use this file to discover all available pages before exploring further.
config/quickshell/scripts/python/ and config/quickshell/scripts/, and every call goes through App.qml, which provides unified path resolution so scripts work regardless of where you have installed the shell.
You never call these scripts directly.
App.qml exposes them through the App.scripts object, and individual services import and invoke them by name. The descriptions below explain what each script does so you understand what is running on your system.- System monitoring
- Wallpaper and depth
- Network
- AI gateway
- Media and clipboard
These scripts collect hardware metrics and process information on demand. They are called by
SystemService and AiAnalysisService when alerts fire or when the AI needs diagnostic data.battery_info.py — battery percentage and charge state
battery_info.py — battery percentage and charge state
Reads battery health from the appropriate platform source:
- Linux — reads from
/sys/class/power_supply/BAT0/to get design capacity, full-charge capacity, cycle count, wear level, and temperature - macOS — queries
ioregforAppleSmartBatterydata - Windows — uses the
wmimodule
percentage, is_charging, status, time_remaining, wear_level_percent, cycle_count, and optional temperature data.system_diagnostics.py — on-demand hardware diagnostics
system_diagnostics.py — on-demand hardware diagnostics
A multi-action script invoked with
--action cpu, --action ram, --action temps, or --action all.--action cpu— usespsutilto sample all running processes twice with a 0.5-second interval, then returns the top 20 by normalised CPU percentage (divided by logical core count)--action ram— returns the top 20 processes by memory percentage and resident set size (MB)--action temps— collects CPU temperatures viapsutil.sensors_temperatures(), GPU temperatures vianvidia-smiorlm-sensors, and storage temperatures viapsutilandsmartctl; returns per-device readings pluscpu_max_temp,gpu_max_temp, andstorage_max_temp
AiAnalysisService when assembling the AI spike-analysis payload.system_monitor.py — continuous metric stream
system_monitor.py — continuous metric stream
Runs as a persistent process inside
SystemService. Streams a JSON line per tick containing current CPU usage, RAM usage, and temperature. SystemService parses each line and updates its reactive properties.Shell metric scripts
Shell metric scripts
Quick single-value reads used for lightweight polling:
| Script | Output |
|---|---|
cpu_usage.sh | Current CPU usage percentage |
ram_usage.sh | Current RAM usage percentage |
temp.sh | Current hardware temperature |
internet.sh | Current network interface speed (also available as network/live_usage.py) |
Path resolution via App.qml
All script paths are resolved throughApp.scripts in App.qml. This object maps logical names to absolute paths at runtime, so services never hard-code file system paths. When you install NibrasShell to a non-default location, updating App.qml is the only change needed to keep every service working correctly.