Settings & help
Preferences
Open with ⌘, or from the menu bar.
Appearance
- System - follow macOS Dark / Light Mode
- Dark - always dark
- Light - always light
The sidebar is always dark regardless of this setting - that’s intentional, designed against the brand palette.
Units
Controls how metrics render across charts, gauges, tooltips, and the Node Resources table.
CPU
Four formats of the same value - fractions of a CPU core:
- % - relative to one core (
50%= half a core; 1 core = 100%) - Decimal - the raw fraction,
0.5 - Cores - the raw fraction with a unit,
0.5 cores - m - millicores,
500m(what K8s YAML uses; 1000m = one core)
Memory
- MB - Megabytes (decimal · 1 MB = 1,000,000 B); matches the
1G = 1,000,000,000 bytesdefinition K8s uses for100Mspecs - Mi - Mebibytes (binary · 1 Mi = 1,048,576 B - the K8s YAML convention); matches what
top/freeshow - M - K8s shorthand (decimal SI · e.g.
512M)
Secrets
- Require Touch ID to reveal - default on. When off, the Reveal button still hides values by default but a single tap reveals them with no auth prompt. Exports always require Touch ID regardless.
Notifications
The Notifications preferences pane controls desktop banners and includes:
- Master toggle - disables everything when off
- Per-category toggles (each with its own sound switch), grouped by Pods / Nodes / Workloads:
- Pods - CrashLoopBackOff, Out of memory (OOMKilled), Stuck pending
- Nodes - Node not ready, Node pressure (Memory / Disk / PID)
- Workloads - Deployment rollout (real image/template rollouts), Deployment scaling (replica-count-only changes such as an HPA scale-up - off by default, since a scale isn’t a rollout), Job failed, HPA at maximum, Right-sizing complete, and Shared right-sizing result (Pro - a teammate records a result in a cluster you’ve enabled right-sizing persistence for; off by default)
- Click a banner to open the resource - clicking a delivered notification brings Kubius to the front and opens that resource in the detail panel (not just its list). Right-sizing-complete banners open the analysis page; node / pod / deployment / job / HPA banners open their detail. If the resource is in another namespace, Kubius switches to it first.
- Permission status row - shows whether macOS has granted notification permission, with a button to request it
- Send Test Notification - fires a one-off banner so you can verify wiring before triggering a real event
- Activity log - last 15 detector events (
Detected rollout start: …,Detected scaling start: …,Fired: …,Suppressed: …). Selectable so you can copy-paste
Detector behaviour:
- Initial cluster load never fires alerts - only state changes after the baseline.
- Each condition fires at most once per cycle; it has to clear and re-occur before it’ll fire again.
- Rollout vs scaling - a deployment that’s merely scaling (replica count changed, pod template unchanged - e.g. an HPA scale-up) is told apart from a real rollout by template churn (
updatedReplicas < total pods). Scale events route to the separate Deployment scaling toggle so they don’t masquerade as rollouts. - Rollout success/failure use a 30 s settle window to avoid false failures from surge pods that briefly push
readyReplicasabovespec.replicas; success counts whenready ≥ desired(not strict equality). - System namespaces (e.g.
kube-system,gke-*) never produce pod or deployment alerts. Node pressure always fires because nodes are cluster-scoped.
You can also disable Kubius’s notifications system-wide in System Settings → Notifications → Kubius.
Cluster aliases
Right-click any cluster row in the sidebar → Rename Cluster… to set a display name that’s friendlier than the raw kubeconfig context name (which is often a long auto-generated string like gke_project-name_zone_cluster-name).
Aliases are stored locally - they only affect what Kubius shows. The underlying context name is preserved.