Files
community-plugins/k8s-status
Dave HammerandGitHub 5bae8428a3 Add davemhammer/k8s-status (#314)
* Add davemhammer/k8s-status

Kubernetes nodes/pods/deployments monitor with panel and /kube launcher.

* k8s-status v1.1.5: fix stuck Querying cluster

Parallel kubectl refresh, hang recovery, safer loading UI.
2026-08-09 10:13:48 -04:00
..
2026-08-09 10:13:48 -04:00
2026-08-09 10:13:48 -04:00
2026-08-09 10:13:48 -04:00
2026-08-09 10:13:48 -04:00
2026-08-09 10:13:48 -04:00

K8s Status

Monitor Kubernetes nodes, pods, and deployments from Noctalia, with a /kube launcher for common actions.

Plugin

Field Value
ID davemhammer/k8s-status
Entries Bar widget: status; panel: manager; service: service; launcher: kube
Launcher Prefix /kube

Requirements

Install these on PATH (declared in plugin.toml dependencies):

  • kubectl — cluster queries and actions (or set kubectl_bin)
  • less — pager for describe/logs in the terminal

Optional (not declared; used only if present):

  • k9s — open-k9s action

Cluster access uses your kubeconfig (passed to kubectl as --kubeconfig; the plugin does not parse the file itself).

Usage

Add the status bar widget (davemhammer/k8s-status:status). Click for the panel; right-click requests a refresh.

Panel tabs: Nodes, Pods, Deployments, Namespaces. Select a row for describe / logs / shell / restart actions (where applicable).

Launcher examples:

  • /kube — categories (pods, problems, nodes, …)
  • /kube pods nginx — filter pods
  • /kube problems — problem pods only
noctalia msg panel-toggle davemhammer/k8s-status:manager

Settings

Setting Type Default Description
kubeconfig file ~/.kube/config Path passed to kubectl as --kubeconfig.
context string (empty) Context name; empty uses current-context.
namespace string (empty) Limit pods/deployments; empty = all namespaces.
refresh_interval int 15 Poll interval in seconds.
problems_only bool false Prefer problem pods in the panel list.
notify_on_not_ready bool true Notify when a node becomes NotReady.
kubectl_bin string kubectl kubectl command or absolute path.
show_counts bool (widget) true Show ready nodes / problem pods on the bar.
ok_color select (widget) tertiary Bar color when cluster looks healthy.
warn_color select (widget) error Bar color when there are problems.

IPC

noctalia msg panel-toggle davemhammer/k8s-status:manager
noctalia msg plugin davemhammer/k8s-status:service all refresh

Notes

  • Shells out to kubectl and less (and optionally a terminal via runInTerminal for logs/shell/k9s).
  • Refresh: nodes, deployments, and namespaces use compact jsonpath queries; pods use kubectl get pods table output for ready/restart columns.
  • Does not modify cluster state unless you run restart/delete-style actions from the panel or launcher.
  • Network: only via kubectl to the API server from your kubeconfig. No cluster credentials are written into the plugin tree.